Skip to content

Drop support for Python 3.8#917

Merged
kuan121 merged 2 commits intomainfrom
drop-python-3.8-support
Feb 25, 2026
Merged

Drop support for Python 3.8#917
kuan121 merged 2 commits intomainfrom
drop-python-3.8-support

Conversation

@kuan121
Copy link
Collaborator

@kuan121 kuan121 commented Feb 25, 2026

High Level Overview of Change

Drop support for Python 3.8, which reached end-of-life in October 2024. The minimum supported Python version is now 3.9.

Context of Change

Python 3.8 reached its end-of-life on October 14, 2024, and no longer receives security updates.

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Refactor (non-breaking change that only restructures code)
  • Tests (You added tests for code that already exists, or your new feature included in this PR)
  • Documentation Updates
  • Release

Did you update CHANGELOG.md?

  • Yes
  • No, this change does not impact library users

Test Plan

  1. Verify CI passes on Python 3.9, 3.10, 3.11, 3.12, 3.13, and 3.14
  2. Verify poetry install works correctly

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 25, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 393a39d and 571a8bf.

📒 Files selected for processing (1)
  • CHANGELOG.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • CHANGELOG.md

Walkthrough

This PR drops Python 3.8 support and raises the minimum Python requirement to 3.9. CI workflow matrices and job environments were updated to remove 3.8, release workflow Python for Poetry was bumped to 3.9, pyproject.toml constraints were tightened, and README/CHANGELOG were updated.

Changes

Cohort / File(s) Summary
CI Workflow Updates
.github/workflows/faucet_test.yml, .github/workflows/integration_test.yml, .github/workflows/unit_test.yml
Removed Python 3.8 from job matrices and environment settings; test matrices now cover 3.9–3.14.
Release Workflow
.github/workflows/release.yml
Bumped Python used for the Poetry installation step from 3.8 to 3.9; minor whitespace edit in a Slack message line.
Project Configuration
pyproject.toml
Updated project.requires-python to >=3.9 and tool.poetry.dependencies.python to >=3.9,<4.0; collapsed conditional dev pydoclint entries into a single ^0.5.13.
Documentation
CHANGELOG.md, README.md
Added BREAKING CHANGE note about dropping Python 3.8; updated README references from 3.8 to 3.9.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • Patel-Raj11
  • pdp2121

Poem

🐰
I hopped from old 3.8 sod,
Found 3.9 fields and gave a nod,
Tests now dance on fresher ground,
Lint and release — the beats resound,
Little paws, a quieter log.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Drop support for Python 3.8' clearly and concisely summarizes the main change in the pull request—removing Python 3.8 support across all workflow files, configuration, and documentation.
Description check ✅ Passed The pull request description follows the required template structure with all essential sections completed: high-level overview, context of change, type of change (breaking change selected), CHANGELOG.md confirmation, and test plan.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch drop-python-3.8-support

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Patel-Raj11
Patel-Raj11 previously approved these changes Feb 25, 2026
CHANGELOG.md Outdated
Comment on lines 10 to 12
### Changed

- [Breaking change] Dropped support for Python 3.8 (EOL October 2024). The minimum supported Python version is now 3.9.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
### Changed
- [Breaking change] Dropped support for Python 3.8 (EOL October 2024). The minimum supported Python version is now 3.9.
### Breaking Changes
- Dropped support for Python 3.8 (EOL October 2024). The minimum supported Python version is now 3.9.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@mvadari Updated the changelog based on your suggestion, but used the format we’ve followed before (e.g., ### BREAKING CHANGE).

@kuan121 kuan121 force-pushed the drop-python-3.8-support branch from 393a39d to 571a8bf Compare February 25, 2026 17:23
@kuan121 kuan121 merged commit 3c09d95 into main Feb 25, 2026
15 checks passed
@kuan121 kuan121 deleted the drop-python-3.8-support branch February 25, 2026 20:10
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.

3 participants