[tahoe-lafs-trac-stream] [Tahoe-LAFS] #2873: remove obsolete dependency on "pycrypto"
Tahoe-LAFS
trac at tahoe-lafs.org
Wed Mar 29 21:38:48 UTC 2017
#2873: remove obsolete dependency on "pycrypto"
-----------------------+------------------------
Reporter: warner | Owner: daira
Type: defect | Status: new
Priority: normal | Milestone: 1.13.0
Component: packaging | Version: 1.12.1
Keywords: | Launchpad Bug:
-----------------------+------------------------
Tahoe currently declares a dependency on
[https://pypi.python.org/pypi/pycrypto pycrypto], despite not using it
directly (the only reference is a `from Crypto import Util` in
test_sftp.py, used to check whether we think SFTP is available). We should
remove this.
(note: this ticket is not about removing `pycryptopp`, the minimal python
wrapper that zooko initially wrote for the high-quality C++ library known
as Crypto++. #2322 is about doing that)
We added this dependency years ago when twisted.conch (which powers our
SFTP frontend) needed it for various crypto purposes. At that time, I
considered the SFTP frontend to be "optional", and didn't want to impose
additional dependencies on users who didn't want it. So I made the SFTP
unit tests conditional on whether we could import `Crypto` or not,
thinking that it was the one thing that might not be present (the rest of
twisted.conch shows up "for free" as part of Twisted).
Later, we (maybe Daira, who did a lot of work on SFTP) decided to simplify
the set of possibilities, and make all dependencies mandatory.
Since then, twisted.conch has switched from pycrypto to (pyca)
`cryptography`.
The right way to express this dependency is by depending upon
`twisted[conch]` (probably on `twisted[tls,conch]` if we need both).
--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2873>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list