Releases: cms-nanoAOD/correctionlib
Version 2.8.0
Summary
- Improvements to TFormula support
- Significant improvements in platform and python version support, including freethreaded python 3.14
⚠️ flat awkward arrays are now returned from high-levelevaluate()calls when flat awkward arrays are passed in, see #296- Previously, the output would be a numpy array. If that is required, one can call
.to_numpy()on the output
- Previously, the output would be a numpy array. If that is required, one can call
What's Changed
- build: update to pybind11 3, modernize python by @lgray in #294
- fix: better implementation of this_module_path by @lgray in #295
- ci: move to cibuildwheel 3 by @lgray in #293
- build: support python3.14 and drop python3.8 by @ikrommyd in #300
- ci: add sentinel tests task by @ikrommyd in #301
- Migrate Variable integer type to 64-bit by @nsmith- in #302
- chore: Migrate to dependency groups by @nsmith- in #304
- fix: Allow logical and, or in TFormula by @nsmith- in #308
- fix: deprecate stdnormal HashPRNG distribution type by @nsmith- in #305
- fix: Allow arbitrarily many variables in formulas by @nsmith- in #309
- fix: Validate input names in pydantic model by @nsmith- in #311
- fix: re-wrap awkward arrays in highlevel evaluator by @nsmith- in #306
- chore: improve pre-commit config and switch to ruff by @nsmith- in #313
- fix: compare version to SKBUILD properly by @nsmith- in #314
- chore: add monthly pre-commit autoupdate by @lgray in #319
- chore: turn on dependabot monthly updates by @lgray in #317
- ci: bump actions/setup-python from 2 to 6 by @dependabot[bot] in #320
- ci: bump actions/checkout from 2 to 6 by @dependabot[bot] in #321
- ci: bump actions/upload-artifact from 4 to 6 by @dependabot[bot] in #322
- ci: bump actions/download-artifact from 4 to 7 by @dependabot[bot] in #323
- chore: manual pre-commit autoupdate by @lgray in #324
- Update
pcg-cpptoTotal-Random/pcg-cppby @ikrommyd in #325 - Update pybind11 to 3.0.2 by @ikrommyd in #326
- ci: windows arm64 tests/wheels by @lgray in #292
- build: add freethreaded python ci and wheels by @lgray in #284
- ci: bump actions/download-artifact from 7 to 8 by @dependabot[bot] in #329
- ci: bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in #328
- Run all corrections hosted on cvmfs through initialization by @nsmith- in #330
- Add $schema field to root of model for IDE usage by @nsmith- in #331
New Contributors
Full Changelog: v2.7.0...v2.8.0
Version 2.8.0rc2
(pre-release)
v2.8.0rc1: fix: compare version to SKBUILD properly (#314)
Pre-release to test CD pipelines
v2.7.0
A new flow: "wrap" option is available to handle axes with circular binning (e.g. phi)
Validation error messages are significantly improved with the discriminated union type!
What's Changed
- Migrate from defaultdict to Counter by @nsmith- in #267
- build: add aarch64 wheels and upkeep chores by @lgray in #270
- Use discriminated union for nodetype by @nsmith- in #272
- Migrate to scikit-build-core by @mgorny in #279
- deps: pybind 2.13.6 by @lgray in #280
- Try fetching tags to get correct version in CI by @mgorny in #281
- fix: move to 12 Mar 2025 rapidjson master by @lgray in #283
- ci: use new native arm builders for wheels by @lgray in #285
- Add
flow: wrapoption to handle circular axes by @dsavoiu in #276 - Add "--ignore-float-inf" for "correction summary" by @ftorrresd in #289
New Contributors
- @mgorny made their first contribution in #279
- @dsavoiu made their first contribution in #276
- @ftorrresd made their first contribution in #289
Full Changelog: v2.6.4...v2.7.0
v2.6.4
v2.6.3
v2.6.2
Mostly bugfixes, though a new validation option is available: correction validate --ignore-float-inf. The plan is to migrate fully to string infinities on a longer timescale (potentially v3) as old evaluators are not forwards-compatible.
What's Changed
- fix: re-raise error if conditions for dispatch not met by @lgray in #253
- Bump pypa/cibuildwheel from 2.19.1 to 2.19.2 by @dependabot in #249
- Use fast printing for pydantic validation errors by @nsmith- in #256
- Add a validation option to ignore float infinities in bin edges by @nsmith- in #257
- Make the help message slightly more clear by @nsmith- in #259
- Link against libz and pthread privately by @nsmith- in #258
Full Changelog: v2.6.1...v2.6.2
Version 2.6.1
This is a patch release on v2.6 that allows the evaluator to read correctionlib JSON made prior to the migration to string infinity.
What's Changed
Full Changelog: v2.6.0...v2.6.1
Version 2.6.0
The main purpose of this release is to ensure numpy 2.0 compatibility.
See #240 (comment) for details.
Also, a new method of handling infinities in bin edges is introduced: one needs to use "inf" or "-inf" rather than floating point values. A warning explains in detail how to change corrections.
What's Changed
- Fix PyROOT binding registration by @nsmith- in #224
- Update to pybind11 v2.12 and migrate to string infinity by @nsmith- in #242
- Better error for missing input by @nsmith- in #243
- Duplicate check in evaluator by @nsmith- in #244
- Cast int inputs to double in binning evaluations by @nsmith- in #245
Dependency updates
- Bump pypa/cibuildwheel from 2.16.5 to 2.17.0 by @dependabot in #227
- Bump peaceiris/actions-gh-pages from 3.9.3 to 4.0.0 by @dependabot in #229
- Bump conda-incubator/setup-miniconda from 2.2.0 to 3.0.4 by @dependabot in #231
- Bump pypa/cibuildwheel from 2.17.0 to 2.19.1 by @dependabot in #238
- Bump pypa/gh-action-pypi-publish from 1.8.11 to 1.9.0 by @dependabot in #239
Full Changelog: v2.5.0...v2.6.0
Version 2.5.0
More dask-awkward support and pydantic 2 migration. Python 3.6 support is dropped, and 3.12 added.
What's Changed
- Make interfaces of C++ correction types more uniform by @eguiraud in #215
- Bump pypa/gh-action-pypi-publish from 1.8.10 to 1.8.11 by @dependabot in #216
- Migrate to pydantic2 by @nsmith- in #220
- feat: add dask_awkward wrapper to Correction and CompoundCorrection by @lgray in #219
- Move away from deprecated pkg_resources by @eguiraud in #210
- Bump pypa/cibuildwheel from 2.14.1 to 2.16.5 by @dependabot in #221
Full Changelog: v2.4.0...v2.5.0