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]