Opened at 2013-07-17T14:49:34Z
Last modified at 2016-03-26T23:05:07Z
#2028 closed defect
Twisted endpoints introduce a dependency on pywin32 — at Version 4
Reported by: | daira | Owned by: | daira |
---|---|---|---|
Priority: | normal | Milestone: | 1.11.0 |
Component: | packaging | Version: | 1.10.0 |
Keywords: | pywin32 windows twisted usability regression review-needed openitp-packaging setuptools | Cc: | |
Launchpad Bug: |
Description (last modified by zooko)
In #1274 we managed to eliminate Tahoe's problematic dependency on pywin32, which significantly complicated building on Windows. However this dependency seems to have crept in again via Twisted's endpoints code:
On 10/07/13 18:44, Mike Nation wrote: > File "C:\tahoe\support\Lib\site-packages\twisted-12.3.0-py2.7-win-amd64.egg\twisted\internet\endpoints.py", line 25, in <module> > from twisted.internet import stdio > File "C:\tahoe\support\Lib\site-packages\twisted-12.3.0-py2.7-win-amd64.egg\twisted\internet\stdio.py", line 28, in <module> > from twisted.internet import _win32stdio > File "C:\tahoe\support\Lib\site-packages\twisted-12.3.0-py2.7-win-amd64.egg\twisted\internet\_win32stdio.py", line 7, in <module> > import win32api > > exceptions.ImportError: No module named win32api > > Failed to load application: No module named win32api
Note that we probably didn't detect this earlier because of #1334.
Change History (4)
comment:1 Changed at 2013-07-17T14:53:14Z by daira
- Keywords twisted added
comment:2 Changed at 2013-07-17T14:59:24Z by daira
Workaround: manually install the pywin32 package from http://sourceforge.net/projects/pywin32/files/. Make sure to get the correct file for the version of Python you are using -- e.g. ending in "py2.7.exe" for Python v2.7. If using 64-bit Windows, the file should have "win-amd64" in its name.
comment:3 Changed at 2014-02-20T22:19:06Z by daira
- Keywords usability regression added
- Owner set to daira
- Status changed from new to assigned
Options:
- Update docs/quickstart.rst to point to downloads of pywin32 (and describe how to select the right one). We used to have this information; adding it back is a usability regression.
- Build eggs of pywin32 for 32-bit and 64-bit Python 2.7, and make sure they are used by a quickstart build. This may be hampered by #142.
- Submit a patch to Twisted to remove the hard dependency on pywin32. Update src/allmydata/_auto_deps.py to allow only versions of Twisted that don't have the hard dependency (either before endpoints, or after the fix), when running on Windows.
- Update src/allmydata/_auto_deps.py to allow only versions of Twisted that are before endpoints, when running on Windows.
comment:4 Changed at 2014-02-20T22:42:53Z by zooko
- Description modified (diff)
This would be fixed by http://twistedmatrix.com/trac/ticket/6032.