diff --git a/.github/workflows/ci-tests.yml b/.github/workflows/ci-tests.yml index a30842a2..5e8baa09 100644 --- a/.github/workflows/ci-tests.yml +++ b/.github/workflows/ci-tests.yml @@ -20,12 +20,13 @@ on: jobs: tests: - name: "Test Python ${{ matrix.version }} session= ${{ matrix.session }}" + name: "Test session=${{ matrix.session }} Python=${{ matrix.python-version }}" runs-on: ubuntu-latest strategy: fail-fast: false matrix: session: ["tests", "doctests-docs", "doctests-api"] + python-version: ["3.12", "3.13"] defaults: run: shell: bash -l {0} @@ -42,7 +43,7 @@ jobs: with: miniforge-version: latest activate-environment: testenv - python-version: ${{ matrix.version }} + python-version: ${{ matrix.python-version }} channels: conda-forge show-channel-urls: true diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 95e97799..f109aaac 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -33,7 +33,7 @@ repos: types_or: [asciidoc, python, markdown, rst] additional_dependencies: [tomli] -- repo: https://github.com/psf/black +- repo: https://github.com/psf/black-pre-commit-mirror rev: 25.9.0 hooks: - id: black @@ -47,7 +47,7 @@ repos: types: [file, python] - repo: https://github.com/pycqa/isort - rev: 6.0.1 + rev: 7.0.0 hooks: - id: isort types: [file, python] diff --git a/pyproject.toml b/pyproject.toml index a281d959..0c6ad77b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,7 +14,7 @@ authors = [ {name = "Patrick Peglar", email = "patrick.peglar@metoffice.gov.uk"}, ] description = "Abstract NetCDF data objects, providing fast data transfer between analysis packages." -requires-python = ">=3.7" +requires-python = ">=3.7, <3.14" keywords = [ "cf-metadata", "data-analysis", @@ -39,6 +39,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Topic :: Scientific/Engineering", ] dynamic = [ diff --git a/requirements/readthedocs.yml b/requirements/readthedocs.yml index 8c6e5125..b7c80df8 100644 --- a/requirements/readthedocs.yml +++ b/requirements/readthedocs.yml @@ -12,7 +12,7 @@ dependencies: - pip - pydata-sphinx-theme - pytest - - python<3.13 + - python<3.14 - sphinx - sphinxcontrib-napoleon - sphinx-copybutton diff --git a/tests/integration/test_xarray_load_and_save_equivalence.py b/tests/integration/test_xarray_load_and_save_equivalence.py index a9148133..fce40538 100644 --- a/tests/integration/test_xarray_load_and_save_equivalence.py +++ b/tests/integration/test_xarray_load_and_save_equivalence.py @@ -68,7 +68,7 @@ def test_save_direct_vs_viancdata(standard_testcase, tmp_path): # Re-save from Xarray temp_direct_savepath = tmp_path / "temp_save_xarray.nc" - xrds.to_netcdf(temp_direct_savepath) + xrds.to_netcdf(temp_direct_savepath, engine="netcdf4") # Save same, via ncdata temp_ncdata_savepath = tmp_path / "temp_save_xarray_via_ncdata.nc" ncds_fromxr = from_xarray(xrds)