django-trench
django-trench copied to clipboard
Make dependency packages for unused MFA methods optional
Is your feature request related to a problem? Please describe. Firmly in the "nice to have" bucket, but it would be great if more control could be exerted over dependencies where they're unnecessary because the MFA method they support isn't used. This means less dependency packages are installed, which is of particular benefit to those who need to keep careful track of dependencies.
Describe the solution you'd like
Modify the setup.py
so the relevant packages are in extras groups and can be optionally installed based on need. The main issue here is how to also balance that flexibility with ensuring ease of use for those who don't care and are happy to install everything.
Describe alternatives you've considered Manually removing the packages which aren't needed post-installation is an (ugly) option, and assumes the code doesn't import these packages unnecessarily, causing import errors despite their functionality being unused.
Additional context Again, not a big issue, but it would allow users to avoid installing where unnecessary:
-
smsapi-client
(SMS) -
twilio
(Twilio) -
yubico-client
(YubiKey)