diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 1eb06c32d..d529d47fd 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -112,17 +112,17 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest]
- python-version: [3.9, '3.10', 3.11, 3.12]
+ python-version: [3.9, '3.10', 3.11, 3.12, 3.13]
include:
# macos-latest is an Arm64 image
- os: macos-latest
python-version: 3.9
- os: macos-latest
- python-version: 3.12
+ python-version: 3.13
- os: windows-latest
python-version: 3.9
- os: windows-latest
- python-version: 3.12
+ python-version: 3.13
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
@@ -184,7 +184,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest]
- python-version: [3.9, 3.12]
+ python-version: [3.9, 3.13]
steps:
- uses: actions/checkout@v4
with:
@@ -282,28 +282,32 @@ jobs:
with:
name: ubuntu-latest-3.12
path: /tmp/u312
+ - uses: actions/download-artifact@v4
+ with:
+ name: ubuntu-latest-3.13
+ path: /tmp/u313
- uses: actions/download-artifact@v4
with:
name: macos-latest-3.9
path: /tmp/m39
- uses: actions/download-artifact@v4
with:
- name: macos-latest-3.12
- path: /tmp/m312
+ name: macos-latest-3.13
+ path: /tmp/m313
- uses: actions/download-artifact@v4
with:
name: windows-latest-3.9
path: /tmp/w39
- uses: actions/download-artifact@v4
with:
- name: windows-latest-3.12
- path: /tmp/w312
+ name: windows-latest-3.13
+ path: /tmp/w313
- name: Install Dependencies
run: pip install -U coverage coveralls diff-cover
shell: bash
- name: Combined Deprecation Messages
run: |
- sort -f -u /tmp/u39/ml.dep /tmp/u310/ml.dep /tmp/u311/ml.dep /tmp/u312/ml.dep /tmp/m39/ml.dep /tmp/m312/ml.dep /tmp/w39/ml.dep /tmp/w312/ml.dep || true
+ sort -f -u /tmp/u39/ml.dep /tmp/u310/ml.dep /tmp/u311/ml.dep /tmp/u312/ml.dep /tmp/m39/ml.dep /tmp/m313/ml.dep /tmp/w39/ml.dep /tmp/w313/ml.dep || true
shell: bash
- name: Coverage combine
run: coverage3 combine /tmp/u39/ml.dat
diff --git a/pyproject.toml b/pyproject.toml
index dd917cc01..f84e39f65 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
[tool.black]
line-length = 100
-target-version = ['py39', 'py310', 'py311', 'py312']
+target-version = ['py39', 'py310', 'py311', 'py312', 'py313']
[tool.pylint.main]
extension-pkg-allow-list = [
diff --git a/releasenotes/notes/0.8/py38_end_of_support-fa1fdea6ea02b502.yaml b/releasenotes/notes/0.8/py38_end_of_support-fa1fdea6ea02b502.yaml
index f039fa74e..4500de39b 100644
--- a/releasenotes/notes/0.8/py38_end_of_support-fa1fdea6ea02b502.yaml
+++ b/releasenotes/notes/0.8/py38_end_of_support-fa1fdea6ea02b502.yaml
@@ -2,5 +2,6 @@
upgrade:
- |
Removed support for using Qiskit Machine Learning with Python 3.8 to reflect
- the EOL of Python 3.8 in October 2024 (PEP 569). To continue using Qiskit Machine Learning, you
- must upgrade to a Python: 3.9 or above if you are using older versions of Python.
+ the EOL of Python 3.8 in October 2024 (`PEP 569 `__). To
+ continue using Qiskit Machine Learning, you must upgrade to a Python: 3.9 or above if you are
+ using older versions of Python.
diff --git a/releasenotes/notes/0.8/py_3_12_support-6ac8bce3652299fb.yaml b/releasenotes/notes/0.8/py_3_12_support-6ac8bce3652299fb.yaml
index 4bb1ff7d9..f4f0ae685 100644
--- a/releasenotes/notes/0.8/py_3_12_support-6ac8bce3652299fb.yaml
+++ b/releasenotes/notes/0.8/py_3_12_support-6ac8bce3652299fb.yaml
@@ -1,4 +1,5 @@
---
features:
- |
- Added support for using Qiskit Machine Learning with Python 3.12.
+ Added support for using Qiskit Machine Learning with Python 3.12
+ (`PEP 693 `__).
diff --git a/releasenotes/notes/py38_end_of_support-fa1fdea6ea02b502.yaml b/releasenotes/notes/py38_end_of_support-fa1fdea6ea02b502.yaml
new file mode 100644
index 000000000..4500de39b
--- /dev/null
+++ b/releasenotes/notes/py38_end_of_support-fa1fdea6ea02b502.yaml
@@ -0,0 +1,7 @@
+---
+upgrade:
+ - |
+ Removed support for using Qiskit Machine Learning with Python 3.8 to reflect
+ the EOL of Python 3.8 in October 2024 (`PEP 569 `__). To
+ continue using Qiskit Machine Learning, you must upgrade to a Python: 3.9 or above if you are
+ using older versions of Python.
diff --git a/releasenotes/notes/py_3_13_support-ab5e36821d346044.yaml b/releasenotes/notes/py_3_13_support-ab5e36821d346044.yaml
new file mode 100644
index 000000000..1e6749ac6
--- /dev/null
+++ b/releasenotes/notes/py_3_13_support-ab5e36821d346044.yaml
@@ -0,0 +1,7 @@
+---
+features:
+ - |
+ Added support for using Qiskit Machine Learning with Python 3.13 following the release of
+ Python 3.13 (final) in October 2024 (`PEP 719 `__). To
+ access the latest features of Python 3.13, you may update your Qiskit Machine Learning
+ environment.
diff --git a/setup.py b/setup.py
index ea5e885e4..d2ff4818d 100644
--- a/setup.py
+++ b/setup.py
@@ -65,7 +65,8 @@
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
- "Topic :: Scientific/Engineering",
+ "Programming Language :: Python :: 3.13",
+ "Topic :: Scientific/Engineering"
],
keywords="qiskit sdk quantum machine learning ml",
packages=setuptools.find_packages(
diff --git a/tox.ini b/tox.ini
index f8f98c294..508192e22 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,7 +1,7 @@
[tox]
# Sets this min.version because of differences with env_tmp_dir env.
minversion = 4.0.2
-envlist = py39, py310, py311, py312, lint, gpu, gpu-amd
+envlist = py39, py310, py311, py312, py313, lint, gpu, gpu-amd
skipsdist = True
[testenv]