Hi, I am just trying to prepare a package (astropy) for (Debian) Hurd. This os lacks a sem_open() implementation. When I now try:
import multiprocessing q = multiprocessing.Queue() I get an ImportError with Python 2.7, but an AttributeError with Python 3.4. In the documentation of multiprocessing.Queue() I couldn't find any hint that it would throw this exception. I am now curious, that 1. this behaviour is not documented 2. it changed at some point, without documentation. Why does it not return a NotImplementedError (this is what I would expect if a function is not implemented by the OS)? Can I be sure that the following works also in future? try q = multiprocessing.Queue() except (ImportError, AttributeError) # handle the case of missing sem_open Or what is the correct way to catch a not working Queue caused by a missing sem_open() implementation? Best regards Ole -- https://mail.python.org/mailman/listinfo/python-list