Bug#845330: python-apt: out of date on PyPI
Package: python-apt
Version: 0.9.3.12
Severity: important
Tags: upstream
I am trying to use python-apt as a dependency on a project that is
documented on Readthedocs.org (RTD):
http://debmans.readthedocs.io/
To parse the API docs, Sphinx need to load my modules, which in turn
need to load the dependencies. This means RTD needs to be able to
install those dependencies. I correctly have python-apt setup as a
depdency, so RTD tries to install it, but fails:
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 46, in _execfile
exec(code, globals, locals)
File "/tmp/easy_install-V5ckuy/python-apt-0.7.8/setup.py", line 6, in <module>
# This program is free software: you can redistribute it and/or modify
ImportError: No module named DistUtilsExtra.command
You can also see the empty API docs here:
https://debmans.readthedocs.io/en/latest/api.html
I presume this is fixed in later versions, but unfortunately, it seems
the version of apt on PyPI is out of date and has issues being
"easy-installed". It also seems it can't be installed with pip at all:
[998]anarcat@angela:~$ pip install --user --force --upgrade python-apt
/usr/lib/python2.7/dist-packages/cffi/model.py:526: UserWarning: 'point_conversion_form_t' has no values explicitly defined; next version will refuse to guess which integer type it is meant to be (unsigned/signed, int/long)
% self._get_c_name())
Downloading/unpacking python-apt
Downloading python-apt-0.7.8.tar.bz2 (49kB): 49kB downloaded
Running setup.py (path:/tmp/pip-build-Oofl8j/python-apt/setup.py) egg_info for package python-apt
Traceback (most recent call last):
File "<string>", line 17, in <module>
File "/tmp/pip-build-Oofl8j/python-apt/setup.py", line 11, in <module>
string.split(parse_makefile("python/makefile")["APT_PKG_SRC"]))
File "/usr/lib/python2.7/distutils/sysconfig.py", line 317, in parse_makefile
fp = TextFile(fn, strip_comments=1, skip_blanks=1, join_lines=1)
File "/usr/lib/python2.7/distutils/text_file.py", line 103, in __init__
self.open (filename)
File "/usr/lib/python2.7/distutils/text_file.py", line 120, in open
self.file = open (self.filename, 'r')
IOError: [Errno 2] No such file or directory: 'python/makefile'
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 17, in <module>
File "/tmp/pip-build-Oofl8j/python-apt/setup.py", line 11, in <module>
string.split(parse_makefile("python/makefile")["APT_PKG_SRC"]))
File "/usr/lib/python2.7/distutils/sysconfig.py", line 317, in parse_makefile
fp = TextFile(fn, strip_comments=1, skip_blanks=1, join_lines=1)
File "/usr/lib/python2.7/distutils/text_file.py", line 103, in __init__
self.open (filename)
File "/usr/lib/python2.7/distutils/text_file.py", line 120, in open
self.file = open (self.filename, 'r')
IOError: [Errno 2] No such file or directory: 'python/makefile'
----------------------------------------
Cleaning up...
Command python setup.py egg_info failed with error code 1 in /tmp/pip-build-Oofl8j/python-apt
Storing debug log for failure in /home/anarcat/.pip/pip.log
Shouldn't the package be updated on PyPI?
Thanks!
PS: Here's a more complete log of the RTD error:
Searching for python-apt
Reading https://pypi.python.org/simple/python-apt/
Best match: python-apt 0.7.8
Downloading https://pypi.python.org/packages/e5/ff/63bb64a103eda6f13364381e983c0121eeacc337a4421d6005ff7dd76741/python-apt-0.7.8.tar.bz2#md5=93987d60594e6916c73bb054a313b12e
Processing python-apt-0.7.8.tar.bz2
Writing /tmp/easy_install-V5ckuy/python-apt-0.7.8/setup.cfg
Running python-apt-0.7.8/setup.py -q bdist_egg --dist-dir /tmp/easy_install-V5ckuy/python-apt-0.7.8/egg-dist-tmp-iLMLAL
Traceback (most recent call last):
File "setup.py", line 104, in <module>
'Topic :: Text Processing :: Markup :: HTML',
File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
dist.run_commands()
File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/install.py", line 67, in run
self.do_egg_install()
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/install.py", line 117, in do_egg_install
cmd.run()
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 391, in run
self.easy_install(spec, not self.no_deps)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 621, in easy_install
return self.install_item(None, spec, tmpdir, deps, True)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 672, in install_item
self.process_distribution(spec, dist, deps)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 720, in process_distribution
[requirement], self.local_index, self.easy_install
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 825, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1070, in best_match
return self.obtain(req, installer)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1082, in obtain
return installer(requirement)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 640, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 670, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 853, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1081, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1067, in run_setup
run_setup(setup_script, args)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 246, in run_setup
raise
File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 195, in setup_context
yield
File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 166, in save_modules
saved_exc.resume()
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 141, in resume
six.reraise(type, exc, self._tb)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 154, in save_modules
yield saved
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 195, in setup_context
yield
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 243, in run_setup
DirectorySandbox(setup_dir).run(runner)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 273, in run
return func()
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 242, in runner
_execfile(setup_script, ns)
File "/home/docs/checkouts/readthedocs.org/user_builds/debmans/envs/latest/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 46, in _execfile
exec(code, globals, locals)
File "/tmp/easy_install-V5ckuy/python-apt-0.7.8/setup.py", line 6, in <module>
# This program is free software: you can redistribute it and/or modify
ImportError: No module named DistUtilsExtra.command
-- System Information:
Debian Release: 8.6
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'proposed-updates'), (500, 'stable'), (1, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 4.7.0-0.bpo.1-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_CA.UTF-8, LC_CTYPE=fr_CA.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages python-apt depends on:
ii libapt-inst1.5 1.0.9.8.3
ii libapt-pkg4.12 1.0.9.8.3
ii libc6 2.19-18+deb8u6
ii libgcc1 1:4.9.2-10
ii libstdc++6 4.9.2-10
ii python 2.7.9-1
ii python-apt-common 0.9.3.12
Versions of packages python-apt recommends:
ii iso-codes 3.57-1
ii lsb-release 4.1+Debian13+nmu1
ii xz-utils 5.1.1alpha+20120614-2+b3
Versions of packages python-apt suggests:
pn python-apt-dbg <none>
pn python-apt-doc <none>
ii python-gtk2 2.24.0-4
ii python-vte 1:0.28.2-5
-- no debconf information
Reply to: