Skip to content

fix: bump CI Python from 3.8 to 3.10 for requests 2.33.0 compat - #19

Merged
amitray007 merged 2 commits into
masterfrom
fix/ci-python-version
Mar 30, 2026
Merged

fix: bump CI Python from 3.8 to 3.10 for requests 2.33.0 compat#19
amitray007 merged 2 commits into
masterfrom
fix/ci-python-version

Conversation

@amitray007

Copy link
Copy Markdown
Owner

Summary

  • requests==2.33.0 (merged in fix: sync SDK with Etsy API spec — March 2026 release #18) dropped Python 3.9 and below, causing the publish workflow to fail
  • Update all CI workflows from Python 3.8 to 3.10: python-publish.yml, pr-tests.yml, maintenance-check.yml, pr-coverage.yml
  • Add python_requires=">=3.10" to setup.py so pip enforces the minimum version
  • Add Python version classifiers (3.10-3.13) to setup.py

Test plan

  • pytest -v — 235 tests pass locally
  • CI publish workflow should pass after merge

🤖 Generated with Claude Code

requests 2.33.0 dropped support for Python 3.9 and below. Update all
CI workflows from Python 3.8 to 3.10 and add python_requires>=3.10
to setup.py.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings March 30, 2026 13:20
@github-actions

github-actions Bot commented Mar 30, 2026

Copy link
Copy Markdown
Contributor

Test Coverage Report

Overall: 93% (1533/1643 statements covered)

Coverage by file
File Statements Missing Coverage
etsy_python/v3/auth/OAuth.py 33 33 0%
etsy_python/v3/auth/__init__.py 1 1 0%
etsy_python/v3/enums/Language.py 12 12 0%
etsy_python/v3/enums/ListingInventory.py 3 3 0%
etsy_python/v3/models/ProcessingProfile.py 21 10 52%
etsy_python/v3/models/ShopReturnPolicy.py 25 11 56%
etsy_python/v3/resources/ProcessingProfile.py 26 11 58%
etsy_python/v3/models/HolidayPreferences.py 8 2 75%
etsy_python/v3/models/Miscellaneous.py 8 2 75%
etsy_python/v3/common/Utils.py 31 4 87%
etsy_python/v3/exceptions/RequestException.py 8 1 88%
etsy_python/v3/resources/Response.py 9 1 89%
etsy_python/v3/exceptions/BaseAPIException.py 10 1 90%
etsy_python/v3/models/Request.py 22 2 91%
etsy_python/v3/resources/Listing.py 81 6 93%
etsy_python/v3/models/Listing.py 148 9 94%
etsy_python/v3/resources/Session.py 94 1 99%
etsy_python/__init__.py 2 0 100%
etsy_python/_version.py 1 0 100%
etsy_python/v3/common/Env.py 10 0 100%
etsy_python/v3/common/Request.py 3 0 100%
etsy_python/v3/enums/HolidayPreferences.py 29 0 100%
etsy_python/v3/enums/Listing.py 77 0 100%
etsy_python/v3/enums/ProcessingProfile.py 7 0 100%
etsy_python/v3/enums/ShippingProfile.py 261 0 100%
etsy_python/v3/enums/ShopReceipt.py 12 0 100%
etsy_python/v3/exceptions/__init__.py 2 0 100%
etsy_python/v3/models/FileRequest.py 7 0 100%
etsy_python/v3/models/Product.py 7 0 100%
etsy_python/v3/models/Receipt.py 18 0 100%
etsy_python/v3/models/ShippingProfile.py 85 0 100%
etsy_python/v3/models/Shop.py 24 0 100%
etsy_python/v3/models/Utils.py 19 0 100%
etsy_python/v3/models/__init__.py 10 0 100%
etsy_python/v3/resources/HolidayPreferences.py 19 0 100%
etsy_python/v3/resources/ListingFile.py 22 0 100%
etsy_python/v3/resources/ListingImage.py 22 0 100%
etsy_python/v3/resources/ListingInventory.py 18 0 100%
etsy_python/v3/resources/ListingOffering.py 12 0 100%
etsy_python/v3/resources/ListingProduct.py 12 0 100%
etsy_python/v3/resources/ListingTranslation.py 19 0 100%
etsy_python/v3/resources/ListingVariationImages.py 16 0 100%
etsy_python/v3/resources/ListingVideo.py 22 0 100%
etsy_python/v3/resources/Miscellaneous.py 16 0 100%
etsy_python/v3/resources/Payment.py 23 0 100%
etsy_python/v3/resources/PaymentLedgerEntry.py 15 0 100%
etsy_python/v3/resources/Receipt.py 25 0 100%
etsy_python/v3/resources/ReceiptTransactions.py 27 0 100%
etsy_python/v3/resources/Review.py 16 0 100%
etsy_python/v3/resources/ShippingProfile.py 58 0 100%
etsy_python/v3/resources/Shop.py 23 0 100%
etsy_python/v3/resources/ShopProductionPartner.py 11 0 100%
etsy_python/v3/resources/ShopReturnPolicy.py 28 0 100%
etsy_python/v3/resources/ShopSection.py 25 0 100%
etsy_python/v3/resources/Taxonomy.py 23 0 100%
etsy_python/v3/resources/User.py 14 0 100%
etsy_python/v3/resources/UserAddress.py 19 0 100%
etsy_python/v3/resources/__init__.py 29 0 100%
etsy_python/v3/resources/enums/RateLimit.py 8 0 100%
etsy_python/v3/resources/enums/Request.py 7 0 100%

Updated by PR Tests

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the project’s supported Python baseline to restore CI/publish compatibility after requests==2.33.0 dropped older Python versions.

Changes:

  • Bump GitHub Actions workflows from Python 3.8 to 3.10.
  • Enforce python_requires=">=3.10" in packaging metadata.
  • Add PyPI classifiers for Python 3.10–3.13.

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
setup.py Enforces Python >=3.10 at install time and advertises supported Python versions via classifiers.
.github/workflows/python-publish.yml Updates publish workflow Python runtime to 3.10.
.github/workflows/pr-tests.yml Updates PR test matrix to start at Python 3.10.
.github/workflows/pr-coverage.yml Runs coverage job on Python 3.10 instead of 3.8.
.github/workflows/maintenance-check.yml Runs maintenance checks on Python 3.10 instead of 3.8.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread setup.py
Update README and maintenance plan doc to match the new
python_requires>=3.10 constraint.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@amitray007 amitray007 self-assigned this Mar 30, 2026
@amitray007
amitray007 merged commit 466e5e1 into master Mar 30, 2026
6 checks passed
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.

2 participants