Skip to content

Commit fd26b09

Browse files
Merge pull request #5275 from pybamm-team/25.10.1
Release v25.10.1
2 parents afbb567 + bad1fd5 commit fd26b09

File tree

23 files changed

+954
-264
lines changed

23 files changed

+954
-264
lines changed

.github/workflows/benchmark_on_push.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,13 @@ jobs:
3434
sudo apt-get update
3535
sudo apt install gfortran gcc libopenblas-dev
3636
37-
- name: Set up uv
38-
run: python -m pip install uv
37+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
38+
with:
39+
version: "latest"
40+
enable-cache: true
3941

4042
- name: Install python dependencies
41-
run: |
42-
python -m uv pip install asv[virtualenv]
43+
run: uv pip install asv[virtualenv]
4344

4445
- name: Fetch base branch
4546
run: |

.github/workflows/discussion_autoresponder.yml

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ on:
44
discussion:
55
types: [created]
66

7-
87
permissions: {}
98

109
jobs:
@@ -17,8 +16,23 @@ jobs:
1716

1817
steps:
1918
- name: Run Discussion Autoresponder
20-
uses: wesleyscholl/discussion-auto-responder@b1a3c1b9a1e3d1b1a3c1b9a1e3d1b1a3c1b9a1e3 # v1.0.8
19+
uses: actions/github-script@v7
2120
with:
22-
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
23-
comment_body: "Hi! We have now moved our discussions to [Discourse](https://pybamm.discourse.group/). Please post your question there."
24-
delay_milliseconds: 0
21+
script: |
22+
const discussion = context.payload.discussion;
23+
const message = "Hi! We have now moved our discussions to [Discourse](https://pybamm.discourse.group/). Please post your question there.";
24+
25+
const query = `
26+
mutation($discussionId: ID!, $body: String!) {
27+
addDiscussionComment(input: {discussionId: $discussionId, body: $body}) {
28+
comment {
29+
id
30+
}
31+
}
32+
}
33+
`;
34+
35+
await github.graphql(query, {
36+
discussionId: discussion.node_id,
37+
body: message,
38+
});

.github/workflows/lychee_url_checker.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636

3737
# use stable version for now to avoid breaking changes
3838
- name: Lychee URL checker
39-
uses: lycheeverse/lychee-action@885c65f3dc543b57c898c8099f4e08c8afd178a2 # v2.6.1
39+
uses: lycheeverse/lychee-action@a8c4c7cb88f0c7386610c35eb25108e448569cb0 # v2.7.0
4040
with:
4141
# arguments with file types to check
4242
args: >-

.github/workflows/periodic_benchmarks.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,13 @@ jobs:
4242
sudo apt-get update
4343
sudo apt-get install gfortran gcc libopenblas-dev
4444
45-
- name: Set up uv
46-
run: python -m pip install uv
45+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
46+
with:
47+
version: "latest"
48+
enable-cache: true
4749

4850
- name: Install python dependencies
49-
run: |
50-
python -m uv pip install asv[virtualenv]
51+
run: uv pip install asv[virtualenv]
5152

5253
- name: Run benchmarks
5354
run: |

.github/workflows/run_periodic_tests.yml

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -70,19 +70,21 @@ jobs:
7070
with:
7171
python-version: ${{ matrix.python-version }}
7272

73-
- name: Set up uv
74-
run: python -m pip install uv
73+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
74+
with:
75+
version: "latest"
76+
enable-cache: true
7577

7678
- name: Install nox
77-
run: python -m uv pip install nox[uv]
79+
run: uv tool install nox
7880

7981
- name: Run unit tests for ${{ matrix.os }} with Python ${{ matrix.python-version }}
8082
if: matrix.os != 'ubuntu-latest' || matrix.python-version != '3.12'
81-
run: python -m nox -s unit
83+
run: nox -s unit
8284

8385
- name: Run coverage tests for ${{ matrix.os }} with Python ${{ matrix.python-version }}
8486
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12'
85-
run: python -m nox -s coverage
87+
run: nox -s coverage
8688

8789
- name: Upload coverage report
8890
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12'
@@ -91,7 +93,7 @@ jobs:
9193
token: ${{ secrets.CODECOV_TOKEN }}
9294

9395
- name: Run integration tests for ${{ matrix.os }} with Python ${{ matrix.python-version }}
94-
run: python -m nox -s integration
96+
run: nox -s integration
9597

9698
run_doctests:
9799
runs-on: ubuntu-latest
@@ -119,17 +121,19 @@ jobs:
119121
with:
120122
python-version: 3.11
121123

122-
- name: Set up uv
123-
run: python -m pip install uv
124+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
125+
with:
126+
version: "latest"
127+
enable-cache: true
124128

125129
- name: Install nox
126-
run: python -m uv pip install nox[uv]
130+
run: uv tool install nox
127131

128132
- name: Install docs dependencies and run doctests for GNU/Linux
129-
run: python -m nox -s doctests
133+
run: nox -s doctests
130134

131135
- name: Check if the documentation can be built for GNU/Linux
132-
run: python -m nox -s docs
136+
run: nox -s docs
133137

134138
run_example_tests:
135139
runs-on: ubuntu-latest
@@ -156,14 +160,16 @@ jobs:
156160
with:
157161
python-version: 3.12
158162

159-
- name: Set up uv
160-
run: python -m pip install uv
163+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
164+
with:
165+
version: "latest"
166+
enable-cache: true
161167

162168
- name: Install nox
163-
run: python -m uv pip install nox[uv]
169+
run: uv tool install nox
164170

165171
- name: Run example notebooks tests for GNU/Linux with Python 3.12
166-
run: python -m nox -s examples
172+
run: nox -s examples
167173

168174
run_scripts_tests:
169175
runs-on: ubuntu-latest
@@ -190,11 +196,13 @@ jobs:
190196
with:
191197
python-version: 3.12
192198

193-
- name: Set up uv
194-
run: python -m pip install uv
199+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
200+
with:
201+
version: "latest"
202+
enable-cache: true
195203

196204
- name: Install nox
197-
run: python -m uv pip install nox[uv]
205+
run: uv tool install nox
198206

199207
- name: Run example scripts tests for GNU/Linux with Python 3.12
200-
run: python -m nox -s scripts
208+
run: nox -s scripts

.github/workflows/scorecard.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,6 @@ jobs:
6565
# Upload the results to GitHub's code scanning dashboard (optional).
6666
# Commenting out will disable upload of results to your repo's Code Scanning dashboard
6767
- name: "Upload to code-scanning"
68-
uses: github/codeql-action/upload-sarif@4e94bd11f71e507f7f87df81788dff88d1dacbfb # v3.29.5
68+
uses: github/codeql-action/upload-sarif@0499de31b99561a6d14a36a5f662c2a54f91beee # v3.29.5
6969
with:
7070
sarif_file: results.sarif

.github/workflows/test_on_push.yml

Lines changed: 32 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,13 @@ jobs:
3232
with:
3333
python-version: 3.12
3434

35-
- name: Set up uv
36-
run: python -m pip install uv
35+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
36+
with:
37+
version: "latest"
38+
enable-cache: true
3739

3840
- name: Check style
39-
run: |
40-
python -m uv pip install pre-commit
41-
pre-commit run -a
41+
run: uvx pre-commit run -a
4242

4343
run_unit_tests:
4444
runs-on: ${{ matrix.os }}
@@ -96,21 +96,22 @@ jobs:
9696
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
9797
with:
9898
python-version: ${{ matrix.python-version }}
99-
cache: 'pip'
10099

101-
- name: Set up uv
102-
run: python -m pip install uv
100+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
101+
with:
102+
version: "latest"
103+
enable-cache: true
103104

104105
- name: Install nox
105-
run: python -m uv pip install nox[uv]
106+
run: uv tool install nox
106107

107108
- name: Run unit tests for ${{ matrix.os }} with Python ${{ matrix.python-version }}
108109
if: matrix.os != 'ubuntu-latest' || matrix.python-version != '3.12'
109-
run: python -m nox -s unit
110+
run: nox -s unit
110111

111112
- name: Run coverage tests for ${{ matrix.os }} with Python ${{ matrix.python-version }}
112113
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12'
113-
run: python -m nox -s coverage
114+
run: nox -s coverage
114115

115116
- name: Upload coverage report
116117
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12'
@@ -120,7 +121,7 @@ jobs:
120121

121122
- name: Run integration tests for ${{ matrix.os }} with Python ${{ matrix.python-version }}
122123
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12'
123-
run: python -m nox -s integration
124+
run: nox -s integration
124125

125126
run_doctests:
126127
runs-on: ubuntu-latest
@@ -155,19 +156,20 @@ jobs:
155156
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
156157
with:
157158
python-version: 3.11
158-
cache: 'pip'
159159

160-
- name: Set up uv
161-
run: python -m pip install uv
160+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
161+
with:
162+
version: "latest"
163+
enable-cache: true
162164

163165
- name: Install nox
164-
run: python -m uv pip install nox[uv]
166+
run: uv tool install nox
165167

166168
- name: Install docs dependencies and run doctests for GNU/Linux
167-
run: python -m nox -s doctests
169+
run: nox -s doctests
168170

169171
- name: Check if the documentation can be built for GNU/Linux
170-
run: python -m nox -s docs
172+
run: nox -s docs
171173

172174
run_example_tests:
173175
runs-on: ubuntu-latest
@@ -201,16 +203,17 @@ jobs:
201203
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
202204
with:
203205
python-version: 3.12
204-
cache: 'pip'
205206

206-
- name: Set up uv
207-
run: python -m pip install uv
207+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
208+
with:
209+
version: "latest"
210+
enable-cache: true
208211

209212
- name: Install nox
210-
run: python -m uv pip install nox[uv]
213+
run: uv tool install nox
211214

212215
- name: Run example notebooks tests for GNU/Linux with Python 3.12
213-
run: python -m nox -s examples
216+
run: nox -s examples
214217

215218
run_scripts_tests:
216219
runs-on: ubuntu-latest
@@ -244,13 +247,14 @@ jobs:
244247
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
245248
with:
246249
python-version: 3.12
247-
cache: 'pip'
248250

249-
- name: Set up uv
250-
run: python -m pip install uv
251+
- uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
252+
with:
253+
version: "latest"
254+
enable-cache: true
251255

252256
- name: Install nox
253-
run: python -m uv pip install nox[uv]
257+
run: uv tool install nox
254258

255259
- name: Run example scripts tests for GNU/Linux with Python 3.12
256-
run: python -m nox -s scripts
260+
run: nox -s scripts

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,20 @@
11
# [Unreleased](https://github.com/pybamm-team/PyBaMM/)
22

3+
## Features
4+
5+
## Bug fixes
6+
7+
# [v25.10.1](https://github.com/pybamm-team/PyBaMM/tree/v25.10.1) - 2025-11-14
8+
9+
## Features
10+
- Allow setting initial conditions from `y_slices` of a `Solution` object. ([#5257](https://github.com/pybamm-team/PyBaMM/pull/5257))
11+
- Added docstring to `FuzzyDict.copy` explaining its return value and behavior. ([#5242](https://github.com/pybamm-team/PyBaMM/pull/5242))
12+
13+
## Bug fixes
14+
15+
- Fixed a bug where simulations whose initial conditions violated the events could continue solving. ([#5260](https://github.com/pybamm-team/PyBaMM/pull/5260))
16+
- Fixed an issues with composite electrode and "swelling only" mechanics sub-models, which were not creating the cell thickness variable. ([#5272](https://github.com/pybamm-team/PyBaMM/pull/5272))
17+
318
# [v25.10.0](https://github.com/pybamm-team/PyBaMM/tree/v25.10.0) - 2025-10-29
419

520
## Features

CITATION.cff

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,6 @@ keywords:
2424
- "expression tree"
2525
- "python"
2626
- "symbolic differentiation"
27-
version: "25.10.0"
27+
version: "25.10.1"
2828
repository-code: "https://github.com/pybamm-team/PyBaMM"
2929
title: "Python Battery Mathematical Modelling (PyBaMM)"

docs/source/user_guide/installation/index.rst

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,9 +158,8 @@ Dependency
158158
`pre-commit <https://pre-commit.com/index.html>`__ \- dev For managing and maintaining multi-language pre-commit hooks.
159159
`ruff <https://beta.ruff.rs/docs/>`__ \- dev For code formatting.
160160
`nox <https://nox.thea.codes/en/stable/>`__ \- dev For running testing sessions in multiple environments.
161-
`pytest-subtests <https://github.com/pytest-dev/pytest-subtests/>`__ \- dev For subtests pytest fixture.
162161
`pytest-cov <https://pytest-cov.readthedocs.io/en/stable/>`__ \- dev For calculating test coverage.
163-
`pytest <https://docs.pytest.org/en/stable/>`__ 6.0.0 dev For running the test suites.
162+
`pytest <https://docs.pytest.org/en/stable/>`__ 9.0.0 dev For running the test suites (includes subtests support).
164163
`pytest-doctestplus <https://github.com/scientific-python/pytest-doctestplus>`__ \- dev For running doctests.
165164
`pytest-xdist <https://pytest-xdist.readthedocs.io/en/latest/>`__ \- dev For running tests in parallel across distributed workers.
166165
`pytest-mock <https://pytest-mock.readthedocs.io/en/latest/index.html>`__ \- dev Provides a mocker fixture.

0 commit comments

Comments
 (0)