Opened 10 years ago
Closed 10 years ago
#231 closed defect (fixed)
hush "missing service_identity" warning from Twisted
Reported by: | Brian Warner | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 0.8.0 |
Component: | packaging | Version: | 0.7.0 |
Keywords: | Cc: |
Description
Modern Twisted complains if you use SSL but it cannot import the service_identity
module. This module parses X.590 certificates to check things like SubjectName
and CommonName
. Foolscap doesn't use these (it just hashes the entire certificate), but the only sane way to suppress the warning is to install service_identity
.
However doing this from setup.py
install_require=
runs into some sort of packaging bug: python setup.py install
complains that it can't find pyasn1 (full install log attached). This is weird, because it found pyasn1 just fine when I omitted service_identity
from the dependency list. Maybe something to do with the order in which the deps were searched and installed?
Attachments (2)
Change History (5)
Changed 10 years ago by
Attachment: | install-without-service_identity.txt added |
---|
Changed 10 years ago by
Attachment: | install-with-service_identity.txt added |
---|
install log *with* service_identity dependency
comment:1 Changed 10 years ago by
Installing it with pip install foolscap.tar.gz
works fine (and looks rather different: it uses cached tarballs, for one).
comment:2 Changed 10 years ago by
Also, running python setup.py install
twice in a row works ok. The first pass fails, but leaves pyasn1 in place, and the second pass sees it and completes successfully.
This sounds like a problem we had in Tahoe a while back, where one of our dependencies was importing (or trying to import) a subdependency during its build process, and the old/missing file got "stuck". That process was forever tainted, and was never able to believe the presence of a newer version.
comment:3 Changed 10 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Ok, we're adding service_identity
as a dependency, and changing the README to recommend pip install .
rather than setup.py install
. From what I hear, pip is preferred these days, and doesn't happen to hit this problem.
We'll investigate the root problem later (probably some other dependency's setup.py requiring something without using a setup_requires=
declaration).
install log *without* service_identity dependency