Skip to content

Commit c40a014

Browse files
Merge branch 'master' into finalize-docs
2 parents 578486f + ff474bd commit c40a014

66 files changed

Lines changed: 2598 additions & 851 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/actions/cache-test-data/action.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,11 @@ runs:
1010
uses: actions/cache@v4
1111
with:
1212
path: test-data
13-
key: test-data-v24
13+
key: test-data-v30
1414
- name: Download test data if cache miss
1515
if: steps.cache.outputs.cache-hit != 'true'
1616
run: |
1717
cd maintainer
18+
# TODO: if this script fails to download some files, the cache is saved nevertheless
1819
./download-test-data.sh
1920
shell: bash

.github/workflows/release-wheels.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ jobs:
5050
uses: PyO3/maturin-action@v1
5151
with:
5252
target: ${{ matrix.platform.target }}
53-
args: --release --out dist --interpreter python3.8 python3.9 python3.10 python3.11 python3.12 python3.13 python3.14 pypy3.9 pypy3.10 pypy3.11 --manifest-path pineappl_py/Cargo.toml
53+
args: --release --out dist --interpreter python3.8 python3.9 python3.10 python3.11 python3.12 python3.13 python3.14 pypy3.11 --manifest-path pineappl_py/Cargo.toml
5454
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
5555
manylinux: ${{ matrix.platform.manylinux }}
5656
- name: Upload wheels
@@ -143,7 +143,7 @@ jobs:
143143
uses: PyO3/maturin-action@v1
144144
with:
145145
target: ${{ matrix.platform.target }}
146-
args: --release --out dist --interpreter python3.7 python3.8 python3.9 python3.10 python3.11 python3.12 python3.13 python3.14 pypy3.9 pypy3.10 --manifest-path pineappl_py/Cargo.toml
146+
args: --release --out dist --interpreter python3.7 python3.8 python3.9 python3.10 python3.11 python3.12 python3.13 python3.14 --manifest-path pineappl_py/Cargo.toml
147147
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
148148
- name: Upload wheels
149149
uses: actions/upload-artifact@v5

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,14 @@ Starting with this version, PineAPPL has an official logo!
1111

1212
### Added
1313

14+
- added `optimize_using` in `Grid` objects of the Python API
1415
- added an actual implementation of `pineappl_grid_metadata` and
1516
`pineappl_grid_set_metadata` in the APIs
1617

1718
### Fixed
1819

20+
- fixed fragmentation scale evolution, particularly for the specific case where
21+
the fragmentation scale is the only scale present
1922
- fixed a bug in the Newton's convergence method by raising the maximum number
2023
of iteration
2124
- fixed a bug in the implementation of `pineappl_channels_add` of the Fortran
@@ -26,6 +29,9 @@ Starting with this version, PineAPPL has an official logo!
2629

2730
- raised MSRV to 1.94.0
2831
- raised Rust edition to 2024
32+
- instead of depending on a previous version of the PineAPPL crate, a new crate
33+
`pineappl_v0` is now responsible for loading files with file version `v0`
34+
- raised dependency on `pyo3` to 0.27, which drops support for PyPy 3.9 and 3.10
2935

3036
## [1.3.3] - 01/03/2026
3137

CONTRIBUTING.md

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,6 @@
77
it compiles properly. Also, check if your changes introduce any new linter
88
warnings by running `cargo clippy`.
99
- Make sure to keep `CHANGELOG.md` up-to-date.
10-
- Make sure not to use Rust features newer than the specified minimum supported
11-
Rust Version (MSRV), which is documented in the [README](README.md). You can
12-
use `cargo-msrv` to check the crates. However, the Github CI also checks this.
1310
- Make sure to follow the [Rust API Guidelines]
1411

1512
[Rust API Guidelines]: https://rust-lang.github.io/api-guidelines/checklist.html
@@ -19,17 +16,17 @@
1916
Do not change the MSRV for releases with increased patch version number. When
2017
increasing the MSRV make sure to set it everywhere to the same value:
2118

22-
1. first update the `pineappl-ci` container, by
19+
1. first update the container file `maintainer/Containerfile`, by
2320
- adding the new MSRV to the variable `RUST_V`,
2421
- making sure the nightly version is the last entry and
2522
- leaving in the previous MSRV to not break the CI in between the transition
2623
from it
27-
2. commit the previous changes and manually run the `Container` Github action
24+
- removing the oldest stable version
25+
2. commit the previous changes and manually run the `Container` GitHub action
2826
3. next, update the MSRV in the following files:
2927
- in the top-level `Cargo.toml`; all other projects in the workspace should
3028
inherit the setting in their respective `Cargo.toml` files
3129
- in `README.md` and `docs/installation.md`
32-
- in all Github workflows (`.github/workflows/`)
3330
- in `.readthedocs.yml` update the value of the `rust` field and make sure
3431
[RTD supports it](https://docs.readthedocs.io/en/stable/config-file/v2.html#build-tools-rust)
3532
4. commit the previous changes and push them *after* the container created by
@@ -51,26 +48,32 @@ increasing the MSRV make sure to set it everywhere to the same value:
5148
- if you write a test that needs test data (grids, EKOs, etc.) store them at
5249
<https://data.nnpdf.science/pineappl/test-data/>. Ask one of the maintainers
5350
to upload the data for you if you don't have access to this location. Then
54-
add a line to `maintainer/generate-coverage.sh` that downloads the data with
55-
`wget` and a similar line to `.github/workflows/rust.yml` that downloads the
56-
data with `curl`. To make Github refresh the cached test data when running
57-
the CI, increase the integer `XX` in the line `key: test-data-vXX` by one.
51+
add a line to `maintainer/download-test-data.sh` that downloads the files and
52+
increase the version integer `test-data-vXX` in
53+
`.github/actions/cache-test-data/action.yml`. To make GitHub refresh the
54+
cached test data when running the CI, increase the integer `XX` in the line
55+
`key: test-data-vXX` by one.
56+
57+
### Regression tests for GitHub Issues
58+
59+
If you're writing a regression test for a GitHub Issue, name the test
60+
`issue_XXX`, where `XXX` is the GitHub Issue number.
5861

5962
## Git
6063

6164
- When you commit, make sure the commit message is written properly. This
6265
blogpost explains it nicely: <https://chris.beams.io/posts/git-commit/>.
6366
- Whenever you have unpushed local commits that are behind `origin/master`, use
6467
`git pull --rebase` to rebase them
65-
- When editing Github workflow files, use a separate branch, because usually
68+
- When editing GitHub workflow files, use a separate branch, because usually
6669
many commits are needed to get something working. When merging this branch
6770
into `master` (or any other branch), squash-merge the commits; the exact
6871
history in this case is not important
6972

7073
## Making a new release
7174

7275
First make sure the release workflow works; since we've hard-coded runner image
73-
and action versions, it's possible that the workflow must be updated if these
76+
and action versions, it's possible that some workflows must be updated if these
7477
images don't exist anymore. To check whether that's the case, manually trigger
7578
the following workflows:
7679

@@ -96,11 +99,11 @@ generated, for which the pull request will have to be accepted manually though.
9699

97100
## Updating the CI's container
98101

99-
To update the software the CI runs with, modify the files in
100-
`maintainer/pineappl-ci`. See `maintainer/README.md` for a description of what
101-
these files do. To generate a new container, you need to manually run the
102-
[Container action] from the branch in which you modified the container files.
103-
After the container has been generated, all following commits in *every* branch
104-
will use the new container.
102+
To update the software the CI runs with, modify `maintainer/Containerfile`
103+
`maintainer/build-container.sh`. See also `maintainer/README.md` for a
104+
description of what these files do. To generate a new container, you need to
105+
manually run the [Container action] from the branch in which you modified the
106+
container files. After the container has been generated, all following commits
107+
in *every* branch will use the new container.
105108

106109
[Container action]: https://github.com/NNPDF/pineappl/actions/workflows/container.yml

0 commit comments

Comments
 (0)