-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update version of vendored dependency: packaging
#3790
Conversation
Thanks a lot for doing this! |
Invalid marker: "'x'=='x' or os.open('foo')=='y'", parse error at 'or os.op' | ||
|
||
>>> print(im("'x' < 'y' < 'z'")) | ||
Invalid marker: "'x' < 'y' < 'z'", parse error at "< 'z'" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In this test, the exception raised by the new version of packaging
is "less user friendly", they report an expected error for a missing 'y'
key.
Since pkg_resources
is discouraged, I believe it is easier to skip this test, rather than matching against a non-informative error message...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These examples are relevant to understand the difference in behaviour:
pip-run 'packaging==21' -- -c 'from packaging.markers import Marker; m = Marker(""" "3.5" < python_version < "3.9" """); print(m.evaluate())'
# Collecting packaging==21
# Using cached packaging-21.0-py3-none-any.whl (40 kB)
# Collecting pyparsing>=2.0.2
# Using cached pyparsing-3.0.9-py3-none-any.whl (98 kB)
# Installing collected packages: pyparsing, packaging
# Successfully installed packaging-21.0 pyparsing-3.0.9
# Traceback (most recent call last):
# File "/tmp/pip-run-ayqz5stg/packaging/markers.py", line 278, in __init__
# self._markers = _coerce_parse_result(MARKER.parseString(marker))
# File "/tmp/pip-run-ayqz5stg/pyparsing/core.py", line 1141, in parse_string
# raise exc.with_traceback(None)
# pyparsing.exceptions.ParseException: Expected string_end, found '<' (at char 24), (line:1, col:25)
pip-run 'packaging==23' -- -c 'from packaging.markers import Marker; m = Marker(""" "3.5" < python_version < "3.9" """); print(m.evaluate())' :(
# Collecting packaging==23
# Using cached packaging-23.0-py3-none-any.whl (42 kB)
# Installing collected packages: packaging
# Successfully installed packaging-23.0
# True
Can we please have a release with these changes? It blocks downstreams from updating python-packaging. |
Releasing as v67. |
Recent changes to setuptools (pypa/setuptools#3790) released in version 67.0.0 make the `python_requires` check more strick and prevent the installation of Slash.
Recent changes to setuptools (pypa/setuptools#3790) released in version 67.0.0 make the `python_requires` check more strict and prevent the installation of Slash.
Recent changes to setuptools (pypa/setuptools#3790) released in version 67.0.0 make the `python_requires` check more strict and prevent the installation of Slash.
Recent changes to setuptools (pypa/setuptools#3790) released in version 67.0.0 make the `python_requires` check more strict and prevent the installation of Slash.
Summary of changes
packaging
pyparsing
packaging>=23
is more stricttox -e vendor
jaraco.context
also got updated (since it was not a very different release I kept this update)Related: #3722
(For anyone reviewing the PR, you can ignore all the
*/_vendor/*
butvendored.txt
files, since those were changed by an automate process).Pull Request Checklist
changelog.d/
.(See documentation for details)