can python-crypto and pycryptodome co-exist?
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
pycryptodome (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
python-crypto (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Hello,
The pycryptodome docs have:
> The installation procedure depends on the package you want the library in.
> PyCryptodome can be used as:
>$
> #. **a drop-in replacement for the old PyCrypto library**.
> You install it with::
>$
> pip install pycryptodome
> $$$
> In this case, all modules are installed under the ``Crypto`` package.
> $$$$
> One must avoid having both PyCrypto and PyCryptodome installed
> at the same time, as they will interfere with each other.
>$
> This option is therefore recommended only when you are sure that
> the whole application is deployed in a ``virtualenv``.
>$
> #. **a library independent of the old PyCrypto**.
> You install it with::
>$
> pip install pycryptodomex
> $$$
> In this case, all modules are installed under the ``Cryptodome`` package.
> PyCrypto and PyCryptodome can coexist.
>$
Currently there's no Breaks or Conflicts lines in either package:
$ grep -e Break -e Conflict pycryptodome/
grep: pycryptodome/
grep: pycryptodome/
grep: pycryptodome/
grep: pycryptodome/
python-
python-
python-
grep: python-
grep: python-
grep: python-
Can these two packages be installed side-by-side? Or is this something
that matters only to 'pip' installs?
Thanks
Despite being listed upstream as a "drop-in replacement" for python-crypto, that is not how it's packaged in Debian/Ubuntu. The cryptodome package installs a 'Cryptodome' module, not a 'Crypto' module; the two can be successfully coinstalled, and I see nothing that would prevent them from being used on the same system.
$ python3
Python 3.6.5rc1 (default, Mar 14 2018, 06:54:23)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import Crypto
>>> import Cryptodome
>>>
$
The autopkgtests of both packages also pass fine with both modules installed.