Hello! I hope everyone's had a great start to 2018! :)
A few months back, while working on pip, I had noticed an
oddity about extras.
Installing a package with extras would not store
information about the fact that the extras were requested.
This means, later, it is not possible to know which
extra-based optional dependencies of a package have to be
considered when verifying that the packages are compatible
with each other. This information is relavant for
resolution/validation since without it, it is not possible to
know which the extra-requirements to care about.
As an example, installing ``requests[security]`` and then
uninstalling ``PyOpenSSL`` leaves you in a state where you
don't really satisfy what was asked for but there's no way to
detect that either.