From 51e80ac801b2b0a11eace4fc430a189d31b16097 Mon Sep 17 00:00:00 2001 From: "Simms, Andrew" Date: Tue, 9 Jun 2026 14:56:49 -0600 Subject: [PATCH 1/9] Actions: Add python 3.13 to test matricies --- .github/workflows/main.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index a58f3927..190ae5dd 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,4 +1,4 @@ -name: Py 3.10, 3.11, 3.12 | Windows Mac Linux +name: Py 3.10, 3.11, 3.12, 3.13 | Windows Mac Linux on: pull_request: @@ -207,7 +207,7 @@ jobs: fail-fast: false matrix: os: ${{fromJson(needs.set-os.outputs.matrix_os)}} - python-version: ['3.10', '3.11', '3.12'] + python-version: ['3.10', '3.11', '3.12', '3.13'] env: PYTHON_VER: ${{ matrix.python-version }} @@ -265,7 +265,7 @@ jobs: fail-fast: false matrix: os: ${{fromJson(needs.set-os.outputs.matrix_os)}} - python-version: ['3.10', '3.11', '3.12'] + python-version: ['3.10', '3.11', '3.12', '3.13'] steps: - name: Set up Python ${{ matrix.python-version }} @@ -335,7 +335,7 @@ jobs: fail-fast: false matrix: os: ${{fromJson(needs.set-os.outputs.matrix_os)}} - python-version: ['3.10', '3.11', '3.12'] + python-version: ['3.10', '3.11', '3.12', '3.13'] steps: - uses: actions/checkout@v6 @@ -460,7 +460,7 @@ jobs: matrix: module: [wave, tidal, river, dolfyn, power, loads, mooring, acoustics, utils] - python-version: ['3.12'] + python-version: ['3.12', '3.13'] steps: - uses: actions/checkout@v6 From b5afa1bfb98db031fe47864f86725bf054b3c73a Mon Sep 17 00:00:00 2001 From: "Simms, Andrew" Date: Tue, 9 Jun 2026 14:57:12 -0600 Subject: [PATCH 2/9] Conda: Add python 3.13 --- environment-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environment-dev.yml b/environment-dev.yml index 3f845390..e624a728 100644 --- a/environment-dev.yml +++ b/environment-dev.yml @@ -3,7 +3,7 @@ channels: - conda-forge - defaults dependencies: - - python>=3.10,<3.13 + - python>=3.10,<3.14 - pip - numpy>=2.0.0 - pandas>=2.2.2 From 03cd4c365f48e1c7f03f4157ebe7dcbd139924ed Mon Sep 17 00:00:00 2001 From: "Simms, Andrew" Date: Tue, 9 Jun 2026 14:57:29 -0600 Subject: [PATCH 3/9] Actions: Add python 3.13 to wheel build test --- .github/workflows/test-wheel-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-wheel-build.yml b/.github/workflows/test-wheel-build.yml index dd3ed597..46ecbbe8 100644 --- a/.github/workflows/test-wheel-build.yml +++ b/.github/workflows/test-wheel-build.yml @@ -16,7 +16,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ['3.10', '3.11', '3.12'] + python-version: ['3.10', '3.11', '3.12', '3.13'] steps: - uses: actions/checkout@v6 From 6a534a1dc27aecf324e445dfdc6b6c0c2497cdc9 Mon Sep 17 00:00:00 2001 From: "Simms, Andrew" Date: Tue, 9 Jun 2026 14:57:46 -0600 Subject: [PATCH 4/9] Docs: Add python 3.13 to README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fcd51018..ebe2960a 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ See the [MHKiT documentation](https://mhkit-software.github.io/MHKiT) for more i ## Installation -[MHKiT-Python](https://github.com/MHKiT-Software/MHKiT-Python) requires [Python (3.10-3.12)](https://www.python.org/). +[MHKiT-Python](https://github.com/MHKiT-Software/MHKiT-Python) requires [Python (3.10-3.13)](https://www.python.org/). See [installation instructions](https://mhkit-software.github.io/MHKiT/installation.html) for more information. From 6c90bc0a96417ab1946133b2be05fcce076555d7 Mon Sep 17 00:00:00 2001 From: "Simms, Andrew" Date: Tue, 9 Jun 2026 15:08:26 -0600 Subject: [PATCH 5/9] Actions: run optional pip tests on latest version of python only --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 190ae5dd..04e0beed 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -460,7 +460,7 @@ jobs: matrix: module: [wave, tidal, river, dolfyn, power, loads, mooring, acoustics, utils] - python-version: ['3.12', '3.13'] + python-version: ['3.13'] steps: - uses: actions/checkout@v6 From 853a9a19b21d3f52e19cbaab1194758e66ea3dcc Mon Sep 17 00:00:00 2001 From: "Simms, Andrew" Date: Tue, 9 Jun 2026 16:26:17 -0600 Subject: [PATCH 6/9] Actions: Temporarily run python 3.13 changes on all operating systems --- .github/workflows/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 04e0beed..9ae9a486 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -36,7 +36,8 @@ jobs: steps: - id: set-matrix run: | - if [[ "${{ github.event_name }}" == "pull_request" && "${{ github.base_ref }}" == "develop" ]]; then + # TEMP: run all OSes for feat_add_python_3_13_support PR - remove after merge + if [[ "${{ github.event_name }}" == "pull_request" && "${{ github.base_ref }}" == "develop" && "${{ github.head_ref }}" != "feat_add_python_3_13_support" ]]; then echo "matrix_os=[ \"ubuntu-latest\"]" >> $GITHUB_OUTPUT else echo "matrix_os=[\"windows-latest\", \"ubuntu-latest\", \"macos-latest\"]" >> $GITHUB_OUTPUT From f97f841587b1187e9e0c0b44a20c1991bb437fc1 Mon Sep 17 00:00:00 2001 From: "Simms, Andrew" Date: Tue, 9 Jun 2026 16:38:58 -0600 Subject: [PATCH 7/9] Actions: Update setup-miniconda to v4 --- .github/workflows/main.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 9ae9a486..4a3ae836 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -80,7 +80,7 @@ jobs: uses: actions/checkout@v6 - name: Setup Miniconda - uses: conda-incubator/setup-miniconda@v3 + uses: conda-incubator/setup-miniconda@v4 with: miniconda-version: ${{ env.CONDA_MINICONDA_VERSION }} auto-update-conda: ${{ env.CONDA_AUTO_UPDATE_CONDA }} @@ -125,7 +125,7 @@ jobs: uses: actions/checkout@v6 - name: Setup Miniconda - uses: conda-incubator/setup-miniconda@v3 + uses: conda-incubator/setup-miniconda@v4 with: miniconda-version: ${{ env.CONDA_MINICONDA_VERSION }} auto-update-conda: ${{ env.CONDA_AUTO_UPDATE_CONDA }} @@ -168,7 +168,7 @@ jobs: uses: actions/checkout@v6 - name: Setup Miniconda - uses: conda-incubator/setup-miniconda@v3 + uses: conda-incubator/setup-miniconda@v4 with: miniconda-version: ${{ env.CONDA_MINICONDA_VERSION }} auto-update-conda: ${{ env.CONDA_AUTO_UPDATE_CONDA }} @@ -216,7 +216,7 @@ jobs: - uses: actions/checkout@v6 - name: Setup Miniconda - uses: conda-incubator/setup-miniconda@v3 + uses: conda-incubator/setup-miniconda@v4 with: miniconda-version: ${{ env.CONDA_MINICONDA_VERSION }} auto-update-conda: ${{ env.CONDA_AUTO_UPDATE_CONDA }} @@ -342,7 +342,7 @@ jobs: - uses: actions/checkout@v6 - name: Setup Miniconda - uses: conda-incubator/setup-miniconda@v3 + uses: conda-incubator/setup-miniconda@v4 with: miniconda-version: ${{ env.CONDA_MINICONDA_VERSION }} auto-update-conda: ${{ env.CONDA_AUTO_UPDATE_CONDA }} @@ -561,7 +561,7 @@ jobs: uses: actions/checkout@v6 - name: Setup Miniconda - uses: conda-incubator/setup-miniconda@v3 + uses: conda-incubator/setup-miniconda@v4 with: miniconda-version: ${{ env.CONDA_MINICONDA_VERSION }} auto-update-conda: ${{ env.CONDA_AUTO_UPDATE_CONDA }} From 43be1c483a217a6995d326434f53ddc4616e8355 Mon Sep 17 00:00:00 2001 From: "Simms, Andrew" Date: Tue, 9 Jun 2026 17:38:42 -0600 Subject: [PATCH 8/9] Revert "Actions: Temporarily run python 3.13 changes on all operating systems" This reverts commit 853a9a19b21d3f52e19cbaab1194758e66ea3dcc. --- .github/workflows/main.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4a3ae836..4adb9779 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -36,8 +36,7 @@ jobs: steps: - id: set-matrix run: | - # TEMP: run all OSes for feat_add_python_3_13_support PR - remove after merge - if [[ "${{ github.event_name }}" == "pull_request" && "${{ github.base_ref }}" == "develop" && "${{ github.head_ref }}" != "feat_add_python_3_13_support" ]]; then + if [[ "${{ github.event_name }}" == "pull_request" && "${{ github.base_ref }}" == "develop" ]]; then echo "matrix_os=[ \"ubuntu-latest\"]" >> $GITHUB_OUTPUT else echo "matrix_os=[\"windows-latest\", \"ubuntu-latest\", \"macos-latest\"]" >> $GITHUB_OUTPUT From 25b132c92337d779f920cba8da40a70111a5a085 Mon Sep 17 00:00:00 2001 From: "Simms, Andrew" Date: Wed, 10 Jun 2026 09:22:07 -0600 Subject: [PATCH 9/9] Actions: Update download-artifact to latest v8 --- .github/workflows/main.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4adb9779..7ca82b44 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -237,7 +237,7 @@ jobs: pip install -e ".[all,dev]" --no-deps - name: Download data from artifact - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: data path: ~/.cache/mhkit @@ -286,7 +286,7 @@ jobs: uses: actions/checkout@v6 - name: Download data from artifact - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: data path: ~/.cache/mhkit @@ -363,13 +363,13 @@ jobs: pip install -e ".[all,dev]" --no-deps - name: Download Wave Hindcast data from artifact - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: wave-hindcast-data path: ~/.cache/mhkit/wave-hindcast - name: Download Wind Hindcast data from artifact - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: wind-hindcast-data path: ~/.cache/mhkit/wind-hindcast @@ -471,7 +471,7 @@ jobs: python-version: ${{ matrix.python-version }} - name: Download non-hindcast data - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: data path: ~/.cache/mhkit @@ -582,21 +582,21 @@ jobs: pip install -e ".[all,dev]" --no-deps - name: Download non-hindcast data - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: data path: ~/.cache/mhkit - name: Download Wave Hindcast data (if available) if: (needs.check-changes.outputs.should-run-hindcast == 'true') - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: wave-hindcast-data path: ~/.cache/mhkit/wave-hindcast - name: Download Wind Hindcast data (if available) if: (needs.check-changes.outputs.should-run-hindcast == 'true') - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: wind-hindcast-data path: ~/.cache/mhkit/wind-hindcast