Skip to content

Commit

Permalink
Update to Python 3.13 (#77)
Browse files Browse the repository at this point in the history
* Update to Python 3.13 in envs & GHA workflows

Upgraded Python from version 3.12 to 3.13 across various YAML files. This
includes updates to development, RTD, and HPC environments, as well as GHA
pytest-with-coverage and sphinx-linkcheck workflows.

* Update to Python 3.13 for development and use

Changed Python version references from 3.12 to 3.13 in README and development
documentation to align with the latest Python development environment.
Updated example pytest output in dev docs accordingly.
  • Loading branch information
douglatornell authored Oct 27, 2024
1 parent 1625c65 commit 47471c1
Show file tree
Hide file tree
Showing 8 changed files with 22 additions and 24 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/pytest-with-coverage.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: [ '3.11', '3.12' ]
python-version: [ '3.11', '3.12', '3.13' ]
uses: UBC-MOAD/gha-workflows/.github/workflows/pytest-with-coverage.yaml@main
with:
python-version: ${{ matrix.python-version }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/sphinx-linkcheck.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
matrix:
# Need to specify Python version here because we use test env which gets its
# Python version via matrix
python-version: [ '3.12' ]
python-version: [ '3.13' ]
uses: UBC-MOAD/gha-workflows/.github/workflows/sphinx-linkcheck.yaml@main
with:
python-version: ${{ matrix.python-version }}
Expand Down
2 changes: 1 addition & 1 deletion README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ SalishSeaCast NEMO Command Processor
| | :target: https://github.com/SalishSeaCast/SalishSeaCmd/releases |
| | :alt: Releases |
| | .. image:: https://img.shields.io/python/required-version-toml?tomlFilePath=https://raw.githubusercontent.com/SalishSeaCast/SalishSeaCmd/main/pyproject.toml&logo=Python&logoColor=gold&label=Python |
| | :target: https://docs.python.org/3.12/ |
| | :target: https://docs.python.org/3.13/ |
| | :alt: Python Version from PEP 621 TOML |
| | .. image:: https://img.shields.io/github/issues/SalishSeaCast/SalishSeaCmd?logo=github |
| | :target: https://github.com/SalishSeaCast/SalishSeaCmd/issues |
Expand Down
33 changes: 16 additions & 17 deletions docs/development.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
| | :target: https://github.com/SalishSeaCast/SalishSeaCmd/releases |
| | :alt: Releases |
| | .. image:: https://img.shields.io/python/required-version-toml?tomlFilePath=https://raw.githubusercontent.com/SalishSeaCast/SalishSeaCmd/main/pyproject.toml&logo=Python&logoColor=gold&label=Python |
| | :target: https://docs.python.org/3.12/ |
| | :target: https://docs.python.org/3.13/ |
| | :alt: Python Version from PEP 621 TOML |
| | .. image:: https://img.shields.io/github/issues/SalishSeaCast/SalishSeaCmd?logo=github |
| | :target: https://github.com/SalishSeaCast/SalishSeaCmd/issues |
Expand Down Expand Up @@ -74,10 +74,10 @@ Python Versions
===============

.. image:: https://img.shields.io/python/required-version-toml?tomlFilePath=https://raw.githubusercontent.com/SalishSeaCast/SalishSeaCmd/main/pyproject.toml&logo=Python&logoColor=gold&label=Python
:target: https://docs.python.org/3.12/
:target: https://docs.python.org/3.13/
:alt: Python Version from PEP 621 TOML

The :kbd:`SalishSeaCmd` package is developed using `Python`_ 3.12.
The :kbd:`SalishSeaCmd` package is developed using `Python`_ 3.13.
The minimum supported Python version is 3.11.
The :ref:`SalishSeaCmdContinuousIntegration` workflow on GitHub ensures that the package
is tested for all versions of Python>=3.11.
Expand Down Expand Up @@ -328,7 +328,7 @@ The output looks something like:
( development: line 119) ok https://docs.conda.io/en/latest/miniconda.html
( development: line 119) ok https://docs.conda.io/en/latest/
(breaking_changes: line 102) ok https://calver.org/
( development: line 23) ok https://docs.python.org/3.12/
( development: line 23) ok https://docs.python.org/3.13/
( api: line 23) ok https://docs.python.org/3/library/constants.html#None
(breaking_changes: line 153) ok https://docs.python.org/3/library/constants.html#False
(run_description_file/3.6_yaml_file: line 446) ok https://docs.python.org/3/library/constants.html#True
Expand Down Expand Up @@ -427,24 +427,23 @@ The output looks something like:

.. code-block:: text
=============================== test session starts ================================
platform linux -- Python 3.12.7, pytest-8.3.3, pluggy-1.5.0
Using --randomly-seed=363797280
================================= test session starts ===================================
platform linux -- Python 3.13.0, pytest-8.3.3, pluggy-1.5.0
Using --randomly-seed=1698456346
rootdir: /media/doug/warehouse/MEOPAR/SalishSeaCmd
configfile: pytest.ini
plugins: cov-5.0.0, anyio-4.6.2.post1, randomly-3.15.0
plugins: randomly-3.15.0, cov-5.0.0, anyio-4.6.2.post1
collected 327 items
tests/test_split_results.py ................ [ 4%]
tests/test_prepare.py .............. [ 9%]
tests/test_api.py ...... [ 11%]
tests/test_run.py ...................................................................
.....................................................................................
.....................................................................................
............................... [ 92%]
....................... [100%]
tests/test_api.py ...... [ 1%]
tests/test_prepare.py .............. [ 6%]
tests/test_run.py .......................................................................
.........................................................................................
.........................................................................................
.......................................... [ 95%]
tests/test_split_results.py ................ [100%]
=============================== 327 passed in 2.53s ================================
================================= 327 passed in 0.93s ===================================
You can monitor what lines of code the test suite exercises using the `coverage.py`_ and `pytest-cov`_ tools with the command:

Expand Down
2 changes: 1 addition & 1 deletion envs/environment-dev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ dependencies:
- f90nml
- gitpython
- pip
- python=3.12
- python=3.13
- pyyaml

# For coding style, repo QA, and pkg management
Expand Down
2 changes: 1 addition & 1 deletion envs/environment-hpc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ dependencies:
- f90nml
- gitpython
- pip
- python=3.12
- python=3.13
- pyyaml

- pip:
Expand Down
2 changes: 1 addition & 1 deletion envs/environment-rtd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ channels:

dependencies:
- pip
- python=3.12
- python=3.13

# Sphinx and extensions we use
- sphinx=8.1.3
Expand Down
1 change: 0 additions & 1 deletion envs/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,5 @@ urllib3==2.2.3
userpath==1.7.0
virtualenv==20.27.0
wcwidth==0.2.13
wheel==0.44.0
zipp==3.20.2
zstandard==0.23.0

0 comments on commit 47471c1

Please sign in to comment.