[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: python3-scanpy 1.6.0 patched, could you take a look?



Hi Robbi,

On Tue, Mar 23, 2021 at 11:49:34AM +0800, Robbi Nespu wrote:
> > thanks for looking into scanpy.
> You are welcome, this package I choose during Debian med online sprint and
> make me packaging it dependencies which is python-stdlib-list[1] and
> python-sinfo[2], which I so happy and glad to be able packaging two package
> on my first Debian packaging contribution, so I hope to help scanpy fixed
> and uploaded too :)

I also think that scanpy was a nice pick since it had quite some
educational advantages.
 
> > > * blocker 1.6.0-1 removed
> > > * add missing dependencies
> > > * fixed (patched) test file failure during execution
> > 
> > Your changes are sensible - but please do not create another changelog
> > entry for this.  The file debian/changelog is to record changes compared
> > to the previous Debian package upload.  If there was no previous package
> > we stick to
> > 
> >     scanpy (1.6.0-1) UNRELEASED; urgency=medium
> > 
> > and for the first upload the only entry here should be
> > 
> >    * Initial release (Closes: #970887)iff --git a/debian/changelog b/debian/changelog
> index 9afc630..a346380 100644
> --- a/debian/changelog
> +++ b/debian/changelog
> @@ -1,4 +1,4 @@
> -scanpy (1.6.0-2) UNRELEASED; urgency=medium
> +scanpy (1.7.1-1) UNRELEASED; urgency=medium

Yes!
 
> > (nothing else).  Speaking about this:  We should not leave anything that
> > has target distribution UNRELEASED inside the changelog.  Please always
> > edit inside the UNRELEASED changelog entry - and it will be set to
> > unstable once the package will be uploaded.  Users might read only the
> > latest changelog entry and will miss changes "hidden" under UNRELEASED.
> > In other words: The UNRELEASED "target distribution" is just for the
> > team members to know that a package is unreleased - not for the users.
> 
> It should be like this:
> 
> change log A
> ------------------------------------------------------------------------
> scanpy (1.6.0-1) unstable; urgency=medium
> 
>   [ Robbi Nespu ]
>   * add pythons anndata, sinfo, setuptools-scm, legacy-api-wrap as
> dependencies
>   * fixing test module which failed during execution
> 
>  -- Robbi Nespu <robbinespu@gmail.com>  Fri, 19 Mar 2021 23:05:47 +0800
> 
>   [ Steffen Moeller ]
>   * Initial release (Closes: #970887)
> 
>     BLOCKER: ModuleNotFoundError: No module named 'sinfo'
>  -- Steffen Moeller <moeller@debian.org>  Fri, 25 Sep 2020 01:33:40 +0200
> ------------------------------------------------------------------------

Definitely not - its way to much text and its even syntactically
wrong.  A changelog paragraph can have only a single

  -- Author <email>  Date

line and this has to be the last line of such a paragraph.
 
> or
> 
> change log B
> ------------------------------------------------------------------------
> scanpy (1.6.0-1) unstable; urgency=medium
> 
>   [ Robbi Nespu ]
>   * Initial release (Closes: #970887)
>   * add pythons anndata, sinfo, setuptools-scm, legacy-api-wrap as
> dependencies
>   * fixing test module which failed during execution
> 
>  -- Robbi Nespu <robbinespu@gmail.com>  Fri, 19 Mar 2021 23:05:47 +0800
> 
>   [ Steffen Moeller ]
> 
>     BLOCKER: ModuleNotFoundError: No module named 'sinfo'
>  -- Steffen Moeller <moeller@debian.org>  Fri, 25 Sep 2020 01:33:40 +0200
> ------------------------------------------------------------------------

Can't see the diff to log A.  Its wrong in the same way.
 
> or
> 
> change log C
> ------------------------------------------------------------------------
> scanpy (1.6.0-1) unstable; urgency=medium
> 
>   [ Steffen Moeller, Robbi Nespu ]
>   * Initial release (Closes: #970887)
> 
>  -- Steffen Moeller <moeller@debian.org>  Fri, 25 Sep 2020 01:33:40 +0200
>  -- Robbi Nespu <robbinespu@gmail.com>  Fri, 19 Mar 2021 23:05:47 +0800
> ------------------------------------------------------------------------

Also here those two lines are simply wrong.
 
> I think it should be like "change log C"? Correct me if I wrong.

This would be a valid changelog (see my commit [3]):


scanpy (1.7.1-1) UNRELEASED; urgency=medium                                                                                                                                           

  * Team upload
  * Initial release (Closes: #970887)

 -- Robbi Nespu <robbinespu@gmail.com>  Fri, 19 Mar 2021 23:05:47 +0800


The "Team upload" is needed since you are not mentioned in
debian/control as "Uploaders".  If you would consider to keep on working
on this package, please add "Robbi Nespu <robbinespu@gmail.com>" there
and drop the "Team upload" from d/changelog.  That's all.  Pretty simple,
isn't it. ;-)

> > I think you interpreted Diane correctly (from what I can read in the
> > attached text).
> Yes the Diane are the maintainer. I assume it on-going-process to be upload
> by ftpmaster and take time time to be available.

Hmmm, seems I should ask Diane again.  I can neither see it in new nor
in unstable.  This might either mean it was not uploaded yet or it was
rejected by ftpmaster.

Building it from Git for the moment to get scanpy building ...

> > IMHO we should always upload the latest upstream version - except if we
> > have very good reasons to stick to some older version.  So I'd recommend
> > you run
> > 
> >      routine-update
> > 
> > on this repository ... and afterwards strip down debian/changelog as I
> > described above.
> > 
> 
> Yes this is very helpful. Thanks god there is "routine-update", but when I
> ran it, I get error
> 
> $ routine-update
> gbp:info: Fetching from default remote for each branch
> gbp:info: Branch 'pristine-tar' is already up to date.
> gbp:info: Branch 'upstream' is already up to date.
> gbp:info: Branch 'master' is already up to date.
> ba1b19b3b63c6e635dc7a8b0f5e2581d9d5f2d15
> uupdate: PACKAGE     = "scanpy" is in the top of debian/changelog
> uupdate: VERSION     = "1.6.0-2" is in the top of debian/changelog
> uupdate: EPOCH       = "" is epoch part of $VERSION
> uupdate: SVERSION    = "1.6.0-2" is w/o-epoch part of $VERSION
> uupdate: UVERSION    = "1.6.0" the upstream portion w/o-epoch of $VERSION
> uupdate: ../scanpy-1.7.1 directory exists.
> uupdate: remove ../scanpy-1.7.1 directory.
> uupdate: -> Overwrite to scanpy_1.7.1-1.debian.tar.xz
> [master aa68601] routine-update: New upstream version
>  1 file changed, 1 insertion(+), 1 deletion(-)
> gbp:error: More than one archive specified. Try --help.

Argh.  The reason is that routine-update can not cope with the in this
case totally irrelevant `debian uupdate` arguments in watch file.
Deleting these helps here[4].

The rationale is that Steffen is using dh_make to create Debian Med
packages despite I'm pretty convinced that the Debian Med template[5] is
way more straightforward for our work.  Dh_make entertains to add the
absolutely unneeded `debian uupdate` in the end of the watch line.  This
is in principle harmless but parsing of the output of uscan in
routine-update[6] is broken since this leads to some different strings
in the uscan output.

My lazy approach was to simply remove `debian uupdate` from d/watch.
It would be more safe to fix routine-update to cope with two different
kinds of output - and everybody is welcome to do so. ;-)  It might
even help to do

    sed -i 's/ *debian \+uupdate *$//' debian/watch

before calling uscan - but may be there are some cases remaining where
uupdate is needed?  I don't know. :-( 

In short: I was running routine-update successfully now, have also added
a new Build-Depends and finally even fixed the changelog (leaving the
decision to you whether you want to become an Uploader or not).

However, the package does not build (any more in this version?) since
the build time test fails with

  FileNotFoundError: [Errno 2] No such file or directory: '/build/scanpy-1.7.1/.pybuild/cpython3_3.9_scanpy/build/pyproject.toml'

I have currently no time to investigate this further and thus I'm now
handing this back to you. ;-)

Hope this helps

     Andreas.

[3] https://salsa.debian.org/med-team/scanpy/-/commit/8ad1fe8f3d9314646c21026c8a7213b262fd2c1d
[4] https://salsa.debian.org/med-team/scanpy/-/commit/59f944783877f5b631c0a2ce01eab203513f47b1
[5] https://salsa.debian.org/med-team/community/package_template/
[6] https://salsa.debian.org/science-team/routine-update/-/blob/master/routine-update#L249

> [1] https://tracker.debian.org/pkg/python-stdlib-list
> [2] https://tracker.debian.org/pkg/python-sinfo
> 
> -- 
> Email : Robbi Nespu <robbinespu AT SPAMFREE gmail DOT com>
> PGP fingerprint : D311 B5FF EEE6 0BE8 9C91 FA9E 0C81 FA30 3B3A 80BA
> PGP key : https://keybase.io/robbinespu/pgp_keys.asc
> 
> 

-- 
http://fam-tille.de


Reply to: