FTBFS building without python2

Bug #1859880 reported by Bryce Harrington
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
blinker (Ubuntu)
Fix Released
Undecided
Unassigned
nose (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

blinker (and maybe other packages) are failing to transition in focal due to the nose package's dependence on python2.

nose provides both py2 and py3 binary packages, however simply dropping the py2 binary package and switching to python3 dependencies is insufficient, because nose's upstream code includes some py2-isms, such as using the 'print' statement instead of the 'print()' function.

See https://launchpad.net/~bryce/+archive/ubuntu/nose-drop-python2/+packages

From `debuild -uc -us -i`:

python3 setup.py build_sphinx
running build_sphinx
Running Sphinx v1.8.5

Configuration error:
There is a syntax error in your configuration file: invalid syntax (core.py, line 153)
Did you change the syntax from 2.x to 3.x?
make[1]: *** [debian/rules:13: override_dh_auto_build] Error 1
make[1]: Leaving directory '/home/bryce/ubuntu/Nose/nose-gu'
make: *** [debian/rules:9: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2
debuild: fatal error at line 1182:
dpkg-buildpackage -us -uc -ui -i -I.bzr -I.svn -I.git -i failed

triage-focal+20.04:~/ubuntu/Nose/nose-gu$ grep -n 'print ' nose/*.py
nose/core.py:153: print "%s version %s" % (os.path.basename(sys.argv[0]), __version__)
nose/core.py:227: print "Plugin %s" % p.name
nose/core.py:229: print " score: %s" % p.score
nose/core.py:230: print '\n'.join(textwrap.wrap(p.help().strip(),
nose/core.py:238: print " Options:"
nose/core.py:240: print ' %s' % (', '.join(opts))
nose/core.py:242: print '\n'.join(
nose/inspector.py:205: # print line[end[1]:]
nose/loader.py:324: # print "Check %s (%s) in %s" % (item, test, module.__name__)
nose/proxy.py:93: # name as the actual exception to make it print correctly.
nose/result.py:101: """Overrides to print all errorClasses errors as well.
nose/result.py:113: """Called by the test runner to print the final summary of test
nose/util.py:593: >>> from pprint import pprint

I don't know if there are other python2->3 problems besides the print statement, but typically there's more than that to do...

Related branches

Bryce Harrington (bryce)
tags: added: update-excuse
Bryce Harrington (bryce)
description: updated
Bryce Harrington (bryce)
description: updated
tags: added: ftbfs
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package nose - 1.3.7-5

---------------
nose (1.3.7-5) unstable; urgency=medium

  [ Ondřej Nový ]
  * d/control: Remove ancient X-Python-Version field
  * d/control: Remove ancient X-Python3-Version field
  * Use debhelper-compat instead of debian/compat.

  [ Dmitry Shachnev ]
  * Build the documentation using the Python 3 version of sphinx
    (LP: #1859880).
  * Wrap html_sidebars value into a list to fix build with Sphinx 2.3.
  * Make the docs look better by unsetting max-width option.
  * Remove the nosetests-3.X versioned entry point.
  * Update to debhelper compat level 12.
  * Provide the documentation symlinks in /usr/share/doc/python{,3}-nose.
  * Drop libjs-jquery.{hotkeys,isonscreen,tablesorter} build-dependencies,
    they seem to be no longer needed.
  * Drop python-coverage build-dependency, to unblock its removal.
  * Instead add python3-coverage to make the related code still tested.
  * Bump Standards-Version to 4.5.0, no changes needed.

 -- Dmitry Shachnev <email address hidden> Sat, 08 Feb 2020 14:25:44 +0300

Changed in nose (Ubuntu):
status: New → Fix Released
Changed in blinker (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.