diff --git a/.github/dependabot.yml b/.github/dependabot.yml index bd0b318..c019c6e 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -9,6 +9,7 @@ updates: directory: / schedule: interval: monthly + day-of-month: 15 groups: python: patterns: @@ -18,6 +19,7 @@ updates: directory: / schedule: interval: monthly + day-of-month: 15 groups: python: patterns: diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c40d61a..f1893ef 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,4 +1,4 @@ -name: raven-hydro Testing Suite +name: Testing on: push: @@ -11,6 +11,9 @@ concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} +permissions: + contents: read + jobs: black: name: Code linting @@ -19,7 +22,15 @@ jobs: - name: Harden Runner uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1 with: - egress-policy: audit + disable-sudo: true + egress-policy: block + allowed-endpoints: > + files.pythonhosted.org:443 + github.com:443 + proxy.golang.org:443 + pypi.org:443 + storage.googleapis.com:443 + sum.golang.org:443 - name: Checkout Repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Setup Python3 @@ -37,16 +48,13 @@ jobs: strategy: fail-fast: false matrix: - python-version: [ "3.8", "3.9", "3.10", "3.11", "3.12", "3.13" ] + python-version: [ "3.9", "3.13" ] conda: [ true, false ] defaults: run: shell: bash -l {0} steps: - - name: Harden Runner - uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1 - with: - egress-policy: audit + # Harden Runner does not support Windows virtual environments - name: Checkout Repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: @@ -69,10 +77,6 @@ jobs: create-args: >- python=${{ matrix.python-version }} post-cleanup: 'all' -# - name: Check for OPeNDAP Support -# if: ${{ matrix.conda }} -# run: | -# nc-config.exe --has-dap - name: Install raven-hydro if: ${{ !matrix.conda }} @@ -104,7 +108,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] os: - ubuntu-latest # - macos-latest # macOS with Apple Silicon is not supported yet diff --git a/.github/workflows/publish-pypi.yml b/.github/workflows/publish-pypi.yml index e6f04b1..29cc58b 100644 --- a/.github/workflows/publish-pypi.yml +++ b/.github/workflows/publish-pypi.yml @@ -15,8 +15,8 @@ jobs: strategy: # fail-fast: false matrix: -# os: ["ubuntu-latest", "macos-latest"] -# python-version: ["3.8", "3.9", "3.10", "3.11"] +# os: [ "ubuntu-latest", "macos-latest", "windows-latest" ] +# python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ] include: - os: ubuntu-latest python-version: "3.x" diff --git a/.github/workflows/tag-testpypi.yml b/.github/workflows/tag-testpypi.yml index a434ce5..4583ce4 100644 --- a/.github/workflows/tag-testpypi.yml +++ b/.github/workflows/tag-testpypi.yml @@ -16,8 +16,8 @@ jobs: strategy: # fail-fast: false matrix: -# os: ["ubuntu-latest", "macos-latest"] -# python-version: ["3.8", "3.9", "3.10", "3.11"] +# os: [ "ubuntu-latest", "macos-latest", "windows-latest" ] +# python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ] include: - os: ubuntu-latest python-version: "3.x" diff --git a/pyproject.toml b/pyproject.toml index 8c148a9..cc7308d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,7 +15,7 @@ authors = [ ] description = "A Python wrapper to set-up and build the hydrologic modelling framework Raven." license = {file = "LICENSE"} -requires-python = ">=3.8" +requires-python = ">=3.9" classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", @@ -26,7 +26,6 @@ classifiers = [ "Natural Language :: English", "Programming Language :: C++", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", @@ -58,12 +57,11 @@ end-before = "\n\n" [tool.scikit-build] build-dir = "build" experimental = true -minimum-version = "0.9" +minimum-version = "build-system.requires" [tool.scikit-build.cmake] version = ">=3.26.1" build-type = "Release" -verbose = true [tool.scikit-build.cmake.define] # specify whether to download the files even in the git submodule has been initialized and pulled