Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.maint.python > #12053 > unrolled thread
| Started by | Andreas Tille <andreas@an3as.eu> |
|---|---|
| First post | 2019-11-28 16:10 +0100 |
| Last post | 2019-11-28 19:00 +0100 |
| Articles | 13 — 6 participants |
Back to article view | Back to linux.debian.maint.python
autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Andreas Tille <andreas@an3as.eu> - 2019-11-28 16:10 +0100
Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Ondrej Novy <novy@ondrej.org> - 2019-11-28 16:40 +0100
Bug#945768: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Andreas Tille <andreas@an3as.eu> - 2019-11-28 17:20 +0100
Bug#945768: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Sandro Tosi <morph@debian.org> - 2019-11-28 17:20 +0100
Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Andreas Tille <andreas@an3as.eu> - 2019-11-28 18:30 +0100
Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Simon McVittie <smcv@debian.org> - 2019-11-28 18:30 +0100
Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Scott Kitterman <debian@kitterman.com> - 2019-11-28 21:50 +0100
Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') "Yao Wei (魏銘廷)" <mwei@debian.org> - 2019-11-29 01:40 +0100
Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Simon McVittie <smcv@debian.org> - 2019-11-29 09:30 +0100
Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Simon McVittie <smcv@debian.org> - 2019-11-29 11:50 +0100
Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Andreas Tille <andreas@an3as.eu> - 2019-11-29 12:10 +0100
Lintian warning for this issue (Was: autopkgtest-pkg-python fails if package name is python-pyMODULENAME) Andreas Tille <andreas@an3as.eu> - 2019-12-04 14:50 +0100
Bug#945768: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') Ondrej Novy <novy@ondrej.org> - 2019-11-28 19:00 +0100
| From | Andreas Tille <andreas@an3as.eu> |
|---|---|
| Date | 2019-11-28 16:10 +0100 |
| Subject | autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7tAB-44m-1@gated-at.bofh.it> |
On Thu, Nov 28, 2019 at 12:46:34PM +0100, Paul Gevers wrote:
> Source: python-pypubsub
> Version: 4.0.3-2
> X-Debbugs-CC: debian-ci@lists.debian.org
> User: debian-ci@lists.debian.org
> Usertags: regression
>
> ...
>
> [1] https://qa.debian.org/excuses.php?package=python-pypubsub
>
> https://ci.debian.net/data/autopkgtest/testing/amd64/p/python-pypubsub/3403470/log.gz
>
> autopkgtest [15:15:47]: test autodep8-python3: set -e ; for py in
> $(py3versions -r 2>/dev/null) ; do cd "$AUTOPKGTEST_TMP" ; echo "Testing
> with $py:" ; $py -c "import pypubsub; print(pypubsub)" ; done
> autopkgtest [15:15:47]: test autodep8-python3: [-----------------------
> Testing with python3.7:
> Traceback (most recent call last):
> File "<string>", line 1, in <module>
> ModuleNotFoundError: No module named 'pypubsub'
> autopkgtest [15:15:47]: test autodep8-python3: -----------------------]
The test is correct since the correct module name is pubsub (rather than
pypubsub). It seems that's a usual pattern since if I check python3-pyvcf[1]
it ends up in:
autopkgtest [08:47:45]: test autodep8-python3: set -e ; for py in $(py3versions -r 2>/dev/null) ; do cd "$AUTOPKGTEST_TMP" ; echo "Testing with $py:" ; $py -c "import pyvcf; print(pyvcf)" ; done
autopkgtest [08:47:45]: test autodep8-python3: [-----------------------
Testing with python3.8:
Traceback (most recent call last):
File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'pyvcf'
autopkgtest [08:47:46]: test autodep8-python3: -----------------------]
autopkgtest [08:47:46]: test autodep8-python3: - - - - - - - - - - results - - - - - - - - - -
autodep8-python3 FAIL non-zero exit status 1
Is there any trick to enable autopkgtest-pkg-python detecting the correct
module name?
Kind regards
Andreas.
[1] https://ci.debian.net/data/autopkgtest/unstable/amd64/p/python-pyvcf/3462810/log.gz
--
http://fam-tille.de
[toc] | [next] | [standalone]
| From | Ondrej Novy <novy@ondrej.org> |
|---|---|
| Date | 2019-11-28 16:40 +0100 |
| Subject | Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7u3E-4eC-5@gated-at.bofh.it> |
| In reply to | #12053 |
[Multipart message — attachments visible in raw view] — view raw
Hi, čt 28. 11. 2019 v 16:04 odesílatel Andreas Tille <andreas@an3as.eu> napsal: > Is there any trick to enable autopkgtest-pkg-python detecting the correct > module name? > no (not yet? See: https://salsa.debian.org/ci-team/autodep8/merge_requests/6 ) -- Best regards Ondřej Nový
[toc] | [prev] | [next] | [standalone]
| From | Andreas Tille <andreas@an3as.eu> |
|---|---|
| Date | 2019-11-28 17:20 +0100 |
| Subject | Bug#945768: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7uGl-4Ii-1@gated-at.bofh.it> |
| In reply to | #12054 |
On Thu, Nov 28, 2019 at 04:18:07PM +0100, Ondrej Novy wrote:
>
> > Is there any trick to enable autopkgtest-pkg-python detecting the correct
> > module name?
> >
>
> no (not yet? See: https://salsa.debian.org/ci-team/autodep8/merge_requests/6
> )
Hmmm, what are the chances to get this applied? I've added
X-Python-Module-Name: pubsub
in Git - but this will not reall fix the test. The only solution I'd see
otherwise is to deactivate the test.
Kind regards
Andreas.
--
http://fam-tille.de
[toc] | [prev] | [next] | [standalone]
| From | Sandro Tosi <morph@debian.org> |
|---|---|
| Date | 2019-11-28 17:20 +0100 |
| Subject | Bug#945768: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7uGl-4Ii-5@gated-at.bofh.it> |
| In reply to | #12055 |
On Thu, Nov 28, 2019 at 11:11 AM Andreas Tille <andreas@an3as.eu> wrote: > > On Thu, Nov 28, 2019 at 04:18:07PM +0100, Ondrej Novy wrote: > > > > > Is there any trick to enable autopkgtest-pkg-python detecting the correct > > > module name? > > > > > > > no (not yet? See: https://salsa.debian.org/ci-team/autodep8/merge_requests/6 > > ) > > Hmmm, what are the chances to get this applied? I've added > > X-Python-Module-Name: pubsub > > in Git - but this will not reall fix the test. The only solution I'd see > otherwise is to deactivate the test. if you install `pubsub` as top-level module, your package must be named pythonN-pubsub, if not it violates the policy and it's RC buggy. please rename the package. -- Sandro "morph" Tosi My website: http://sandrotosi.me/ Me at Debian: http://wiki.debian.org/SandroTosi Twitter: https://twitter.com/sandrotosi
[toc] | [prev] | [next] | [standalone]
| From | Andreas Tille <andreas@an3as.eu> |
|---|---|
| Date | 2019-11-28 18:30 +0100 |
| Subject | Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7vM5-5m7-1@gated-at.bofh.it> |
| In reply to | #12056 |
On Thu, Nov 28, 2019 at 11:15:31AM -0500, Sandro Tosi wrote:
> > Hmmm, what are the chances to get this applied? I've added
> >
> > X-Python-Module-Name: pubsub
> >
> > in Git - but this will not reall fix the test. The only solution I'd see
> > otherwise is to deactivate the test.
>
> if you install `pubsub` as top-level module, your package must be
> named pythonN-pubsub, if not it violates the policy and it's RC buggy.
> please rename the package.
OK, just to make sure the package currently named python3-pypubsub
installs files
...
/usr/lib/python3/dist-packages/Pypubsub-4.0.3.egg-info
/usr/lib/python3/dist-packages/Pypubsub-4.0.3.egg-info/PKG-INFO
/usr/lib/python3/dist-packages/Pypubsub-4.0.3.egg-info/dependency_links.txt
/usr/lib/python3/dist-packages/Pypubsub-4.0.3.egg-info/not-zip-safe
/usr/lib/python3/dist-packages/Pypubsub-4.0.3.egg-info/top_level.txt
/usr/lib/python3/dist-packages/pubsub
/usr/lib/python3/dist-packages/pubsub/__init__.py
/usr/lib/python3/dist-packages/pubsub/core
/usr/lib/python3/dist-packages/pubsub/core/__init__.py
/usr/lib/python3/dist-packages/pubsub/core/annotations.py
/usr/lib/python3/dist-packages/pubsub/core/callables.py
...
No idea about /usr/lib/python3/dist-packages/Pypubsub-4.0.3.egg-info
but it seems I need to rename to python3-pubsub since there is
the real module, right?
Kind regards
Andreas.
--
http://fam-tille.de
[toc] | [prev] | [next] | [standalone]
| From | Simon McVittie <smcv@debian.org> |
|---|---|
| Date | 2019-11-28 18:30 +0100 |
| Subject | Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7vM5-5m7-13@gated-at.bofh.it> |
| In reply to | #12056 |
On Thu, 28 Nov 2019 at 11:15:31 -0500, Sandro Tosi wrote:
> if you install `pubsub` as top-level module, your package must be
> named pythonN-pubsub, if not it violates the policy and it's RC buggy.
That's what I had thought, but I've also seen people asserting that the
Debian package name ought to reflect the egg name in cases where it
differs from the top-level Python module name.
Some examples of where the difference between egg name and module name
matters:
- this one:
- module: pubsub (-> python3-pubsub)
- egg: pypubsub-*.egg-info (-> python3-pypubsub)
- is actually python3-pypubsub (named for the egg)
- src:dbus-python:
- module: dbus (-> python3-dbus)
- egg: dbus_python-1.2.14.egg-info (-> python3-dbus-python)
- is actually python3-dbus (named for the module)
- src:pygobject:
- module: gi (-> python3-gi) and pygtkcompat
- egg: PyGObject-3.34.0.egg-info (-> python3-pygobject)
- is actually python3-gi (named for the module)
(Maybe python3-gi should also have Provides: python3-pygtkcompat?)
Is there consensus that the top-level module name is what matters, and not
following the recommendation is a bug?
https://www.debian.org/doc/packaging-manuals/python-policy/module_packages.html
says "The binary package for module foo should preferably be named
python3-foo, if the module name allows" and "import foo should import
the module", which suggests that it is indeed the name of the top-level
importable module, and not the name of the egg, that matters (which would
imply that -dbus and -gi are correct, and -pypubsub is not).
Is there consensus that not following this recommendation is a *RC* bug?
The bits I quoted above say "should" rather than "must".
Thanks,
smcv
[toc] | [prev] | [next] | [standalone]
| From | Scott Kitterman <debian@kitterman.com> |
|---|---|
| Date | 2019-11-28 21:50 +0100 |
| Subject | Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7yTD-7ec-5@gated-at.bofh.it> |
| In reply to | #12058 |
On November 28, 2019 5:27:53 PM UTC, Simon McVittie <smcv@debian.org> wrote: >On Thu, 28 Nov 2019 at 11:15:31 -0500, Sandro Tosi wrote: >> if you install `pubsub` as top-level module, your package must be >> named pythonN-pubsub, if not it violates the policy and it's RC >buggy. > >That's what I had thought, but I've also seen people asserting that the >Debian package name ought to reflect the egg name in cases where it >differs from the top-level Python module name. > >Some examples of where the difference between egg name and module name >matters: > >- this one: > - module: pubsub (-> python3-pubsub) > - egg: pypubsub-*.egg-info (-> python3-pypubsub) > - is actually python3-pypubsub (named for the egg) > >- src:dbus-python: > - module: dbus (-> python3-dbus) > - egg: dbus_python-1.2.14.egg-info (-> python3-dbus-python) > - is actually python3-dbus (named for the module) > >- src:pygobject: > - module: gi (-> python3-gi) and pygtkcompat > - egg: PyGObject-3.34.0.egg-info (-> python3-pygobject) > - is actually python3-gi (named for the module) > >(Maybe python3-gi should also have Provides: python3-pygtkcompat?) > >Is there consensus that the top-level module name is what matters, and >not >following the recommendation is a bug? >https://www.debian.org/doc/packaging-manuals/python-policy/module_packages.html >says "The binary package for module foo should preferably be named >python3-foo, if the module name allows" and "import foo should import >the module", which suggests that it is indeed the name of the top-level >importable module, and not the name of the egg, that matters (which >would >imply that -dbus and -gi are correct, and -pypubsub is not). > >Is there consensus that not following this recommendation is a *RC* >bug? >The bits I quoted above say "should" rather than "must". > >Thanks, > smcv Python Policy is not Debian Policy. It's not a "policy" violation in the sense of a serious bug. That said, it would be better to change it. Scott K
[toc] | [prev] | [next] | [standalone]
| From | "Yao Wei (魏銘廷)" <mwei@debian.org> |
|---|---|
| Date | 2019-11-29 01:40 +0100 |
| Subject | Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7Cud-13J-1@gated-at.bofh.it> |
| In reply to | #12058 |
[Multipart message — attachments visible in raw view] — view raw
> On Nov 29, 2019, at 01:28, Simon McVittie <smcv@debian.org> wrote: > > Is there consensus that the top-level module name is what matters, and not > following the recommendation is a bug? > https://www.debian.org/doc/packaging-manuals/python-policy/module_packages.html > says "The binary package for module foo should preferably be named > python3-foo, if the module name allows" and "import foo should import > the module", which suggests that it is indeed the name of the top-level > importable module, and not the name of the egg, that matters (which would > imply that -dbus and -gi are correct, and -pypubsub is not). If the module name has upper case in it, it would actually break Policy §5.6.1 For example one of my package has module name fontParts, and if folllowing Python policy, the name would be python3-fontParts, and it would be a policy violation. So it has to be using all lower-case name, therefore running tests generated by autopkgtest fails. I have to generate the testing script manually and modify accordingly. Yao Wei (This email is sent from a phone; sorry for HTML email if it happens.)
[toc] | [prev] | [next] | [standalone]
| From | Simon McVittie <smcv@debian.org> |
|---|---|
| Date | 2019-11-29 09:30 +0100 |
| Subject | Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7JP3-5Ss-1@gated-at.bofh.it> |
| In reply to | #12064 |
On Fri, 29 Nov 2019 at 08:30:16 +0800, Yao Wei (魏銘廷) wrote:
> The binary package for module foo should preferably be named
> python3-foo, if the module name allows
>
> If the module name has upper case in it, it would actually break Policy §5.6.1
I'd assumed the "foo" here was shorthand for
module_name.lower().replace('_', '-'), although maybe it would be better
for this to be explicit in the policy. For example, the modules with
which you can 'import Xlib' and 'import more_itertools' are packaged as
python3-xlib and python3-more-itertools.
autopkgtest-pkg-python would ideally transform - back to _ to decide
what to import, which would fix the more_itertools case? It would need
an override mechanism for the Xlib case anyway, because lower() isn't
a reversible transformation.
smcv
[toc] | [prev] | [next] | [standalone]
| From | Simon McVittie <smcv@debian.org> |
|---|---|
| Date | 2019-11-29 11:50 +0100 |
| Subject | Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7M0x-7a3-3@gated-at.bofh.it> |
| In reply to | #12074 |
On Thu, 28 Nov 2019 at 17:27:53 +0000, Simon McVittie wrote:
> On Thu, 28 Nov 2019 at 11:15:31 -0500, Sandro Tosi wrote:
> > if you install `pubsub` as top-level module, your package must be
> > named pythonN-pubsub, if not it violates the policy and it's RC buggy.
>
> That's what I had thought, but I've also seen people asserting that the
> Debian package name ought to reflect the egg name in cases where it
> differs from the top-level Python module name.
I've opened
https://salsa.debian.org/cpython-team/python3-defaults/merge_requests/2
to clarify this. Comments welcome, particularly if you don't think my
proposed change reflects consensus.
(I tried to open a wishlist bug in python3-defaults, but the BTS hasn't
responded so far.)
On Fri, 29 Nov 2019 at 08:29:34 +0000, Simon McVittie wrote:
> On Fri, 29 Nov 2019 at 08:30:16 +0800, Yao Wei (魏銘廷) wrote:
> > If the module name has upper case in it, it would actually break Policy §5.6.1
>
> I'd assumed the "foo" here was shorthand for
> module_name.lower().replace('_', '-'), although maybe it would be better
> for this to be explicit in the policy.
Documenting this is also part of
https://salsa.debian.org/cpython-team/python3-defaults/merge_requests/2
> autopkgtest-pkg-python would ideally transform - back to _ to decide
> what to import, which would fix the more_itertools case?
In fact it already does.
https://salsa.debian.org/ci-team/autodep8/merge_requests/17 adds test
coverage.
> It would need
> an override mechanism for the Xlib case anyway
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884181 and
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=929957 are requests
for such a mechanism.
https://salsa.debian.org/ci-team/autodep8/merge_requests/6 and
https://salsa.debian.org/ci-team/autodep8/merge_requests/17 are two
proposals for implementations of this.
smcv
[toc] | [prev] | [next] | [standalone]
| From | Andreas Tille <andreas@an3as.eu> |
|---|---|
| Date | 2019-11-29 12:10 +0100 |
| Subject | Re: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7MjT-7wm-3@gated-at.bofh.it> |
| In reply to | #12075 |
On Fri, Nov 29, 2019 at 10:42:45AM +0000, Simon McVittie wrote:
>
> I've opened
> https://salsa.debian.org/cpython-team/python3-defaults/merge_requests/2
> to clarify this. Comments welcome, particularly if you don't think my
> proposed change reflects consensus.
Thanks. This is more clear. I just uploaded with python3-pubsub to new.
(To bad that this will need another iteration for a source-only upload :-()
Kind regards
Andreas.
--
http://fam-tille.de
[toc] | [prev] | [next] | [standalone]
| From | Andreas Tille <andreas@an3as.eu> |
|---|---|
| Date | 2019-12-04 14:50 +0100 |
| Subject | Lintian warning for this issue (Was: autopkgtest-pkg-python fails if package name is python-pyMODULENAME) |
| Message-ID | <z9Dct-3Vt-5@gated-at.bofh.it> |
| In reply to | #12076 |
On Fri, Nov 29, 2019 at 12:02:44PM +0100, Andreas Tille wrote: > > I've opened > > https://salsa.debian.org/cpython-team/python3-defaults/merge_requests/2 > > to clarify this. Comments welcome, particularly if you don't think my > > proposed change reflects consensus. > > Thanks. This is more clear. I just uploaded with python3-pubsub to new. BTW, I think the issue deserves a lintian warning: package-name-different-than-loadable-python-module or something like this. Kind regards, Andreas. -- http://fam-tille.de
[toc] | [prev] | [next] | [standalone]
| From | Ondrej Novy <novy@ondrej.org> |
|---|---|
| Date | 2019-11-28 19:00 +0100 |
| Subject | Bug#945768: autopkgtest-pkg-python fails if package name is python-pyMODULENAME (Was: Bug#945768: python-pypubsub: autopkgtest failure: No module named 'pypubsub') |
| Message-ID | <z7wf8-5xj-3@gated-at.bofh.it> |
| In reply to | #12055 |
[Multipart message — attachments visible in raw view] — view raw
Hi, čt 28. 11. 2019 v 17:11 odesílatel Andreas Tille <andreas@an3as.eu> napsal: > Hmmm, what are the chances to get this applied? I've added > tbh dunno :) > in Git - but this will not reall fix the test. The only solution I'd see > otherwise is to deactivate the test. > you have two options: 1. deactivate the test (remove Testsuite: autopkgtest-pkg-python from d/control) 2. call `autodep8 >debian/tests/control` and edit result -- Best regards Ondřej Nový
[toc] | [prev] | [standalone]
Back to top | Article view | linux.debian.maint.python
csiph-web