feat: support python 3.14 by shenxianpeng · Pull Request #167 · cpp-linter/cpp-linter · GitHub
Skip to content

feat: support python 3.14#167

Merged
2bndy5 merged 2 commits into
mainfrom
feature/py314
Oct 27, 2025
Merged

feat: support python 3.14#167
2bndy5 merged 2 commits into
mainfrom
feature/py314

Conversation

@shenxianpeng

@shenxianpeng shenxianpeng commented Oct 7, 2025

Copy link
Copy Markdown
Member

Python 3.14 has been released today, so let's start supporting it.

I kept Python 3.9 even though it's EOL, since some users (including myself on AIX 7.2 🙂) are still using it.

Summary by CodeRabbit

  • New Features

    • Added support for Python 3.14.
  • Tests

    • Continuous integration now runs against Python 3.14 to ensure compatibility.
  • Chores

    • Updated project metadata to include Python 3.14 in supported versions.
    • Adjusted tooling defaults to target Python 3.14.

@github-actions github-actions Bot added the enhancement New feature or request label Oct 7, 2025
@coderabbitai

coderabbitai Bot commented Oct 7, 2025

Copy link
Copy Markdown
Contributor

@shenxianpeng

Copy link
Copy Markdown
Member Author

It seems we need to wait for a new release of libgit2/pygit2@ff64e61

@2bndy5

2bndy5 commented Oct 7, 2025

Copy link
Copy Markdown
Contributor

I also raised awareness of their ability to deploy future-compatible wheels using cffi v2, cibuildwheels, and setuptools. See libgit2/pygit2#1418 (comment). We'll see if they are intereseted...

@2bndy5

2bndy5 commented Oct 20, 2025

Copy link
Copy Markdown
Contributor

FWIW, I've been diving into the pygit2 source code... They cannot deploy future-compatible wheels because some of pygit2 C sources rely parts of the Python C API that are not exposed in its Limited API. Note, Python C extensions must only use the Python C Limited API to guarantee future compatibility.

This might change in the future when Python 3.13 becomes the minimum supported Python version, but the as_buffer() functions are not likely become part of the Python C Limited API.

Aside from that, I have submitted patches to pygit2 to improve CI and support Python free-threaded variants (3.14t). Pygit2 v1.19.0 should be out soon.

@codecov

codecov Bot commented Oct 27, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.26%. Comparing base (4d2df05) to head (a742ace).
⚠️ Report is 13 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #167   +/-   ##
=======================================
  Coverage   98.26%   98.26%           
=======================================
  Files          23       23           
  Lines        1899     1899           
=======================================
  Hits         1866     1866           
  Misses         33       33           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@2bndy5

2bndy5 commented Oct 27, 2025

Copy link
Copy Markdown
Contributor

@2bndy5 2bndy5 merged commit f416f75 into main Oct 27, 2025
69 of 70 checks passed
@2bndy5 2bndy5 deleted the feature/py314 branch October 27, 2025 21:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants