diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 92f9fb73..35714d6b 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -34,7 +34,7 @@ jobs: strategy: matrix: os: [ ubuntu-latest, windows-latest ] - python-version: [ "3.12", "3.13" ] + python-version: [ "3.12", "3.13", "3.14" ] fail-fast: false runs-on: ${{ matrix.os }} steps: @@ -67,7 +67,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, windows-latest] - python-version: ['3.10', '3.11', '3.12', '3.13'] + python-version: ['3.10', '3.11', '3.12', '3.13', '3.14'] steps: - name: Checkout repo uses: actions/checkout@v4 @@ -82,18 +82,8 @@ jobs: - name: Verify pytest plugins run: python -m pytest --version - name: Install -us package from PyPI - run: | - if [[ "${{ matrix.python-version }}" == "3.13" ]]; then - # For Python 3.13, install newer tables first and ignore conflicts - pip install "tables>=3.10.1" - pip install policyengine-us --no-deps - # Install remaining dependencies manually - pip install click==8.1.3 pathlib pytest-dependency synthimpute tabulate - pip install policyengine-us-data --no-deps - else - python -m pip install policyengine-us - fi - shell: bash + # Python 3.14 blocked until tables 3.11 releases (PyTables/PyTables#1262) + run: python -m pip install policyengine-us - name: Run smoke tests only run: python -m pytest -m smoke --reruns 2 --reruns-delay 5 -v -s env: diff --git a/changelog_entry.yaml b/changelog_entry.yaml index e69de29b..06f19ed2 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -0,0 +1,4 @@ +- bump: minor + changes: + added: + - Python 3.14 support. diff --git a/setup.py b/setup.py index 31f4b569..15042b38 100644 --- a/setup.py +++ b/setup.py @@ -53,7 +53,7 @@ setup( name="policyengine-core", - version="3.23.4", + version="3.24.0", author="PolicyEngine", author_email="hello@policyengine.org", classifiers=[ @@ -65,6 +65,7 @@ "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Topic :: Scientific/Engineering :: Information Analysis", ], description="Core microsimulation engine enabling country-specific policy models.",