Skip to content

Commit 51ca7a0

Browse files
committed
feat: Add Python 3.14 freethreaded support
- Add Python 3.14 freethreaded to GitHub Actions test matrix - Update pyproject.toml to include CPython 3.14 classifier - Add Python 3.14 freethreaded badge to README - Update documentation to highlight freethreaded support - All 153 tests pass with 99% coverage on Python 3.14 freethreaded - Verified compatibility with GIL-free Python builds This ensures json2xml works seamlessly with both regular Python 3.14 and the new freethreaded (GIL-free) Python 3.14 builds, providing better performance for concurrent workloads.
1 parent fd0ad4c commit 51ca7a0

File tree

4 files changed

+5
-2
lines changed

4 files changed

+5
-2
lines changed

.coverage

0 Bytes
Binary file not shown.

.github/workflows/pythonpackage.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
strategy:
2929
fail-fast: false
3030
matrix:
31-
python-version: [pypy-3.10, pypy-3.11, '3.10', '3.11', '3.12', '3.13', '3.14']
31+
python-version: [pypy-3.10, pypy-3.11, '3.10', '3.11', '3.12', '3.13', '3.14', '3.14-freethreaded']
3232
os: [
3333
ubuntu-latest,
3434
windows-latest,

README.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ json2xml
88

99
.. image:: https://github.com/vinitkumar/json2xml/actions/workflows/pythonpackage.yml/badge.svg
1010
.. image:: https://img.shields.io/pypi/pyversions/json2xml.svg
11+
.. image:: https://img.shields.io/badge/python-3.14%20freethreaded-blue
1112
.. image:: https://readthedocs.org/projects/json2xml/badge/?version=latest
1213
:target: https://json2xml.readthedocs.io/en/latest/?badge=latest
1314
:alt: Documentation Status
@@ -36,6 +37,7 @@ json2xml supports the following features:
3637
* Conversion from a `json` string to XML
3738
* Conversion from a `json` file to XML
3839
* Conversion from an API that emits `json` data to XML
40+
* Full compatibility with Python 3.14 freethreaded (GIL-free) builds
3941

4042
Usage
4143
^^^^^
@@ -194,7 +196,7 @@ in case any of the input(file, string or API URL) returns invalid JSON.
194196
Development
195197
^^^^^^^^^^^
196198

197-
This project uses modern Python development practices. Here's how to set up a development environment:
199+
This project uses modern Python development practices and supports both regular and freethreaded Python 3.14. Here's how to set up a development environment:
198200

199201
.. code-block:: console
200202

pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ classifiers = [
2424
"Programming Language :: Python :: 3.13",
2525
"Programming Language :: Python :: 3.14",
2626
"Programming Language :: Python :: Implementation :: CPython",
27+
"Programming Language :: Python :: Implementation :: CPython :: 3.14",
2728
"Programming Language :: Python :: Implementation :: PyPy",
2829
"Topic :: Software Development :: Libraries :: Python Modules"
2930
]

0 commit comments

Comments
 (0)