Debian Bug report logs - #803310
python3.5 imports everything, is there a way in pybuild to change that?

Package: dh-python; Maintainer for dh-python is Piotr Ożarowski <piotr@debian.org>; Source for dh-python is src:dh-python (PTS, buildd, popcon).

Reported by: Matthias Klose <doko@debian.org>

Date: Wed, 28 Oct 2015 16:33:02 UTC

Severity: important

Done: Piotr Ożarowski <piotr@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Piotr Ożarowski <piotr@debian.org>:
Bug#803310; Package dh-python. (Wed, 28 Oct 2015 16:33:05 GMT) (full text, mbox, link).


Acknowledgement sent to Matthias Klose <doko@debian.org>:
New Bug report received and forwarded. Copy sent to Piotr Ożarowski <piotr@debian.org>. (Wed, 28 Oct 2015 16:33:05 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: Matthias Klose <doko@debian.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: dh-python lets the python3.4 test in sphinx-patchqueue succeed
Date: Wed, 28 Oct 2015 17:31:16 +0100
Package: dh-python
Severity: important

python-sphinxqueue has a bogus fix for #802141, just avoiding the build failure. 
 The underlying problem is that apparently the test step succeeds with 
python3.4.  But mercurial doesn't have *any* Python3 support.  I fail to see why 
this succeeds, assuming an issue with pybuild.  So why is the missing import 
detected with 3.5, but not with 3.4?

Severity important, because it may accept failing tests in other packages as well.

I'll reopen #802141 for python-sphinxdoc and asking for removal of the python3 
package, but please fix dh-python to fail the 0.5-1 package as uploaded.



Information forwarded to debian-bugs-dist@lists.debian.org, Piotr Ożarowski <piotr@debian.org>:
Bug#803310; Package dh-python. (Wed, 28 Oct 2015 16:42:06 GMT) (full text, mbox, link).


Acknowledgement sent to Matthias Klose <doko@debian.org>:
Extra info received and forwarded to list. Copy sent to Piotr Ożarowski <piotr@debian.org>. (Wed, 28 Oct 2015 16:42:06 GMT) (full text, mbox, link).


Message #10 received at 803310@bugs.debian.org (full text, mbox, reply):

From: Matthias Klose <doko@debian.org>
To: 803310@bugs.debian.org
Subject: Re: Bug#803310: Acknowledgement (dh-python lets the python3.4 test in sphinx-patchqueue succeed)
Date: Wed, 28 Oct 2015 17:40:09 +0100
sorry, missing build log (with the X-Python3-Version set to >= 3.4), letting the 
3.4 test succeed and 3.5 test fail, while both should fail.


   debian/rules override_dh_auto_test
make[1]: Entering directory '/«PKGBUILDDIR»'
dh_auto_test
I: pybuild base:170: cd /«PKGBUILDDIR»/.pybuild/pythonX.Y_2.7/build; python2.7 
-m unittest discover -v

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK
I: pybuild base:170: cd /«PKGBUILDDIR»/.pybuild/pythonX.Y_3.4/build; python3.4 
-m unittest discover -v

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK
I: pybuild base:170: cd /«PKGBUILDDIR»/.pybuild/pythonX.Y_3.5/build; python3.5 
-m unittest discover -v
patchqueue (unittest.loader._FailedTest) ... ERROR

======================================================================
ERROR: patchqueue (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: patchqueue
Traceback (most recent call last):
  File "/usr/lib/python3.5/unittest/loader.py", line 462, in _find_test_path
    package = self._get_module_from_name(name)
  File "/usr/lib/python3.5/unittest/loader.py", line 369, in _get_module_from_name
    __import__(name)
  File "/«PKGBUILDDIR»/.pybuild/pythonX.Y_3.5/build/patchqueue/__init__.py", 
line 11, in <module>
    import mercurial.patch
ImportError: No module named 'mercurial'


----------------------------------------------------------------------
Ran 1 test in 0.000s

FAILED (errors=1)
E: pybuild pybuild:262: test: plugin distutils failed with: exit code=1: cd 
/«PKGBUILDDIR»/.pybuild/pythonX.Y_3.5/build; python3.5 -m unittest discover -v
dh_auto_test: pybuild --test -i python{version} -p 3.4 3.5 --dir . returned exit 
code 13
make[1]: [override_dh_auto_test] Error 25 (ignored)




Message sent on to Matthias Klose <doko@debian.org>:
Bug#803310. (Wed, 28 Oct 2015 17:06:06 GMT) (full text, mbox, link).


Message #13 received at 803310-submitter@bugs.debian.org (full text, mbox, reply):

From: Piotr Ożarowski <piotr@debian.org>
To: 803310-submitter@bugs.debian.org
Subject: Re: Bug#803310: Acknowledgement (dh-python lets the python3.4 test in sphinx-patchqueue succeed)
Date: Wed, 28 Oct 2015 18:03:53 +0100
pytthon3.5 imports everything, it's a new "feature" of python3.5.
and since it imports everything even if there are no tests,
Build-Depends needs to be updated.

What do you want me to do in dh-python?

Will you reassign this bug to python3.5 yourself or should I?

> python3.5 -m unittest discover -v
> patchqueue (unittest.loader._FailedTest) ... ERROR
> 
> ======================================================================
> ERROR: patchqueue (unittest.loader._FailedTest)
> ----------------------------------------------------------------------
> ImportError: Failed to import test module: patchqueue
> Traceback (most recent call last):
>   File "/usr/lib/python3.5/unittest/loader.py", line 462, in _find_test_path
>     package = self._get_module_from_name(name)
>   File "/usr/lib/python3.5/unittest/loader.py", line 369, in _get_module_from_name
>     __import__(name)
>   File "/«PKGBUILDDIR»/.pybuild/pythonX.Y_3.5/build/patchqueue/__init__.py",
> line 11, in <module>
>     import mercurial.patch
> ImportError: No module named 'mercurial'



Information forwarded to debian-bugs-dist@lists.debian.org, Piotr Ożarowski <piotr@debian.org>:
Bug#803310; Package dh-python. (Thu, 29 Oct 2015 19:09:06 GMT) (full text, mbox, link).


Acknowledgement sent to Barry Warsaw <barry@debian.org>:
Extra info received and forwarded to list. Copy sent to Piotr Ożarowski <piotr@debian.org>.

Your message did not contain a Subject field. They are recommended and useful because the title of a Bug is determined using this field. Please remember to include a Subject field in your messages in future.

(Thu, 29 Oct 2015 19:09:06 GMT) (full text, mbox, link).


Message #18 received at 803310@bugs.debian.org (full text, mbox, reply):

From: Barry Warsaw <barry@debian.org>
To: 803310@bugs.debian.org
Date: Thu, 29 Oct 2015 15:05:53 -0400
I'm not sure there really is much dh-python can do here.  Note that there
really are no tests in the upstream package.  Cloning upstream's hg you find:

% python3.4 -m unittest discover -v

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK

and

% python3.5 -m unittest discover -v
patchqueue (unittest.loader._FailedTest) ... ERROR

======================================================================
ERROR: patchqueue (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: patchqueue
Traceback (most recent call last):
  File "/usr/lib/python3.5/unittest/loader.py", line 462, in _find_test_path
    package = self._get_module_from_name(name)
  File "/usr/lib/python3.5/unittest/loader.py", line 369, in _get_module_from_name
    __import__(name)
  File "/home/barry/projects/debian/sphinxpatchq/upstream/patchqueue/__init__.py", line 11, in <module>
    import mercurial.patch
ImportError: No module named 'mercurial'


----------------------------------------------------------------------
Ran 1 test in 0.000s

FAILED (errors=1)


So without dh-python getting involved, the bug is reproducible.  I'm not sure
it's a bug in Python 3.5 either really, just a new feature which turns out in
this case to be useful for finding the error early.  I guess.



Information forwarded to debian-bugs-dist@lists.debian.org, Piotr Ożarowski <piotr@debian.org>:
Bug#803310; Package dh-python. (Thu, 29 Oct 2015 19:15:04 GMT) (full text, mbox, link).


Acknowledgement sent to Barry Warsaw <barry@debian.org>:
Extra info received and forwarded to list. Copy sent to Piotr Ożarowski <piotr@debian.org>.

Your message did not contain a Subject field. They are recommended and useful because the title of a Bug is determined using this field. Please remember to include a Subject field in your messages in future.

(Thu, 29 Oct 2015 19:15:04 GMT) (full text, mbox, link).


Message #23 received at 803310@bugs.debian.org (full text, mbox, reply):

From: Barry Warsaw <barry@debian.org>
To: 803310@bugs.debian.org
Date: Thu, 29 Oct 2015 15:13:07 -0400
I think the proper fix for #802141 should have been to

export PYBUILD_DISABLE=test



Reply sent to Piotr Ożarowski <piotr@debian.org>:
You have taken responsibility. (Fri, 10 Jun 2016 08:39:10 GMT) (full text, mbox, link).


Notification sent to Matthias Klose <doko@debian.org>:
Bug acknowledged by developer. (Fri, 10 Jun 2016 08:39:11 GMT) (full text, mbox, link).


Message #28 received at 803310-done@bugs.debian.org (full text, mbox, reply):

From: Piotr Ożarowski <piotr@debian.org>
To: 803310-done@bugs.debian.org
Subject: it's a feature of python3.5, not a bug (at least not in dh-python)
Date: Fri, 10 Jun 2016 10:34:58 +0200
Control: retitle 803310 python3.5 imports everything, is there a way in pybuild to change that?

... the answer is: no. Reopen and reassign to python3.5 if you want



Changed Bug title to 'python3.5 imports everything, is there a way in pybuild to change that?' from 'dh-python lets the python3.4 test in sphinx-patchqueue succeed'. Request was from Piotr Ożarowski <piotr@debian.org> to control@bugs.debian.org. (Fri, 10 Jun 2016 10:12:04 GMT) (full text, mbox, link).


Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sat, 09 Jul 2016 07:26:31 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sat Jan 6 10:53:11 2018; Machine Name: buxtehude

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.