Skip to content

Drop Python 3.9 support, require Python 3.10+#103

Open
Copilot wants to merge 2 commits intomainfrom
copilot/remove-python-3-9-support
Open

Drop Python 3.9 support, require Python 3.10+#103
Copilot wants to merge 2 commits intomainfrom
copilot/remove-python-3-9-support

Conversation

Copy link
Copy Markdown

Copilot AI commented Nov 24, 2025

Updates minimum Python version from 3.9 to 3.10.

Changes

  • pyproject.toml: Python dependency ^3.9^3.10, ruff target py39py310
  • CI/CD: Removed Python 3.9 from GitHub Actions and Travis CI test matrices
  • README: Updated requirements section
  • Linting: Added UP007 and UP038 to ruff ignore list to preserve existing Optional[X] and isinstance((X, Y)) patterns
Original prompt

This section details on the original issue you should resolve

<issue_title>Python 3.9のサポートを廃止する</issue_title>
<issue_description></issue_description>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

- Updated pyproject.toml: Changed Python requirement from ^3.9 to ^3.10
- Updated ruff target-version from py39 to py310
- Added UP007 and UP038 to ruff ignore list to maintain code style
- Updated GitHub Actions workflow: Removed Python 3.9 from test matrix
- Updated Travis CI config: Removed Python 3.9 from test matrix
- Updated README.md: Changed requirement from Python 3.9+ to Python 3.10+
- Updated poetry.lock to reflect new Python version requirement
- Removed comment about Python 3.9 from pyproject.toml

Co-authored-by: yuji38kwmt <6350027+yuji38kwmt@users.noreply.github.com>
Copilot AI changed the title [WIP] Remove support for Python 3.9 Drop Python 3.9 support, require Python 3.10+ Nov 24, 2025
Copilot AI requested a review from yuji38kwmt November 24, 2025 08:22
@yuji38kwmt yuji38kwmt marked this pull request as ready for review December 11, 2025 05:01
Copilot AI review requested due to automatic review settings December 11, 2025 05:01
@kci-pr-agent
Copy link
Copy Markdown

kci-pr-agent bot commented Dec 11, 2025

Title

Drop Python 3.9 support, require Python 3.10+


Description

  • CIテストマトリクスからPython3.9を除外

  • pyproject.tomlでPython要件を^3.10に更新

  • ruff target-versionをpy310に変更

  • ruff ignoreリストにUP007とUP038を追加


Changes walkthrough 📝

Relevant files
Configuration changes
lint-test.yml
テストマトリクスからPython3.9除外                                                                       

.github/workflows/lint-test.yml

  • GitHub ActionsのテストマトリクスからPython3.9を削除
+1/-1     
.travis.yml
Travis CIからPython3.9削除                                                                     

.travis.yml

  • Travis CIのテストマトリクスからPython3.9を削除
+0/-1     
pyproject.toml
Pythonバージョンとlint設定更新                                                                         

pyproject.toml

  • Python依存を^3.9から^3.10に変更
  • ruffのtarget-versionをpy39からpy310に更新
  • ruff ignoreリストにUP007とUP038を追加
  • +4/-3     
    Documentation
    README.md
    ドキュメント要件を3.10+に更新                                                                               

    README.md

    • 必要Pythonバージョンを3.9+から3.10+に更新
    +1/-1     

    Need help?
  • Type /help how to ... in the comments thread for any questions about PR-Agent usage.
  • Check out the documentation for more information.
  • @kci-pr-agent
    Copy link
    Copy Markdown

    kci-pr-agent bot commented Dec 11, 2025

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    🎫 Ticket compliance analysis ✅

    102 - PR Code Verified

    Compliant requirements:

    • Python 3.9のサポート廃止
    • pyproject.tomlのバージョン更新
    • READMEのRequirements更新
    • CI/CDマトリクスから3.9削除
    • ruff target-versionの更新
    • UP007, UP038のignore追加

    Requires further human verification:

    • CI/CD上でのテスト実行結果確認
    ⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ No major issues detected

    @kci-pr-agent
    Copy link
    Copy Markdown

    kci-pr-agent bot commented Dec 11, 2025

    PR Code Suggestions ✨

    No code suggestions found for the PR.

    Copy link
    Copy Markdown

    Copilot AI left a 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 drops support for Python 3.9 and sets the minimum required version to Python 3.10+, updating all related configuration files and CI/CD pipelines accordingly.

    • Updated Python dependency from ^3.9 to ^3.10 across the project
    • Removed Python 3.9 from test matrices in GitHub Actions and Travis CI
    • Added ruff ignore rules (UP007, UP038) to preserve existing code style patterns

    Reviewed changes

    Copilot reviewed 4 out of 5 changed files in this pull request and generated 1 comment.

    Show a summary per file
    File Description
    pyproject.toml Updated Python version requirement to ^3.10, changed ruff target to py310, added UP007/UP038 ignore rules, removed outdated comment about keep-runtime-typing
    poetry.lock Regenerated lock file with Poetry 1.8.5 for Python 3.10+, removed Python 3.9-specific dependency markers
    README.md Updated requirements documentation from Python 3.9+ to Python 3.10+
    .travis.yml Removed Python 3.9 from test matrix
    .github/workflows/lint-test.yml Removed Python 3.9 from test matrix

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

    @@ -127,7 +129,6 @@ convention = "google"
    # 以下のエラーが発生しないようにする。
    Copy link

    Copilot AI Dec 11, 2025

    Choose a reason for hiding this comment

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

    The comment that was removed stated that keep-runtime-typing would no longer be necessary once Python 3.9 support is dropped. However, the setting is still being kept. The comment should be updated rather than removed to explain that the setting is now being maintained for code style consistency rather than Python 3.9 compatibility. Consider updating the comment to reflect the current reasoning, such as: "既存のコードスタイル(Optional[X]など)を維持するため、この設定を使用する" (Using this setting to maintain existing code style such as Optional[X]).

    Suggested change
    # 以下のエラーが発生しないようにする。
    # 既存のコードスタイル(Optional[X]など)を維持するため、この設定を使用する

    Copilot uses AI. Check for mistakes.
    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.

    Python 3.9のサポートを廃止する

    3 participants