diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index dc47fb57..203d09c0 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -97,13 +97,11 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.10', '3.11', '3.12', '3.13'] - gdal-version: ['3.11.4'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14'] + gdal-version: ['3.11.5'] include: - - python-version: '3.13' + - python-version: '3.14' gdal-version: 'latest' - - python-version: '3.9' - gdal-version: '3.11.4' - python-version: '3.9' gdal-version: '3.10.3' - python-version: '3.9' @@ -159,7 +157,7 @@ jobs: # macos-15-intel is OSX Intel # macos-14 is OSX Arm64 os: [macos-15-intel, macos-14] - python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14'] include: - os: ubuntu-latest python-version: '*' diff --git a/pyproject.toml b/pyproject.toml index c4f3e0f1..47c05c2c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ requires = [ "setuptools>=67.8", "wheel", - "cython~=3.0.2", + "cython~=3.1.0", "numpy>=2" ] build-backend = "setuptools.build_meta" diff --git a/setup.py b/setup.py index 92316c03..4f204654 100755 --- a/setup.py +++ b/setup.py @@ -207,9 +207,9 @@ elif cpp11_flag not in eca: cpp_ext_options['extra_compile_args'] = eca # Configure optional Cython coverage. -cythonize_options = {"language_level": sys.version_info[0]} +cythonize_options = {"language_level": sys.version_info[0], "compiler_directives": {"freethreading_compatible": True}} if os.environ.get('CYTHON_COVERAGE'): - cythonize_options['compiler_directives'] = {'linetrace': True} + cythonize_options['compiler_directives'].update(linetrace=True) cythonize_options['annotate'] = True ext_options['define_macros'].extend( [('CYTHON_TRACE', '1'), ('CYTHON_TRACE_NOGIL', '1')]) @@ -302,6 +302,7 @@ setup_args = dict( "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Programming Language :: Python :: 3", "Topic :: Multimedia :: Graphics :: Graphics Conversion", "Topic :: Scientific/Engineering :: GIS",