Skip to content

Commit 79214ba

Browse files
authored
Merge pull request #428 from Zeitsperre/pre-0027-release
Pre-0.0.27 release
2 parents 17fa829 + ca329e0 commit 79214ba

37 files changed

+318
-456
lines changed

.github/workflows/python-publish.yml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,21 @@ on:
55
tags:
66
- "v*" # Push events to matching v*, i.e. v0.0.x,
77

8+
permissions:
9+
contents: read
10+
811
jobs:
912
release:
1013
name: Create Release
1114
runs-on: ubuntu-latest
15+
permissions:
16+
contents: write
1217
steps:
1318
- name: Checkout code
1419
uses: actions/checkout@v4
20+
with:
21+
persist-credentials: false
1522
- name: Create Release
16-
id: create_release
1723
uses: softprops/action-gh-release@v2
1824
with:
1925
body: |
@@ -23,11 +29,14 @@ jobs:
2329
prerelease: false
2430
tag_name: ${{ github.ref }}
2531
token: ${{ secrets.GITHUB_TOKEN }}
32+
2633
deploy:
2734
needs: release
2835
runs-on: ubuntu-latest
2936
steps:
3037
- uses: actions/checkout@v4
38+
with:
39+
persist-credentials: false
3140
- name: Set up Python
3241
uses: actions/setup-python@v5
3342
with:

.github/workflows/upstream-dev-ci.yml

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
name: CI Upstream
2+
23
on:
34
push:
45
branches:
@@ -11,8 +12,11 @@ on:
1112
workflow_dispatch: # allows you to trigger the workflow run manually
1213

1314
concurrency:
14-
group: ${{ github.workflow }}-${{ github.ref }}
15-
cancel-in-progress: true
15+
group: ${{ github.workflow }}-${{ github.ref }}
16+
cancel-in-progress: true
17+
18+
permissions:
19+
contents: read
1620

1721
jobs:
1822
detect-ci-trigger:
@@ -24,9 +28,9 @@ jobs:
2428
steps:
2529
- uses: actions/checkout@v4
2630
with:
27-
persist-credentials: false
2831
fetch-depth: 2
29-
- uses: xarray-contrib/ci-trigger@v1.1.1
32+
persist-credentials: false
33+
- uses: xarray-contrib/ci-trigger@v1
3034
id: detect-trigger
3135
with:
3236
keyword: "[test-upstream]"
@@ -48,15 +52,16 @@ jobs:
4852
strategy:
4953
fail-fast: false
5054
matrix:
51-
python-version: ["3.11"]
55+
python-version: [ "3.11" ]
5256
outputs:
5357
artifacts_availability: ${{ steps.status.outputs.ARTIFACTS_AVAILABLE }}
5458
steps:
5559
- uses: actions/checkout@v4
5660
with:
5761
fetch-depth: 0 # Fetch all history for all branches and tags.
62+
persist-credentials: false
5863
- name: setup conda (micromamba)
59-
uses: mamba-org/setup-micromamba@v1
64+
uses: mamba-org/setup-micromamba@v2
6065
with:
6166
cache-downloads: true
6267
cache-environment: true
@@ -93,7 +98,7 @@ jobs:
9398
&& steps.status.outcome == 'failure'
9499
&& github.event_name == 'schedule'
95100
&& github.repository == 'xarray-contrib/xskillscore'
96-
uses: actions/upload-artifact@v2
101+
uses: actions/upload-artifact@v4
97102
with:
98103
name: output-${{ matrix.python-version }}-log
99104
path: output-${{ matrix.python-version }}-log
@@ -108,6 +113,8 @@ jobs:
108113
&& github.repository == 'xarray-contrib/xskillscore'
109114
&& needs.upstream-dev.outputs.artifacts_availability == 'true'
110115
runs-on: ubuntu-latest
116+
permissions:
117+
issues: write
111118
defaults:
112119
run:
113120
shell: bash
@@ -118,7 +125,7 @@ jobs:
118125
- uses: actions/setup-python@v5
119126
with:
120127
python-version: "3.x"
121-
- uses: actions/download-artifact@v2
128+
- uses: actions/download-artifact@v4
122129
with:
123130
path: /tmp/workspace/logs
124131
- name: Move all log files into a single directory
@@ -131,7 +138,7 @@ jobs:
131138
wget https://raw.githubusercontent.com/pydata/xarray/master/.github/workflows/parse_logs.py
132139
python parse_logs.py logs/**/*-log
133140
- name: Report failures
134-
uses: actions/github-script@v6
141+
uses: actions/github-script@v7
135142
with:
136143
github-token: ${{ secrets.GITHUB_TOKEN }}
137144
script: |

.github/workflows/xskillscore_installs.yml

Lines changed: 24 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,11 @@ name: xskillscore installs
33
on: pull_request
44

55
concurrency:
6-
group: ${{ github.workflow }}-${{ github.ref }}
7-
cancel-in-progress: true
6+
group: ${{ github.workflow }}-${{ github.ref }}
7+
cancel-in-progress: true
8+
9+
permissions:
10+
contents: read
811

912
jobs:
1013
detect-ci-trigger:
@@ -14,10 +17,11 @@ jobs:
1417
outputs:
1518
triggered: ${{ steps.detect-trigger.outputs.trigger-found }}
1619
steps:
17-
- uses: actions/checkout@v2
20+
- uses: actions/checkout@v4
1821
with:
1922
fetch-depth: 2
20-
- uses: xarray-contrib/ci-trigger@v1.1
23+
persist-credentials: false
24+
- uses: xarray-contrib/ci-trigger@v1
2125
id: detect-trigger
2226
with:
2327
keyword: "[skip-ci]"
@@ -28,19 +32,22 @@ jobs:
2832
needs: detect-ci-trigger
2933
if: needs.detect-ci-trigger.outputs.triggered == 'false'
3034
defaults:
31-
run:
32-
shell: bash {0}
35+
run:
36+
shell: bash {0}
3337
strategy:
3438
matrix:
35-
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
39+
os: [ "ubuntu-latest", "macos-latest", "windows-latest" ]
40+
python-version: [ "3.9" ]
3641
steps:
37-
- uses: actions/checkout@v4
38-
- name: Setup python
39-
uses: actions/setup-python@v5
40-
with:
41-
python-version: 3.9
42-
- name: Install dependencies
43-
run: |
44-
python -m pip install --upgrade pip
45-
python -m pip install -e .
46-
python -c "import xskillscore"
42+
- uses: actions/checkout@v4
43+
with:
44+
persist-credentials: false
45+
- name: Setup python
46+
uses: actions/setup-python@v5
47+
with:
48+
python-version: "${{ matrix.python-version }}"
49+
- name: Install dependencies
50+
run: |
51+
python -m pip install --upgrade pip
52+
python -m pip install -e .
53+
python -c "import xskillscore"

.github/workflows/xskillscore_testing.yml

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ concurrency:
88
group: ${{ github.workflow }}-${{ github.ref }}
99
cancel-in-progress: true
1010

11+
permissions:
12+
contents: read
13+
1114
jobs:
1215
detect-ci-trigger:
1316
name: detect ci trigger
@@ -17,9 +20,9 @@ jobs:
1720
steps:
1821
- uses: actions/checkout@v4
1922
with:
20-
persist-credentials: false
2123
fetch-depth: 2
22-
- uses: xarray-contrib/ci-trigger@v1.1.1
24+
persist-credentials: false
25+
- uses: xarray-contrib/ci-trigger@v1
2326
id: detect-trigger
2427
with:
2528
keyword: "[skip-ci]"
@@ -35,13 +38,13 @@ jobs:
3538
strategy:
3639
fail-fast: false
3740
matrix:
38-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
41+
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
3942
steps:
4043
- uses: actions/checkout@v4
4144
with:
4245
persist-credentials: false
4346
- name: Set up conda (micromamba)
44-
uses: mamba-org/setup-micromamba@v2.0.4
47+
uses: mamba-org/setup-micromamba@v2
4548
with:
4649
cache-downloads: true
4750
cache-environment: true
@@ -52,14 +55,14 @@ jobs:
5255
run: |
5356
pytest -n 4 --cov=xskillscore --cov-report=xml --verbose
5457
- name: Upload coverage to codecov
55-
uses: codecov/codecov-action@v1.5.2
58+
uses: codecov/codecov-action@v5
5659
with:
5760
token: ${{ secrets.CODECOV_TOKEN }}
58-
file: ./coverage.xml
61+
files: ./coverage.xml
5962
fail_ci_if_error: false
6063

6164
doctest: # Tests all docstrings
62-
name: Doctests
65+
name: Doctests (Python ${{ matrix.python-version }})
6366
runs-on: ubuntu-latest
6467
needs: detect-ci-trigger
6568
if: needs.detect-ci-trigger.outputs.triggered == 'false'
@@ -69,13 +72,13 @@ jobs:
6972
strategy:
7073
fail-fast: false
7174
matrix:
72-
python-version: [ "3.9", "3.13" ]
75+
python-version: [ "3.13" ]
7376
steps:
7477
- uses: actions/checkout@v4
7578
with:
7679
persist-credentials: false
7780
- name: Set up conda (micromamba)
78-
uses: mamba-org/setup-micromamba@v2.0.4
81+
uses: mamba-org/setup-micromamba@v2
7982
with:
8083
cache-downloads: true
8184
cache-environment: true
@@ -90,6 +93,7 @@ jobs:
9093
python -m pytest --doctest-modules xskillscore --ignore xskillscore/tests
9194
9295
docs_notebooks: # Checks that pre-compiled notebooks in docs still work.
96+
name: Test notebooks in docs (Python ${{ matrix.python-version }})
9397
runs-on: ubuntu-latest
9498
needs: detect-ci-trigger
9599
if: needs.detect-ci-trigger.outputs.triggered == 'false'
@@ -104,7 +108,7 @@ jobs:
104108
with:
105109
persist-credentials: false
106110
- name: Set up conda (micromamba)
107-
uses: mamba-org/setup-micromamba@v2.0.4
111+
uses: mamba-org/setup-micromamba@v2
108112
with:
109113
cache-downloads: true
110114
cache-environment: true

.pre-commit-config.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ repos:
3636
- repo: https://github.com/astral-sh/ruff-pre-commit
3737
rev: "v0.12.2"
3838
hooks:
39-
- id: ruff
40-
args: ["--select", "E,F,I001"]
39+
- id: ruff-check
40+
args: [ "--fix" ]
4141
types_or: [python, pyi, jupyter]
4242
- id: ruff-format
4343
types_or: [python, pyi, jupyter]
@@ -46,7 +46,7 @@ repos:
4646
rev: v0.4.1
4747
hooks:
4848
- id: blackdoc
49-
additional_dependencies: ["black==23.10.1"]
49+
additional_dependencies: ["black==25.1.0"]
5050

5151
- repo: https://github.com/PyCQA/doc8
5252
rev: v2.0.0

CHANGELOG.rst

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ Changelog History
33
=================
44

55

6-
xskillscore v0.0.27 (unreleased)
6+
xskillscore v0.0.27 (2025-07-14)
77
--------------------------------
88

99
Bug Fixes
@@ -20,6 +20,12 @@ Internal Changes
2020
updated. (:pr:`426`) `Trevor James Smith`_
2121
- `xskillscore` now uses `setuptools-scm` to automatically determine the
2222
version number. (:pr:`427`) `Trevor James Smith`_
23+
- Updated GitHub Actions and `pre-commit` hook versions to more modern versions.
24+
(:pr:`428`) `Trevor James Smith`_
25+
- Release documentation steps have been updated to to refer to the new
26+
`setuptools-scm`-based approach. (:pr:`428`) `Trevor James Smith`_
27+
- The test suite now refers to the `xarray.testing` submodule for basic testing helpers.
28+
(:pr:`422`) `weipeng1999`_
2329

2430

2531
xskillscore v0.0.26 (2024-03-10)
@@ -363,4 +369,5 @@ Testing
363369
.. _`Ray Bell`: https://github.com/raybellwaves
364370
.. _`Taher Chegini`: https://github.com/cheginit
365371
.. _`Trevor James Smith`: https://github.com/Zeitsperre
372+
.. _`weipeng1999`: https://github.com/weipeng1999
366373
.. _`Zachary Blackwood`: https://github.com/blackary

HOWTOCONTRIBUTE.rst

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,12 @@ reporting `issues <https://github.com/xarray-contrib/xskillscore/issues>`__.
99
The following sections cover some general guidelines
1010
regarding development in ``xskillscore`` for maintainers and contributors.
1111

12-
1312
Nothing here is set in stone and can't be changed.
1413
Feel free to suggest improvements or changes in the workflow.
1514

16-
17-
1815
.. contents:: Contribution links
1916
:depth: 2
2017

21-
22-
2318
.. _submitfeedback:
2419

2520
Feature requests and feedback
@@ -33,7 +28,6 @@ with the label "feature request."
3328
Please make sure to explain in detail how the feature should work and keep the scope as
3429
narrow as possible. This will make it easier to implement in small PRs.
3530

36-
3731
.. _reportbugs:
3832

3933
Report bugs
@@ -53,7 +47,6 @@ If you are reporting a bug, please include:
5347
If you can write a demonstration test that currently fails but should passm
5448
that is a very useful commit to make as well, even if you cannot fix the bug itself.
5549

56-
5750
.. _fixbugs:
5851

5952
Fix bugs
@@ -63,7 +56,6 @@ Look through the `GitHub issues for bugs <https://github.com/xarray-contrib/xski
6356

6457
Talk to developers to find out how you can fix specific bugs.
6558

66-
6759
Write documentation
6860
-------------------
6961

@@ -103,7 +95,6 @@ If you are adding new functions to the API, run ``sphinx-autogen -o api api.rst`
10395
Preparing Pull Requests
10496
-----------------------
10597

106-
10798
#. Fork the
10899
`xskillscore GitHub repository <https://github.com/xarray-contrib/xskillscore>`__. It's
109100
fine to use ``xskillscore`` as your fork repository name because it will live

0 commit comments

Comments
 (0)