layday
layday
The latest version of `Requirement` implements `__eq__` but this isn't very useful if the components (the name and extras) aren't normalised for comparison: ``` In [1]: from packaging.requirements import Requirement...
IIUC #696 only canonicalises the name - shouldn't extras be canonicalised as well for comparison? ``` >>> Requirement('foo[foo_bar]') == Requirement('foo[foo-bar]') False ``` The originally reported issue hasn't been addressed either...
Regardless of what happens here I think it would be useful to expose individual markers in `markers.Marker` so we can e.g. filter requirements based on their marker value for extras....
I suppose we could use a callback in place of `importlib.metadata` if that makes it more palatable for inclusion in `packaging`. I've adapted the implementation from `build` with this in...
> [...] and the "normalised name" (which is the one used for comparison, and for use in places like filenames and URLs). A different normalisation is done for PyPI URLs/slugs,...
I was not able to predict the irrelevance. Apologies for the noise.
Incidentally, global options in setuptools seem to mean something different than they do in pip where they are placed _in front_ of the setuptools command. Here, they are appended to...
Issues raised against build concerning this behaviour: * https://github.com/pypa/build/issues/202#issuecomment-757373572 * https://github.com/pypa/build/issues/258 * https://github.com/pypa/build/issues/264 * https://github.com/pypa/build/issues/328#issuecomment-877028239 * https://github.com/pypa/build/issues/417 * https://github.com/pypa/build/issues/421 * https://github.com/pypa/build/issues/432
I don't know how changing lists to comma-separated value strings in the PEP is going to help here.
I commented on this upthread: > Incidentally, global options in setuptools seem to mean something different than they do in pip where they are placed _in front_ of the setuptools...