René's URL Explorer Experiment


Title: TPT-4765: Raise minimum supported Python to 3.11 by zliang-akamai · Pull Request #757 · linode/linode_api4-python · GitHub

Open Graph Title: TPT-4765: Raise minimum supported Python to 3.11 by zliang-akamai · Pull Request #757 · linode/linode_api4-python

X Title: TPT-4765: Raise minimum supported Python to 3.11 by zliang-akamai · Pull Request #757 · linode/linode_api4-python

Description: 📝 Description Raise the SDK minimum to Python 3.11, remove the 3.10 classifier, and align CI and Black targets through Python 3.15. The standalone E2E workflow defaults to Python 3.13 and removes its EOL selector; the release cross-repo test runtime is also moved to 3.13. Remove Python 2-only fallback code while preserving the Python 3 behavior. This intentionally drops Python 3.10 support. ✔️ How to Test pytest test/unit/: 517 tests passed on Python 3.11 and 3.15. The changed SDK files pass Black 26.10.1.

Open Graph Description: 📝 Description Raise the SDK minimum to Python 3.11, remove the 3.10 classifier, and align CI and Black targets through Python 3.15. The standalone E2E workflow defaults to Python 3.13 and removes i...

X Description: 📝 Description Raise the SDK minimum to Python 3.11, remove the 3.10 classifier, and align CI and Black targets through Python 3.15. The standalone E2E workflow defaults to Python 3.13 and removes i...

Opengraph URL: https://github.com/linode/linode_api4-python/pull/757

X: @github

direct link

Domain: github.com

react-profiling0
react-import-mapreact,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf
route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:d9d74f4b-6a5e-e1ab-40d3-47936ed90706
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idAA00:D5CEE:4027C34:54E371A:6AF9BB47
html-safe-nonce0b42adbd2b4db6f19863301f41cbe1dc5af3660eac54ac55e1e3c72078fb93b9
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBQTAwOkQ1Q0VFOjQwMjdDMzQ6NTRFMzcxQTo2QUY5QkI0NyIsInZpc2l0b3JfaWQiOiI0OTQxMDA4ODk5NzA1MjU2Nzc1IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmac0d50449f121df5977dc74d094c91c2d7be3bbbd1ce7da93d9baad836870a7e18
hovercard-subject-tagpull_request:5252091022
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/linode/linode_api4-python/pull/757/files
twitter:imagehttps://avatars.githubusercontent.com/u/121905282?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/121905282?s=400&v=4
og:image:alt📝 Description Raise the SDK minimum to Python 3.11, remove the 3.10 classifier, and align CI and Black targets through Python 3.15. The standalone E2E workflow defaults to Python 3.13 and removes i...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None612d3e6ffd693e7ea8d9fcf452370995872baef31d825b1fedef704cd3d24ac7
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/linode/linode_api4-python git https://github.com/linode/linode_api4-python.git
octolytics-dimension-user_id5184305
octolytics-dimension-user_loginlinode
octolytics-dimension-repository_id55797611
octolytics-dimension-repository_nwolinode/linode_api4-python
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id55797611
octolytics-dimension-repository_network_root_nwolinode/linode_api4-python
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release072e34035c13c31543fba9f025cbbbda4210dae4
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/linode/linode_api4-python/pull/757/files#start-of-content
https://github.com/
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Flinode%2Flinode_api4-python%2Fpull%2F757%2Ffiles
GitHubRepository hosting, code review, and collaborationhttps://github.com/platform
CopilotAI coding agent for tasks, projects, and automated workhttps://github.com/features/copilot
ActionsCI/CD and automationhttps://github.com/features/actions
Code QualityQuality analysis, fixes, and enforcementhttps://github.com/features/code-quality
CodespacesCloud development environmentshttps://github.com/features/codespaces
Code SecurityVulnerability detection and remediationhttps://github.com/security/advanced-security/code-security
Secret ProtectionSecret scanning and leak preventionhttps://github.com/security/advanced-security/secret-protection
All Featureshttps://github.com/features
Documentationhttps://docs.github.com/en
Traininghttps://learn.github.com/skills
Certificationshttps://learn.github.com/credentials
Build with Copilothttps://github.com/features/ai
Customize Copilothttps://docs.github.com/en/copilot/how-tos/copilot-on-github/customize-copilot/customize-copilot-overview
Integrationshttps://github.com/marketplace
Trending reposhttps://github.com/trending
GitHub Sponsorshttps://github.com/open-source/sponsors
Developer articleshttps://github.com/resources/articles
ChangelogYour source for the latest features, improvements, and fixes across GitHub products, all in one place.https://github.blog/changelog/
Enterpriseshttps://github.com/enterprise
Teamhttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
See all industrieshttps://github.com/solutions/industry
Why GitHubhttps://github.com/why-github
Customer Storieshttps://github.com/customer-stories
Business insightshttps://github.com/solutions/executive-insights
Trust Centerhttps://github.com/trust-center
GitHub Advanced SecurityEnterprise-grade code securityhttps://github.com/security/advanced-security
Copilot for businessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Documentationhttps://docs.github.com/en
Resource centerhttps://github.com/resources
Bloghttps://github.blog/
Events & webinarshttps://github.com/resources/events
Community Forumhttps://github.com/orgs/community/discussions
Customer Storieshttps://github.com/customer-stories
Integrationshttps://github.com/marketplace
Customer supporthttps://help.github.com/
Traininghttps://learn.github.com/skills
GitHub Statushttps://www.githubstatus.com/
Abouthttps://github.com/about
Partnershttps://github.com/partners
Changeloghttps://github.blog/changelog/
GitHub UniverseThe event for developers, by developers — talks, workshops, and what’s next for GitHub.https://githubuniverse.com/
Pricinghttps://github.com/pricing
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Flinode%2Flinode_api4-python%2Fpull%2F757%2Ffiles
Sign uphttps://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=linode%2Flinode_api4-python
Reloadhttps://github.com/linode/linode_api4-python/pull/757/files
Reloadhttps://github.com/linode/linode_api4-python/pull/757/files
Reloadhttps://github.com/linode/linode_api4-python/pull/757/files
linodehttps://github.com/linode
linode_api4-pythonhttps://github.com/linode/linode_api4-python
Codehttps://github.com/linode/linode_api4-python
Issues1 (1)https://github.com/linode/linode_api4-python/issues
Pull requests7 (7)https://github.com/linode/linode_api4-python/pulls
Actionshttps://github.com/linode/linode_api4-python/actions
Projectshttps://github.com/linode/linode_api4-python/projects
Security and qualityhttps://github.com/linode/linode_api4-python/security
Insightshttps://github.com/linode/linode_api4-python/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Flinode%2Flinode_api4-python%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Flinode%2Flinode_api4-python%2Fissues%2Fnew%2Fchoose
zliang-akamaihttps://github.com/zliang-akamai
devhttps://github.com/linode/linode_api4-python/tree/dev
TPT-4765-python-3-11-supporthttps://github.com/linode/linode_api4-python/tree/TPT-4765-python-3-11-support
Conversation 1 https://github.com/linode/linode_api4-python/pull/757
Commits 2 https://github.com/linode/linode_api4-python/pull/757/commits
Checks 12 https://github.com/linode/linode_api4-python/pull/757/checks
Files changed https://github.com/linode/linode_api4-python/pull/757/files
Please reload this pagehttps://github.com/linode/linode_api4-python/pull/757/files
TPT-4765: Raise minimum supported Python to 3.11 https://github.com/linode/linode_api4-python/pull/757/files#top
Show all changes 2 commits https://github.com/linode/linode_api4-python/pull/757/files
fd89a1b TPT-4765: Require Python 3.11 zliang-akamai Nov 11, 2026 https://github.com/linode/linode_api4-python/pull/757/commits/fd89a1b765a9d6a535465b85abe02c1dc5cfb689
702839e TPT-4765: Default E2E workflow to Python 3.11 zliang-akamai Nov 11, 2026 https://github.com/linode/linode_api4-python/pull/757/commits/702839ec5fea7ca0623a297e1c0d0b117a25cd7a
Clear filters https://github.com/linode/linode_api4-python/pull/757/files
Please reload this pagehttps://github.com/linode/linode_api4-python/pull/757/files
Please reload this pagehttps://github.com/linode/linode_api4-python/pull/757/files
ci.yml https://github.com/linode/linode_api4-python/pull/757/files#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03f
e2e-test.yml https://github.com/linode/linode_api4-python/pull/757/files#diff-5cc2c864012004f60ee3f9078fa1c4a8721c6b841e386c57f12bea58b692e6e2
release-cross-repo-test.yml https://github.com/linode/linode_api4-python/pull/757/files#diff-eaa43b328eac58823cc714ff42e9c469bdb3bd1b1794235025a4efdef08c3e2b
AGENTS.md https://github.com/linode/linode_api4-python/pull/757/files#diff-a54ff182c7e8acf56acfd6e4b9c3ff41e2c41a31c9b211b2deb9df75d9a478f9
linode.py https://github.com/linode/linode_api4-python/pull/757/files#diff-4519cb3850e79b68a903b33b0c01feb6d4ff788db01c20fc097d370b7b9721e2
login_client.py https://github.com/linode/linode_api4-python/pull/757/files#diff-3cbbd95f6bec9985525ab3efd4a75c86a1b02a50e240d8bafdbebc4800d1684a
account.py https://github.com/linode/linode_api4-python/pull/757/files#diff-f5a220881a0fc1c1062aa9b8cca3858d7a2c13a735ce130fc0e785a62a4893fd
linode.py https://github.com/linode/linode_api4-python/pull/757/files#diff-d6d24a50d299d25ea71170ca6fef738bbfc6654f9beef0eb7814dd8211bc3255
serializable.py https://github.com/linode/linode_api4-python/pull/757/files#diff-5c75b5eba9da007d01aec4338ff62a610312756e5bb6f779ee30944c05ebad74
pyproject.toml https://github.com/linode/linode_api4-python/pull/757/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
.github/workflows/ci.ymlhttps://github.com/linode/linode_api4-python/pull/757/files#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03f
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/.github/workflows/ci.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03f
https://github.com/linode/linode_api4-python/pull/757/files#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03f
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
.github/workflows/e2e-test.ymlhttps://github.com/linode/linode_api4-python/pull/757/files#diff-5cc2c864012004f60ee3f9078fa1c4a8721c6b841e386c57f12bea58b692e6e2
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/.github/workflows/e2e-test.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-5cc2c864012004f60ee3f9078fa1c4a8721c6b841e386c57f12bea58b692e6e2
https://github.com/linode/linode_api4-python/pull/757/files#diff-5cc2c864012004f60ee3f9078fa1c4a8721c6b841e386c57f12bea58b692e6e2
https://github.com/linode/linode_api4-python/pull/757/files#diff-5cc2c864012004f60ee3f9078fa1c4a8721c6b841e386c57f12bea58b692e6e2
https://github.com/linode/linode_api4-python/pull/757/files#diff-5cc2c864012004f60ee3f9078fa1c4a8721c6b841e386c57f12bea58b692e6e2
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
.github/workflows/release-cross-repo-test.ymlhttps://github.com/linode/linode_api4-python/pull/757/files#diff-eaa43b328eac58823cc714ff42e9c469bdb3bd1b1794235025a4efdef08c3e2b
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/.github/workflows/release-cross-repo-test.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-eaa43b328eac58823cc714ff42e9c469bdb3bd1b1794235025a4efdef08c3e2b
https://github.com/linode/linode_api4-python/pull/757/files#diff-eaa43b328eac58823cc714ff42e9c469bdb3bd1b1794235025a4efdef08c3e2b
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
AGENTS.mdhttps://github.com/linode/linode_api4-python/pull/757/files#diff-a54ff182c7e8acf56acfd6e4b9c3ff41e2c41a31c9b211b2deb9df75d9a478f9
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/AGENTS.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-a54ff182c7e8acf56acfd6e4b9c3ff41e2c41a31c9b211b2deb9df75d9a478f9
https://github.com/linode/linode_api4-python/pull/757/files#diff-a54ff182c7e8acf56acfd6e4b9c3ff41e2c41a31c9b211b2deb9df75d9a478f9
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
linode_api4/groups/linode.pyhttps://github.com/linode/linode_api4-python/pull/757/files#diff-4519cb3850e79b68a903b33b0c01feb6d4ff788db01c20fc097d370b7b9721e2
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/linode_api4/groups/linode.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-4519cb3850e79b68a903b33b0c01feb6d4ff788db01c20fc097d370b7b9721e2
https://github.com/linode/linode_api4-python/pull/757/files#diff-4519cb3850e79b68a903b33b0c01feb6d4ff788db01c20fc097d370b7b9721e2
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
linode_api4/login_client.pyhttps://github.com/linode/linode_api4-python/pull/757/files#diff-3cbbd95f6bec9985525ab3efd4a75c86a1b02a50e240d8bafdbebc4800d1684a
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/linode_api4/login_client.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-3cbbd95f6bec9985525ab3efd4a75c86a1b02a50e240d8bafdbebc4800d1684a
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
linode_api4/objects/account.pyhttps://github.com/linode/linode_api4-python/pull/757/files#diff-f5a220881a0fc1c1062aa9b8cca3858d7a2c13a735ce130fc0e785a62a4893fd
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/linode_api4/objects/account.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-f5a220881a0fc1c1062aa9b8cca3858d7a2c13a735ce130fc0e785a62a4893fd
https://github.com/linode/linode_api4-python/pull/757/files#diff-f5a220881a0fc1c1062aa9b8cca3858d7a2c13a735ce130fc0e785a62a4893fd
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
linode_api4/objects/linode.pyhttps://github.com/linode/linode_api4-python/pull/757/files#diff-d6d24a50d299d25ea71170ca6fef738bbfc6654f9beef0eb7814dd8211bc3255
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/linode_api4/objects/linode.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-d6d24a50d299d25ea71170ca6fef738bbfc6654f9beef0eb7814dd8211bc3255
https://github.com/linode/linode_api4-python/pull/757/files#diff-d6d24a50d299d25ea71170ca6fef738bbfc6654f9beef0eb7814dd8211bc3255
https://github.com/linode/linode_api4-python/pull/757/files#diff-d6d24a50d299d25ea71170ca6fef738bbfc6654f9beef0eb7814dd8211bc3255
https://github.com/linode/linode_api4-python/pull/757/files#diff-d6d24a50d299d25ea71170ca6fef738bbfc6654f9beef0eb7814dd8211bc3255
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
linode_api4/objects/serializable.pyhttps://github.com/linode/linode_api4-python/pull/757/files#diff-5c75b5eba9da007d01aec4338ff62a610312756e5bb6f779ee30944c05ebad74
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/linode_api4/objects/serializable.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-5c75b5eba9da007d01aec4338ff62a610312756e5bb6f779ee30944c05ebad74
https://github.com/linode/linode_api4-python/pull/757/files#diff-5c75b5eba9da007d01aec4338ff62a610312756e5bb6f779ee30944c05ebad74
https://github.com/linode/linode_api4-python/blob/dev/CODEOWNERS#L1
pyproject.tomlhttps://github.com/linode/linode_api4-python/pull/757/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711
View file https://github.com/linode/linode_api4-python/blob/702839ec5fea7ca0623a297e1c0d0b117a25cd7a/pyproject.toml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/linode/linode_api4-python/pull/757/{{ revealButtonHref }}
https://github.com/linode/linode_api4-python/pull/757/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711
https://github.com/linode/linode_api4-python/pull/757/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711
https://github.com/linode/linode_api4-python/pull/757/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711
https://github.com/linode/linode_api4-python/pull/757/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711
https://github.com/linode/linode_api4-python/pull/757/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711
https://github.com/linode/linode_api4-python/pull/757/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711
Please reload this pagehttps://github.com/linode/linode_api4-python/pull/757/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.