[engsys] fix: Apply PEP 503 name normalization during package verification in latestdependencies #44597
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
When running
tox run -e latestdependency, tox does an e2e check to validate thatthe actually installed packages match the computed upper range version.
Some packages, like ruamel.yaml, may appear under different names across the set of expected and
installed package sets (e.g.
ruamel-yamlandruamel.yaml) despite both names referring to the same package per PEP 503.The verify package step partially applies the PEP 503 algorithm (just case normalization and substituting
_for-), whichmisses cases like
ruamel.yamlwhere the correct substitution would be.->-.This pull request resolves the above issue by applying the name normalization algorithm as described in PEP 503
https://peps.python.org/pep-0503/#normalized-names
Supersedes #44587
All SDK Contribution checklist:
General Guidelines and Best Practices
Testing Guidelines