Package: python2-pyro4 Version: 4.53-1 Severity: grave Justification: renders package unusable
When trying to import Pyro4 in python2.7 following pops up (example is from ipython but exactly the same output is from the app when trying to use it): In [1]: import Pyro4 --------------------------------------------------------------------------- ImportError Traceback (most recent call last) <ipython-input-1-5bb56b9a009c> in <module>() ----> 1 import Pyro4 /usr/lib/python2.7/dist-packages/Pyro4/__init__.pyc in <module>() 64 65 # import the required Pyro symbols into this package ---> 66 from Pyro4.core import URI, Proxy, Daemon, callback, batch, async, oneway, expose, behavior, current_context 67 from Pyro4.naming import locateNS, resolve 68 from Pyro4.futures import Future /usr/lib/python2.7/dist-packages/Pyro4/core.py in <module>() 19 from Pyro4 import errors, threadutil, socketutil, util, constants, message 20 from Pyro4.socketserver.threadpoolserver import SocketServer_Threadpool ---> 21 from Pyro4.socketserver.multiplexserver import SocketServer_Multiplex 22 23 __all__ = ["URI", "Proxy", "Daemon", "current_context", "callback", "batch", "async", "expose", "behavior", "oneway"] /usr/lib/python2.7/dist-packages/Pyro4/socketserver/multiplexserver.py in <module>() 16 import selectors 17 except ImportError: ---> 18 import selectors34 as selectors 19 from Pyro4 import socketutil, errors, util 20 import Pyro4.constants ImportError: No module named selectors34 'selectors34' is a backport of python3.4 'selectors' to python2.7, which is replacement for python2.7 'select'. Problem is that 'selectors34' is not packaged thus not available in Stretch and I'm afraid it's too late for it to be allowed in. Therefore I see following options: 1. Revert python2-pyro4 (src:Pyro4) to 4.43-1 this one is using 'select' thus doesn't require 'selectors34'. 2. Patch 4.53-1 with something like this: if sys.version_info[:2] == (2,7): import select as selectors else: import selectors in the socetserver/multiplexserver.py instead of try except for importing it and purge requires.txt file from the egg-info. 3. Package selectors34 and convince release managers to allow it in.