-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Description
Follow-up #2312 (comment): this issue is intended to encourage discussion about adding extras support.
There's several optional dependencies mentioned in docs, and they instruct users to do pip install {{dep_name}}
.
Common practice is to add feature-flags allowing to depend on certain additional ability of the framework w/o having to install those dependencies manually.
For example, aiohttp could have speedups
extra and then user's could've just pip install aiohttp[speedups]
instead of pip install aiodns aiohttp cchardet
.
Also, it is possible to use environment markers as extra names, in this case certain dependencies get installed automatically if the environment matches specific expression, which might be useful for windows-only crutches etc.
Please consider treating extras as a public API, because they are exposed to end-users.
/cc: @asvetlov