- Notifications
You must be signed in to change notification settings - Fork 204
SG-38306 Remove Python 2 - Part 10 - SSL#372
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
SG-38306 Remove Python 2 - Part 10 - SSL #372
Uh oh!
There was an error while loading. Please reload this page.
Conversation
julien-lang commented Feb 25, 2025 • edited
Loading Uh oh!
There was an error while loading. Please reload this page.
edited
Uh oh!
There was an error while loading. Please reload this page.
22e8204 to c96c047Comparechadrik commented Jun 17, 2025
It would be great to see this merged |
chadrik commented Jun 17, 2025
What is the oldest version of python that is officially supported by this API? |
julien-lang commented Jun 17, 2025
The oldest supported Python version is 3.9.
We are working on it but it is not done yet. It will take us a few more month to finish and merge it. |
8c8a8fa to 6492b21Compare6492b21 to 413afc6Compare4961679 to 9a131faCompare413afc6 to 74a0494CompareUh oh!
There was an error while loading. Please reload this page.
| # This is the exact same block as the "except Exception" bellow. | ||
| # We need to do it here because the next except will match it | ||
| # otherwise and will not re-attempt. | ||
| # When we drop support of Python 2 and we will probably drop the | ||
| # next except, we might want to remove this except too. |
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.
This is not accurate anymore after #379. So we remove the comment but keep the block.
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.
Pull Request Overview
This PR removes Python 2 support by simplifying SSL handling, eliminating the SSL validation fallback mechanism and custom CA store implementation that was needed for older Python versions. This is part of a series of PRs modernizing the codebase for Python 3 only.
- Removes the global
NO_SSL_VALIDATIONflag and related SSL validation fallback logic - Simplifies HTTPS handler to use modern Python 3 SSL context creation
- Updates user agent strings to remove SSL validation status indicators
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| shotgun_api3/shotgun.py | Removes SSL validation fallback logic, simplifies HTTPS handler, updates user agent generation |
| tests/test_client.py | Updates test assertions to match new user agent format without SSL validation status |
| tests/test_api.py | Removes tests for SHA-2 SSL error handling and validation fallback behavior |
| docs/reference.rst | Removes documentation reference to NO_SSL_VALIDATION constant |
| docs/advanced/iron_python.rst | Moves SSL-related workaround documentation to legacy section |
Uh oh!
There was an error while loading. Please reload this page.
carlos-villavicencio-adsk left a comment
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.
lgtm
The base branch was changed.
0a03a6b into masterUh oh!
There was an error while loading. Please reload this page.
Should have been removed in #372
* Renove unused CACertsHTTPSConnection class Should have been removed in #372 * Update shotgun_api3/shotgun.py Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]>
This PR removes SSL code handling edge cases that were only accurate in Python 2.
This is part of a series of PRs modernizing the codebase for Python 3 only.
NO_SSL_VALIDATIONflag and related SSL validation fallback logicPR orders