Skip to content

fix: update Python 3 compatibility for setup.py and tests - #10524

Open
lyushher wants to merge 1 commit into
aws:developfrom
lyushher:fix/setup-python3-compatibility
Open

fix: update Python 3 compatibility for setup.py and tests#10524
lyushher wants to merge 1 commit into
aws:developfrom
lyushher:fix/setup-python3-compatibility

Conversation

@lyushher

@lyushher lyushher commented Aug 1, 2026

Copy link
Copy Markdown

Summary

This PR improves Python 3 compatibility by updating CaseInsensitiveDict.copy(), relaxing the version parsing regex in setup.py, replacing legacy py2exe package names, and adding tests for the updated behavior.

Changes

  • Update CaseInsensitiveDict.copy() to construct a new instance from a dict instead of a raw dict_values view.
  • Fix the serializable typo in the CaseInsensitiveDict comment.
  • Relax the version parsing regex in setup.py to support flexible whitespace around =.
  • Replace legacy Python 2 py2exe package names with their Python 3 equivalents (http.client, html.parser, and configparser).
  • Add unit tests covering the updated version parsing, Python 3 package names, and CaseInsensitiveDict.copy() behavior.

Testing

python -m pytest tests/unit/test_setup.py tests/unit/test_tests_init.py -v
python setup.py --version

All added tests passed.

Fixes #10492

@lyushher
lyushher requested a review from a team as a code owner August 1, 2026 17:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fix CaseInsensitiveDict.copy() regression, setup.py spacing, and Python 3 py2exe imports

1 participant