As far as I'm concerned this is a packaging bug plain and simple.
There's no reason to have the python-scipy package depend upon python-
decorator/python3-decorator with a fragile symlink.

Upstream scipy 0.17.0 does not symlink decorator.py it vendors a working copy:
https://github.com/scipy/scipy/blob/v0.17.0/scipy/_lib/decorator.py

jtaylor switched to a symlink ages ago (2013-05-09) in debian upstream 
python-scipy 0.12.0-1
https://launchpad.net/debian/+source/python-scipy/0.12.0-1

I understand the logic behind that change and while there's nothing in
the Debian Python Packaging guide which explicitly forbids it, making a
symlink to a file provided by another package strikes me as extremely
poor form.  Personally I'd vote for re-including the copy decorator.py
included upstream. Alternatively a simple "from decorator import *" in
decorator.py would be similarly as kludgy but without a guaranteed
broken scipy when pip uninstalls the system decorator.

Thoughts jtaylor?

----

Steps to reproduce:

pip install a package which has a dependency on any version of decorator
newer than the 4.0.6 provided by python-decorator.  Pip will happily
uninstall it from the old location (/usr/lib/python3/dist-packages) and
install the newer version in an alternate location
(/usr/local/lib/python3.5/dist-packages/ for me) which breaks the
symlink.

For googlability when running import scipy._lib.decorator the error is:
ImportError: No module named 'scipy._lib.decorator'

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1533634

Title:
  Installation Issue : Dangling symlink six and decorator

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-scipy/+bug/1533634/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to