What's Changed
- chore: drop an unused import and a placeholder-free f-string in compare_versions.py by @marekl11 in #1334
- docs: update README for the published 3.0.0 release by @monocongo in #1333
- chore(deps-dev): bump the version-updates group with 3 updates by @dependabot[bot] in #1352
- chore(deps): bump actions/upload-artifact from 7.0.1 to 7.0.2 by @dependabot[bot] in #1351
- chore(deps): bump astral-sh/setup-uv from 10.2.0 to 10.3.0 by @dependabot[bot] in #1347
- chore(deps): bump github/codeql-action/upload-sarif from 4.38.2 to 4.38.3 by @dependabot[bot] in #1348
- chore(deps): bump PyO3/maturin-action from 423a6347767a8b16e65c2a7a7042e4a921528da8 to e83996d129638aa358a18fbd1dfb82f0b0fb5d3b by @dependabot[bot] in #1349
- chore(deps): bump actions/download-artifact from 8.0.1 to 8.0.2 by @dependabot[bot] in #1350
- feat(indices): add the aggregation seam and record the energy module API (#1158) by @monocongo in #1346
- docs(adr): settle the standardized_index public surface (#1132) by @monocongo in #1354
- perf(fire): compute the KBDI climatology denominator once per cell by @mclainv in #1355
- perf(recurrence): fuse the daily recurrence driver into one pass by @mclainv in #1356
- docs: record the energy family scope boundary (#1159) by @monocongo in #1357
- docs: survey energy-index validation oracles by @monocongo in #1359
- docs(energy): add climate indices for energy applications page (#1161) by @monocongo in #1360
- docs(adr): record the crate's crates.io identity (#1306) by @monocongo in #1361
- feat(energy): register CF metadata for the planned energy indices (#1162) by @monocongo in #1362
- test(energy): add CPC and wind-profile reference fixtures by @monocongo in #1363
- docs(compound): record milestone 1 contracts and plan by @monocongo in #1375
- feat(energy): add hub-height wind profiles and shear diagnostics (#1165) by @monocongo in #1378
- feat(energy): heating, cooling, and energy degree days (#1164) by @monocongo in #1376
- feat(rust): define the public kernel API contract by @monocongo in #1377
- test(compound): add public drought-heatwave LMF reference fixture by @monocongo in #1380
- feat(compound): add declared-input harmonize() and AlignedHazards by @monocongo in #1379
- docs(energy): add hydropower precipitation proxy recipe (#1167) by @monocongo in #1383
- docs(rust): state each climate-core kernel's numerical contract by @monocongo in #1381
- feat(energy): beta xarray adapters for degree days and wind profiles (#1166) by @monocongo in #1382
- test(rust): verify climate-core without Python (#1310) by @monocongo in #1384
- feat(indices): add the empirical distribution option to standardized_index (#1168) by @monocongo in #1385
- feat(compound): add joint frequencies and likelihood multiplication factor by @monocongo in #1386
- feat(compound): add conditional and forward-window hazard probabilities by @monocongo in #1388
- feat(indices): add the beta distribution option for bounded series (#1169) by @monocongo in #1389
- test(energy): add pinned SEI oracle fixtures for SREPI and SRLI (#1170) by @monocongo in #1390
- feat(energy): add SREPI and the standardized demand index (#1171) by @monocongo in #1391
- feat(compound): add concurrent and sequential event matching by @monocongo in #1392
- feat(energy): add run-theory energy-drought event statistics by @monocongo in #1394
- feat(energy): add SRLI and the residual-load helper (#1172) by @monocongo in #1393
- feat(compound): add monthly block-bootstrap intervals and dependence null tests by @monocongo in #1397
- feat(energy): add temperature-derated PV capacity factor by @monocongo in #1396
- feat(energy): add wind capacity-factor transform by @monocongo in #1395
- feat(energy): wire the standardized-index and energy xarray adapters (#1174) by @monocongo in #1399
- feat(compound): add beta xarray Dataset routes with bounded Dask execution by @monocongo in #1400
- feat(cli): expose the energy indices through --index by @monocongo in #1401
- build(crate): rename climate-core to climate-indices and make it packageable by @monocongo in #1403
- feat(compound): add eager numeric event catalogs by @monocongo in #1402
- docs(energy): record validation evidence and shipped API status by @monocongo in #1404
- fix(compound): bound the event block before allocating it by @monocongo in #1405
- docs(crate): give Rust users examples, doctests, and a rustdoc gate (#1311) by @monocongo in #1409
- perf(crate): add reproducible Criterion kernel benchmarks by @monocongo in #1411
- feat(energy): add hourly periodicity for the standardized energy indices (#1177) by @monocongo in #1408
- docs(compound): reproduce public LMF cases and publish guide by @monocongo in #1412
- docs(energy): add cached ERA5 demonstration notebook by @monocongo in #1413
- ci(crate): gate the published crate on semver, MSRV, deny, and packaged docs (#1313) by @monocongo in #1414
- ci(crate): gate and publish the crate to crates.io (#1314) by @monocongo in #1415
- ci(crate): add the crate pre-release rehearsal lane (#1314) by @monocongo in #1426
- feat(flood): consolidate flood events onto the run layer and add per-hydrological-year summaries by @monocongo in #1425
- test(compound): calibrate bootstrap inference for record length, persistence, and lagged conditioning by @monocongo in #1424
- docs(compound): target 3.1.0 and name the release gates by @monocongo in #1410
- docs(data-requirements): separate per-period Pearson substitution from the gamma fallback by @monocongo in #1429
- build(deps): bump the version-updates group with 4 updates by @dependabot[bot] in #1428
- build(deps): bump github/codeql-action/upload-sarif from 4.38.3 to 4.39.0 by @dependabot[bot] in #1427
- build(deps): bump certifi from 2026.1.4 to 2026.10.19 in the security-updates group across 1 directory by @dependabot[bot] in #1443
- feat(io): add optional Icechunk input and output support by @monocongo in #1445
- test(io): cover Icechunk round trip, storage parity, and session semantics by @monocongo in #1447
- fix(xarray): reject unknown adapter keyword arguments by @the8thbit in #1449
- docs(icechunk): add an SPI/SPEI example notebook by @monocongo in #1450
- fix(deps): bump pillow to 13.0.0 for Python 3.11+ to resolve Dependabot alerts by @monocongo in #1451
- fix(pnp): align metadata and docs with ratio outputs by @monocongo in #1453
- feat(cli): offer hourly periodicity for the standardized energy indices by @monocongo in #1455
- build(deps): bump nbconvert from 7.17.1 to 7.17.2 in the security-updates group across 1 directory by @dependabot[bot] in #1457
- feat(xarray): promote DataArray index APIs to stable by @monocongo in #1456
- docs(release): define the 3.1.0 scope and admission rule by @monocongo in #1467
- docs(xarray): reconcile 3.1.0 API migration records by @monocongo in #1468
- chore(release): prepare the climate-indices crate 0.1.0 by @monocongo in #1471
- docs(release): refresh the front-door documents for 3.1.0 by @monocongo in #1469
- test(release): guard the 3.1.0 public surface, Icechunk optionality, and crate release rules by @monocongo in #1472
- docs(icechunk): document the optional Icechunk I/O integration and its extra by @monocongo in #1473
- docs(release): prepare the 3.1.0 changelog, release notes, and migration records by @monocongo in #1475
- docs(release): record the crate 0.1.0 release by @monocongo in #1474
- test(energy): skip the checkout-only tutorial tests against an installed wheel by @monocongo in #1479
New Contributors
- @the8thbit made their first contribution in #1449
Full Changelog: v3.0.0...v3.1.0