Build CPython 3.14 wheels

This commit is contained in:
Edgar Ramírez Mondragón 2025-09-30 11:58:46 -06:00 committed by Daniele Varrazzo
parent 898d40ee20
commit 0f1501d897
4 changed files with 20 additions and 13 deletions

View File

@ -66,7 +66,7 @@ jobs:
matrix: matrix:
platform: [manylinux, musllinux] platform: [manylinux, musllinux]
arch: [x86_64, aarch64, ppc64le] arch: [x86_64, aarch64, ppc64le]
pyver: [cp39, cp310, cp311, cp312, cp313] pyver: [cp39, cp310, cp311, cp312, cp313, cp314]
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
@ -83,8 +83,9 @@ jobs:
key: libpq-${{ env.LIBPQ_VERSION }}-${{ matrix.platform }}-${{ matrix.arch }} key: libpq-${{ env.LIBPQ_VERSION }}-${{ matrix.platform }}-${{ matrix.arch }}
- name: Build wheels - name: Build wheels
uses: pypa/cibuildwheel@v2.23.3 uses: pypa/cibuildwheel@v3.2.0
env: env:
CIBW_SKIP: "cp31?t-*"
CIBW_MANYLINUX_X86_64_IMAGE: manylinux2014 CIBW_MANYLINUX_X86_64_IMAGE: manylinux2014
CIBW_MANYLINUX_I686_IMAGE: manylinux2014 CIBW_MANYLINUX_I686_IMAGE: manylinux2014
CIBW_MANYLINUX_AARCH64_IMAGE: manylinux2014 CIBW_MANYLINUX_AARCH64_IMAGE: manylinux2014
@ -140,7 +141,7 @@ jobs:
matrix: matrix:
# These archs require an Apple M1 runner: [arm64, universal2] # These archs require an Apple M1 runner: [arm64, universal2]
arch: [x86_64, arm64] arch: [x86_64, arm64]
pyver: [cp39, cp310, cp311, cp312, cp313] pyver: [cp39, cp310, cp311, cp312, cp313, cp314]
steps: steps:
- name: Checkout repos - name: Checkout repos
@ -153,8 +154,9 @@ jobs:
key: libpq-${{ env.LIBPQ_VERSION }}-macos-${{ matrix.arch }} key: libpq-${{ env.LIBPQ_VERSION }}-macos-${{ matrix.arch }}
- name: Build wheels - name: Build wheels
uses: pypa/cibuildwheel@v2.23.3 uses: pypa/cibuildwheel@v3.2.0
env: env:
CIBW_SKIP: "cp31?t-*"
CIBW_BUILD: ${{matrix.pyver}}-macosx_${{matrix.arch}} CIBW_BUILD: ${{matrix.pyver}}-macosx_${{matrix.arch}}
CIBW_ARCHS_MACOS: ${{matrix.arch}} CIBW_ARCHS_MACOS: ${{matrix.arch}}
MACOSX_ARCHITECTURE: ${{matrix.arch}} MACOSX_ARCHITECTURE: ${{matrix.arch}}
@ -184,7 +186,7 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
arch: [win_amd64] arch: [win_amd64]
pyver: [cp39, cp310, cp311, cp312, cp313] pyver: [cp39, cp310, cp311, cp312, cp313, cp314]
package_name: [psycopg2, psycopg2-binary] package_name: [psycopg2, psycopg2-binary]
defaults: defaults:
@ -223,8 +225,9 @@ jobs:
if: ${{ matrix.package_name != 'psycopg2' }} if: ${{ matrix.package_name != 'psycopg2' }}
- name: Build wheels - name: Build wheels
uses: pypa/cibuildwheel@v2.23.3 uses: pypa/cibuildwheel@v3.2.0
env: env:
CIBW_SKIP: "cp31?t-*"
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite" # cache vcpkg VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite" # cache vcpkg
CIBW_BUILD: ${{matrix.pyver}}-${{matrix.arch}} CIBW_BUILD: ${{matrix.pyver}}-${{matrix.arch}}
CIBW_ARCHS_WINDOWS: AMD64 x86 CIBW_ARCHS_WINDOWS: AMD64 x86

View File

@ -16,18 +16,20 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
include: include:
- {python: "3.9", postgres: "14"} - {python: "3.9", postgres: "13"}
- {python: "3.10", postgres: "15"} - {python: "3.10", postgres: "14"}
- {python: "3.11", postgres: "16"} - {python: "3.11", postgres: "15"}
- {python: "3.12", postgres: "17"} - {python: "3.12", postgres: "16"}
- {python: "3.13", postgres: "18"} - {python: "3.13", postgres: "17"}
- {python: "3.14", postgres: "18"}
# Opposite extremes of the supported Py/PG range, other architecture # Opposite extremes of the supported Py/PG range, other architecture
- {python: "3.9", postgres: "18", architecture: "x86"} - {python: "3.9", postgres: "18", architecture: "x86"}
- {python: "3.10", postgres: "17", architecture: "x86"} - {python: "3.10", postgres: "17", architecture: "x86"}
- {python: "3.11", postgres: "16", architecture: "x86"} - {python: "3.11", postgres: "16", architecture: "x86"}
- {python: "3.12", postgres: "15", architecture: "x86"} - {python: "3.12", postgres: "15", architecture: "x86"}
- {python: "3.13", postgres: "13", architecture: "x86"} - {python: "3.13", postgres: "14", architecture: "x86"}
- {python: "3.14", postgres: "13", architecture: "x86"}
env: env:
PSYCOPG2_TESTDB: postgres PSYCOPG2_TESTDB: postgres
@ -70,6 +72,7 @@ jobs:
- uses: actions/setup-python@v5 - uses: actions/setup-python@v5
with: with:
python-version: ${{ matrix.python }} python-version: ${{ matrix.python }}
allow-prereleases: true
- name: Run tests - name: Run tests
env: env:
MATRIX_PYTHON: ${{ matrix.python }} MATRIX_PYTHON: ${{ matrix.python }}

View File

@ -56,6 +56,7 @@ Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11 Programming Language :: Python :: 3.11
Programming Language :: Python :: 3.12 Programming Language :: Python :: 3.12
Programming Language :: Python :: 3.13 Programming Language :: Python :: 3.13
Programming Language :: Python :: 3.14
Programming Language :: Python :: 3 :: Only Programming Language :: Python :: 3 :: Only
Programming Language :: Python :: Implementation :: CPython Programming Language :: Python :: Implementation :: CPython
Programming Language :: C Programming Language :: C

View File

@ -1,5 +1,5 @@
[tox] [tox]
envlist = {3.9,3.10,3.11,3.12,3.13} envlist = {3.9,3.10,3.11,3.12,3.13,3.14}
[testenv] [testenv]
commands = make check commands = make check