[tahoe-lafs-trac-stream] [Tahoe-LAFS] #1582: zetuptoolz delenda est
Tahoe-LAFS
trac at tahoe-lafs.org
Tue Mar 8 17:54:13 UTC 2016
#1582: zetuptoolz delenda est
----------------------------+--------------------------------------
Reporter: davidsarah | Owner: somebody
Type: defect | Status: new
Priority: major | Milestone: 1.10.3
Component: packaging | Version: 1.9.0b1
Resolution: | Keywords: setuptools review-needed
Launchpad Bug: |
----------------------------+--------------------------------------
Comment (by zooko):
Replying to [comment:28 warner]:
> It looks like the enthusiastically-long pycryptopp version string is
causing a `shutil.copy()` call to exceed the windows maximum pathname
length.
That's the wrong way to describe this problem. The facts are:
1. setuptools uses the short-paths Windows API instead of the long-paths
Windows API. That's the root of the problem, and it is probably easy to
fix (you just prepend `\\` or something like that to the paths, and then
Windows handles long paths).
2. Because of this bug, the build will fail whenever the base directory
that you're starting in, plus 2 times the name of your package, exceeds
256 bytes (I think).
3. Therefore, the build will always fail if the base directory that you're
starting in has too long of a pathname, and it will always succeed (at
least with all current package names), if the base directory you're in has
sufficiently short of a pathname.
Therefore, reducing the size of pycryptopp's package name would be a
kludge that would only prevent the error in *some* of the cases. Fixes
that can fix the problem in all of the cases are:
1. Build in a directory with a short name, e.g. "C:/build". That is a
workaround that anybody can do without changing the code.
2. Fix setuptools to use the correct Windows API, by prepending `\\` or
whatever it is to the pathnames before calling `shutil.copy()`.
I'm not going to change the pycryptopp versioning scheme.
--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1582#comment:38>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list