Recent Releases of Open Sustainable Technology Projects
dataRetrieval - v2.7.25
- Added read_waterdata_ratings to access USGS rating curves with
new modern endpoint. - Added read_waterdata_peaks to access USGS peak data with
new modern endpoint. - Increase flexibility of chunking by monitoring_location_id by
including it as an argument in each relevant waterdata OGC function. - Clean up deprecated code.
- Updated retry strategy to include retry_on_failure = TRUE.
- Added countries, methods, method-categories, method-citations, and
citations to possible values in read_waterdata_metadata. - Added field_measurements_series_id argument to read_waterdata_field_measurement
- Removed NWIS tests
- Introduce an error if user inputs a numeric to any of the "time" arguments.
Because it is impossible to tell if they intended Dates or POSIX, we cannot
know for sure and therefore could add incorrect filters to the query. - The "id" column that comes back from read_waterdata_field_meta was changed to
field_measurements_series_id to match the expectation ofread_waterdata_field_measurements - New argument added to read_waterdata_stats_por: "normal_type" accepts
"DOY" and "MOY" - New argument added to read_waterdata_stats_daterange: "interval_type" accepts
"M" (month), "CY" (calendar year), and "WY" (water year).
Natural Resources - Water Supply and Quality
- R
Published by ldecicco-USGS 24 days ago
cellpy - v2.1.1.post4
What's Changed
- App-friendly collected figures: theme / label / height hooks (#801) by @jepegit in https://github.com/jepegit/cellpy/pull/808
- Add issue-flow as a uv dev dependency (#809) by @jepegit in https://github.com/jepegit/cellpy/pull/810
- feat(batch): load custom/BatBase JSON with file search (#345) by @jepegit in https://github.com/jepegit/cellpy/pull/811
- feat: add cellpy.read_meta for cheap metadata peeks (#799) by @jepegit in https://github.com/jepegit/cellpy/pull/812
- feat: instrument_meta_schema for ingestion forms (#800) by @jepegit in https://github.com/jepegit/cellpy/pull/813
- chore(release): prep v2.1.1.post4 + fix release alias by @jepegit in https://github.com/jepegit/cellpy/pull/814
Full Changelog: https://github.com/jepegit/cellpy/compare/v2.1.1.post3...v2.1.1.post4
Energy Storage - Battery
- Python
Published by jepegit 24 days ago
camtrapdp - camtrapdp 0.6.0
- camtrapdp now relies on R >= 4.1.0 and uses base pipes (
|>rather than%>%) (#209). - camtrapdp now relies on
{frictionless}>= 1.3.0 (#217).
Biosphere - Terrestrial Wildlife
- R
Published by peterdesmet 24 days ago
MSC AniMet - 2.6.0
Tag release version 2.6.0
New Contributors
- @BrunoFang made their first contribution in https://github.com/ECCC-MSC/msc-animet/pull/215
Full Changelog: https://github.com/ECCC-MSC/msc-animet/compare/2.5.3...2.6.0
Atmosphere - Meteorological Observation and Forecast
- JavaScript
Published by kngai 24 days ago
SINDBAD - SindbadTEM-v0.1.3
SindbadTEM SindbadTEM-v0.1.3
- Add fire-disturbance process suite: cFireBurnedArea (forcing/none), cFireCombustionCompleteness (vanDerWerf2006/none), cFireMortality (vanDerWerf2004/none), and cCycleDisturbance_WROASTEDMortality linking fire mortality into carbon-cycle disturbance.
- Add defaultVariableInfo helper for default (empty) SINDBAD variable-info dictionaries.
Merged pull requests:
- Fuse broadcast in backScaleParameters (#73) (@felixcremer)
- global run, manual rebase (#74) (@lazarusA)
- Switch the runTEMYAX code to use xmap (#78) (@felixcremer)
- include 0.10 (#82) (@lazarusA)
- add run_lazy option to force set all relevant options to YAXArray (#85) (@dr-ko)
- use time name from settings (#93) (@dr-ko)
- Sk/wisp runs (#95) (@dr-ko)
- fire models (#96) (@lazarusA)
- Sk/build 1.10 (#97) (@dr-ko)
- fix units in variable info (#98) (@dr-ko)
- Sk/fallbacks (#99) (@dr-ko)
- Sk/extensions (#100) (@dr-ko)
- Sk/load data (#101) (@dr-ko)
- remove deprecated use_forward_diff (#102) (@dr-ko)
- add parameters access by name (#103) (@dr-ko)
- bump julia version (#104) (@dr-ko)
- minify examples to couple of setups and runs (#105) (@dr-ko)
- CI cleanup: fix and restructure the Execution Report workflow (#106) (@dr-ko)
- test simulations (#107) (@dr-ko)
- Stop deploydocs from pushing PR preview builds to gh-pages (#108) (@dr-ko)
- Sk/sanitize examples dir (#109) (@dr-ko)
- Sk/examples stripped (#110) (@dr-ko)
- Reduce per-push CI cost, add on-demand full-matrix/simulation checks β¦ (#111) (@dr-ko)
Closed issues:
- @unpack_nt should unpack all slots of NamedTuple if there not assignments. (#49)
- Error thrown when loading a Optimizer that needs weakdep should clarify this (#65)
- OmniTools dependency (double maintenance) (#72)
- Fix inconsistent spelling of YAXArray in settings (#76)
- Make lazy exe_rule which would set all relevant settings (#77)
- move FIGlet to ext (#79)
- move Plots to ext (#80)
- ci for julia 1.10 is not passing (#81)
- getVariableInfo is not returning units (#87)
- Remove loadDataFile and replace it by YAXArrays.open_dataset (#88)
- Support names of parameters in output of calibration (#90)
- forcing time dimension is not recognised after the latest merge for non lazy runs (#92)
Emissions - Emission Observation and Modeling
- Julia
Published by github-actions[bot] 24 days ago
PyPSA-SPICE - v2.1.0
v2.1.0 (2026-07-31)
Fixed
- Fix correct barmode in plotly to display right stacked column charts. (:material-source-pull:111 by @RichChang963)
- Fix error handling of missing p_max_pu for generators and links. (:material-source-pull:107 by @RichChang963)
Changed
- Add streamlit-extra pacakge and enhance addtional features in PyPSA-SPICE-Vis. (:material-source-pull:105 by @RichChang963)
- Consolidate all pip package installations into the
environment.yamlfile and removing the previousrequirements.txtfile to simplifies dependency management for new users (:material-source-pull:117 by @nhlong2701) - Change website link display. (:material-source-pull:110 by @RichChang963)
- Remove polyfill package to enhance website security. (:material-source-pull:113 by @RichChang963)
Notes
- New Streamlit-extras package: We have added a streamlit-extra
v1.5.0and encourage users to upgrade their environments (usingconda env update -f envs/environment.yaml --prune) to ensure full compatibility with the latest features and improvements.
Full Changelog: https://github.com/agoenergy/pypsa-spice/compare/v2.0.0...v2.1.0
Energy Systems - Energy System Modeling Frameworks
- Python
Published by nhlong2701 24 days ago
EcoAssist - AddaxAI v7.0.3
Mostly a fix release for videos.
- Videos are labelled by what is really in them. A person walking past a camera could end up filed as a chimpanzee.
- The Labels page shows one card per video, not one per frame. A 30 second clip used to give 30 cards.
- Label filter counts match what you can see. Picking a species no longer gives an empty screen.
- Installed models keep themselves up to date. Corrected species lists reach you without a reinstall.
- The Help menu links to the docs and troubleshooting pages. docs.addaxai.com is live.
- A failed analysis says what went wrong, and offers a diagnostic report button.
Biosphere - Terrestrial Wildlife
- Python
Published by PetervanLunteren 24 days ago
ibicus - v1.3.1
Small bugfixes:
- ISIMIP debiaser: Adjusted distribution fitting to be on np.float64, added an option to manually adjust the KS goodness of fit threshold for parametric fitting and reduced the default argument to 0.15, fixing #40.
- ISIMIP debiaser: ensured that the scaling of how many values are set to the respective upper and lower bound should be symmetric in the rare cases where more values than available in cm_future need to be set.
Full Changelog: https://github.com/ecmwf-projects/ibicus/compare/v1.3.0...v1.3.1
Climate Change - Climate Data Processing and Analysis
- Jupyter Notebook
Published by jakobwes 24 days ago
Ecoscope - v2.17.5
What's Changed
Other Changes
- feat: combined patrol download config task (set_patrol_download_params) by @Yun-Wu in https://github.com/wildlife-dynamics/ecoscope/pull/793
Full Changelog: https://github.com/wildlife-dynamics/ecoscope/compare/v2.17.4...v2.17.5
Biosphere - Conservation and Restoration
- Python
Published by github-actions[bot] 24 days ago
Polaris - v1.0.0
What's Changed
- Update to 1.0.0 alpha.1 by @xylar in https://github.com/E3SM-Project/polaris/pull/502
- Move
polaris.paralleltomache.parallelby @xylar in https://github.com/E3SM-Project/polaris/pull/474 - Switch deployment to
mache.deployby @xylar in https://github.com/E3SM-Project/polaris/pull/501 - Make sure auto-build raises an error on build failures by @xylar in https://github.com/E3SM-Project/polaris/pull/498
- Update Omega submodule by @xylar in https://github.com/E3SM-Project/polaris/pull/508
- Update e3sm_update utility for new deployment by @xylar in https://github.com/E3SM-Project/polaris/pull/507
- Update to PCD 0.1.0 by @xylar in https://github.com/E3SM-Project/polaris/pull/505
- Update to 1.0.0-alpha.2 by @xylar in https://github.com/E3SM-Project/polaris/pull/509
- Update to 1.0.0-alpha.3 by @xylar in https://github.com/E3SM-Project/polaris/pull/512
- Add design doc for vector reconstruction by @xylar in https://github.com/E3SM-Project/polaris/pull/514
- Add AI (Codex and Copilot) instructions by @xylar in https://github.com/E3SM-Project/polaris/pull/515
- Remove YAKL as Omega build dependency by @cbegeman in https://github.com/E3SM-Project/polaris/pull/518
- Update convergence thresholds for
qu/rotation_2dtest by @cbegeman in https://github.com/E3SM-Project/polaris/pull/517 - Modify AI agent instructions by @xylar in https://github.com/E3SM-Project/polaris/pull/520
- Update Omega submodule by @xylar in https://github.com/E3SM-Project/polaris/pull/524
- Drop
externals/cpptraceand update Omega submodule by @xylar in https://github.com/E3SM-Project/polaris/pull/523 - Write scrip files in topo/cull by @xylar in https://github.com/E3SM-Project/polaris/pull/525
- Update to v1.0.0-alpha.4 to fix xarray dataset copy by @xylar in https://github.com/E3SM-Project/polaris/pull/530
- Turn off HPG term in tests that do not require it by @sbrus89 in https://github.com/E3SM-Project/polaris/pull/529
- Remove nVertLevels from Coriolis variables in overflow test case by @mark-petersen in https://github.com/E3SM-Project/polaris/pull/532
- Optionally produce coeffs_reconstruct stream for MPAS-O, link coeffs file from database for Omega by @cbegeman in https://github.com/E3SM-Project/polaris/pull/448
- Detect Omega build type by @xylar in https://github.com/E3SM-Project/polaris/pull/540
- Generalize
topo/combineto work on lat-lon grids by @xylar in https://github.com/E3SM-Project/polaris/pull/526 - Update Omega submodule to develop by @xylar in https://github.com/E3SM-Project/polaris/pull/542
- Switch update_permissison() to the mache version by @xylar in https://github.com/E3SM-Project/polaris/pull/539
- Set parallel system for all components by @xylar in https://github.com/E3SM-Project/polaris/pull/546
- Move
e3sm/inittopo resolution support into the framework by @xylar in https://github.com/E3SM-Project/polaris/pull/547 - Get GEBCO and Bedmap3 from public URLS by @xylar in https://github.com/E3SM-Project/polaris/pull/548
- Udpate Omega submodule by @xylar in https://github.com/E3SM-Project/polaris/pull/549
- Update to v1.0.0-alpha.5 by @andrewdnolan in https://github.com/E3SM-Project/polaris/pull/552
- Add Omega horizontal pressure gradient tests by @xylar in https://github.com/E3SM-Project/polaris/pull/465
- Move critical passages/blockages to mesh framework by @xylar in https://github.com/E3SM-Project/polaris/pull/557
- Port WOA23 extrapolation from Compass by @xylar in https://github.com/E3SM-Project/polaris/pull/528
- adds cron scripts for nightly tests by @grnydawn in https://github.com/E3SM-Project/polaris/pull/482
- Make provenance find pixi more reliably by @xylar in https://github.com/E3SM-Project/polaris/pull/555
- Create and use utility to get
daysSinceStartofSimfrom a dataset or derive it from a dataset containingxtimeorTimeby @cbegeman in https://github.com/E3SM-Project/polaris/pull/559 - Fix barotropic gyre configuration by @cbegeman in https://github.com/E3SM-Project/polaris/pull/553
- Update submodule and tests with constant EOS type by @cbegeman in https://github.com/E3SM-Project/polaris/pull/551
- Update the paths to the scratch files system for nightly testing by @grnydawn in https://github.com/E3SM-Project/polaris/pull/564
- Fixup constant EOS by @cbegeman in https://github.com/E3SM-Project/polaris/pull/565
- Move
horiz_press_gradtests fromoceantoocean/columnin working directory by @cbegeman in https://github.com/E3SM-Project/polaris/pull/566 - Add pseudothickness to write_model_dataset for Omega by @cbegeman in https://github.com/E3SM-Project/polaris/pull/460
- Bugfix for adding pseudothickness to ocean model datasets by @cbegeman in https://github.com/E3SM-Project/polaris/pull/568
- Install pre-commit during deploy by @xylar in https://github.com/E3SM-Project/polaris/pull/569
- Take advantage of xarray's decode_times for Omega's time variable conversion by @cbegeman in https://github.com/E3SM-Project/polaris/pull/570
- Update cron scripts to clean up previous tests and make additional improvements by @grnydawn in https://github.com/E3SM-Project/polaris/pull/574
- Switch functions for creating shared steps to return dicts by @xylar in https://github.com/E3SM-Project/polaris/pull/575
- Update to v1.0.0-alpha.7 and mpas_tools 1.6.0 by @xylar in https://github.com/E3SM-Project/polaris/pull/578
- Fix caching shared steps by @xylar in https://github.com/E3SM-Project/polaris/pull/577
- Update pre-commit dependencies to use pre-commit-update by @xylar with @Claude in https://github.com/E3SM-Project/polaris/pull/583
- Add Omega support for the overflow test by @hyungyukang in https://github.com/E3SM-Project/polaris/pull/572
- Include Omega fields needed for p* coordinate in initial conditions by @xylar in https://github.com/E3SM-Project/polaris/pull/573
- Add omega support for time-variant sphere transport flows by @cbegeman in https://github.com/E3SM-Project/polaris/pull/500
- Add coastline extraction capability to
meshby @xylar in https://github.com/E3SM-Project/polaris/pull/545 - Add Antarctic boundary convention by @xylar in https://github.com/E3SM-Project/polaris/pull/585
- Update overflow documentation with figure from Omega by @cbegeman in https://github.com/E3SM-Project/polaris/pull/586
- Add river-network preprocessing for the unified MPAS mesh by @xylar in https://github.com/E3SM-Project/polaris/pull/556
- Add workflow for computing sizing field (cell width) for the unified MPAS mesh by @xylar in https://github.com/E3SM-Project/polaris/pull/561
- Add support for Omega's
PseudoThicknessvariable by @xylar in https://github.com/E3SM-Project/polaris/pull/440 - Make
oneapi-ifxthe default compiler on Chrysalis by @xylar in https://github.com/E3SM-Project/polaris/pull/587 - Add unified base mesh by @xylar in https://github.com/E3SM-Project/polaris/pull/588
- Add a design documents for the unified base mesh by @xylar in https://github.com/E3SM-Project/polaris/pull/521
- Update to v1.0.0-alpha.8 with mache v3.7.0 by @xylar in https://github.com/E3SM-Project/polaris/pull/591
- Split horiz. mesh, init. vert. coord. and init. state into separate files by @xylar in https://github.com/E3SM-Project/polaris/pull/544
- Fix pre-commit-update workflow by @xylar in https://github.com/E3SM-Project/polaris/pull/595
- Move WOA23 hydrography task and steps to
realistic_globalby @xylar in https://github.com/E3SM-Project/polaris/pull/598 - Fix model in horiz_press_grad task family by @xylar in https://github.com/E3SM-Project/polaris/pull/601
- Fix enabling/disabling horiz. press. grad. tendency by @xylar in https://github.com/E3SM-Project/polaris/pull/590
- Update to v1.0.0-alpha.9 and mache v3.7.1 by @xylar in https://github.com/E3SM-Project/polaris/pull/607
- Add overflow tests using higher order advection by @xylar in https://github.com/E3SM-Project/polaris/pull/603
- Add omega support for baroclinic channel case by @sbrus89 in https://github.com/E3SM-Project/polaris/pull/576
- Cleanup Omega yaml defaults by @cbegeman in https://github.com/E3SM-Project/polaris/pull/589
- Fix vert_coord inputs for viz/analysis steps by @xylar in https://github.com/E3SM-Project/polaris/pull/605
- Add
surfacePressureto Omega initial conditions by @xylar in https://github.com/E3SM-Project/polaris/pull/610 - Add p-star vertical coordinate initialization base class by @xylar in https://github.com/E3SM-Project/polaris/pull/597
- _plot_cell_width bugfix by @cbegeman in https://github.com/E3SM-Project/polaris/pull/618
- Rework the
horiz_press_gradreference solution by @xylar in https://github.com/E3SM-Project/polaris/pull/613 - Fix
barotropic_channelomega support by @cbegeman in https://github.com/E3SM-Project/polaris/pull/623 - update call to compute_barotropic_streamfunction by @alicebarthel in https://github.com/E3SM-Project/polaris/pull/626
- renamed windForcing to match upcoming omega options by @alicebarthel in https://github.com/E3SM-Project/polaris/pull/602
- Fix half-globe clipping in plot_global_mpas_field by @xylar in https://github.com/E3SM-Project/polaris/pull/635
- Load vert_coord_vars lazily in open_vert_coord_dataset by @xylar in https://github.com/E3SM-Project/polaris/pull/636
- Update to mpas_tools 2.0.0 by @xylar in https://github.com/E3SM-Project/polaris/pull/632
- Add additional pseudo-* variables to omega/mpas-o conversion by @cbegeman in https://github.com/E3SM-Project/polaris/pull/621
- docs: clarify
-pauto-build behavior forpolaris setupandpolaris suiteby @xylar with @Copilot in https://github.com/E3SM-Project/polaris/pull/656 - Disable vertical mixing tendencies for selected
omega_prtests by @hyungyukang in https://github.com/E3SM-Project/polaris/pull/650 - moved wind forcing to separate forcing io by @alicebarthel in https://github.com/E3SM-Project/polaris/pull/646
- Port all
baroclinic_channeltests for Omega by @cbegeman in https://github.com/E3SM-Project/polaris/pull/628 - Fix GPU compiler not shown in omega_pr_output_for_pr.md by @xylar with @Copilot in https://github.com/E3SM-Project/polaris/pull/651
- Use sphinx-jinja to provide supported machines in yaml format by @cbegeman in https://github.com/E3SM-Project/polaris/pull/657
- Require state vars in
write_initial_state_dataset, including surface pressure by @cbegeman in https://github.com/E3SM-Project/polaris/pull/615 - Drop support for AMD compiler on Frontier by @cbegeman in https://github.com/E3SM-Project/polaris/pull/662
- Add del4 variant of overflow test case by @cbegeman in https://github.com/E3SM-Project/polaris/pull/642
- Support geostrophic tasks for Omega by @cbegeman in https://github.com/E3SM-Project/polaris/pull/622
- Fixup surface pressure provenance by @cbegeman in https://github.com/E3SM-Project/polaris/pull/661
- Add all horizontal advection orders with del4 to overflow by @sbrus89 in https://github.com/E3SM-Project/polaris/pull/669
- Add
surface_pressure_gradient testtohoriz_press_gradby @xylar in https://github.com/E3SM-Project/polaris/pull/629 - Add p-star and TEOS-10 (or JM) versions of overflow by @xylar in https://github.com/E3SM-Project/polaris/pull/670
- Vector reconstruction at cells and vertices following Peixoto and Barros (2014) by @andrewdnolan in https://github.com/E3SM-Project/polaris/pull/649
- Update Omega sbumodule by @xylar in https://github.com/E3SM-Project/polaris/pull/676
- Fix u.oi30.lr10 culling by @xylar in https://github.com/E3SM-Project/polaris/pull/672
- Adds cronjob support for Aurora system by @grnydawn in https://github.com/E3SM-Project/polaris/pull/641
New Contributors
- @hyungyukang made their first contribution in https://github.com/E3SM-Project/polaris/pull/572
- @alicebarthel made their first contribution in https://github.com/E3SM-Project/polaris/pull/626
Full Changelog: https://github.com/E3SM-Project/polaris/compare/0.10.0...1.0.0
Cryosphere - Sea Ice
- Python
Published by xylar 24 days ago
Deadtrees.earth - v2026.07.31
What's Changed
Frontend
- feat(priwa): add editable flight review workflow by @JesJehle in https://github.com/Deadwood-ai/deadtrees/pull/518
Full Changelog: https://github.com/Deadwood-ai/deadtrees/compare/v2026.07.20...v2026.07.31
Biosphere - Forest Remote Sensing
- TypeScript
Published by github-actions[bot] 24 days ago
GISWATER - v4.16.1
π½ Read the summarized changelog here π½
Added
- Show hydraulic steps progress in EPA Execute dialog.
Changed
- Improve EPA Execute cancel behavior.
- Improve general progress display in EPA Execute dialog.
Fixed
- Ensure QPIP dependency folder stays on
sys.pathwhen QPIP is disabled or uninstalled. - Fix open advanced settings dialog.
- Update database connection handling.
- Update condition to exclude 'MINSECTOR' in query text exploitation.
- Comment out repeated paths check for future consideration
- Reorder utilities icons list.
- Fix
gw_fct_linktonetworkfunction to addminPipeDiametervariable for massive process and adjust diameter comparison logic.
Full Changelog: https://github.com/giswater/plugin/compare/v4.16.0...v4.16.1
π Check the official documentation here: βοΈβπ₯ Giswater Documentation
Natural Resources - Water Supply and Quality
- PLpgSQL
Published by danimarinBG 24 days ago
Thermofeel - 2.3.0
- Added a scientific validation campaign under
validation/for every method
new in this release: per-index methodology READMEs, runnable validation
scripts with pre-registered acceptance criteria, and versioned result tables
and plots. Evidence includes the ISO 7730:2005 Annex D table and 58k ASHRAE
Thermal Comfort Database II field records (PMV/PPD), NOAA SURFRAD ground
observations and the live IFS open-data pipeline (fdir estimators), the NREL
SPA ephemeris (Earth-Sun distance factor), and independent peer-reviewed
implementations/transcriptions (pythermalcomfort, pvlib, BoM/Asghari forms)
for the simple heat indices. Installpip install thermofeel[validation]to
run; seevalidation/README.mdfor the verdict table (all PASS). - Added
calculate_discomfort_index: Thom's Discomfort Index (Temperature-
Humidity Index) from 2 m temperature and relative humidity, returning Kelvin.
Implements the Celsius/relative-humidity formulation of Thom's index given by
Giles et al. (1990, https://doi.org/10.1007/BF01093455),
DI = T - 0.55 (1 - 0.01 RH)(T - 14.5); the index originates with Thom (1959,
https://doi.org/10.1080/00431672.1959.9926960). Validated against analytic
reference values (including the RH=100% -> DI=Ta and T=14.5 Β°C -> DI=14.5 Β°C
identities) and pinned by a regression CSV. Adds a guide page. See also the
review Epstein & Moran (2006, https://doi.org/10.2486/indhealth.44.388), which
uses a different wet-bulb formulation. - Added a batch of new thermal indices (all vectorised, SI in/out, each cited
and validated against published/independent references; see the per-index
guide pages underdocs/guide/):calculate_apparent_temperature_radiation: the radiation-inclusive
Steadman/BoM Apparent Temperature from 2 m temperature, 10 m wind, relative
humidity and a caller-supplied body-absorbed net radiationq
(Steadman 1994, https://doi.org/10.1071/es94001; Australian BoM).calculate_relative_strain_index: the Relative Strain Index from 2 m
temperature and relative humidity (Lee & Henschel 1966,
https://doi.org/10.1111/j.1749-6632.1966.tb43059.x; hPa closed form and
bands from Asghari et al. 2020, https://doi.org/10.2174/1874213002013010011).calculate_summer_simmer_index: Pepi's Summer Simmer Index (common 1987
closed form, an affine transform of Thom's THI) from 2 m temperature and
relative humidity (Pepi 1987, https://doi.org/10.1080/00431672.1987.9933356;
equation reproduced from secondary sources β see the guide).calculate_pmvandcalculate_ppd: Fanger's Predicted Mean Vote and
Predicted Percentage of Dissatisfied (ISO 7730:2005; Fanger 1970), from air
and mean-radiant temperature, body-level air velocity, humidity, metabolic
rate and clothing insulation; validated against the ISO 7730 Annex D table.
- Modernised the
examples/scripts and notebook to the ECMWF earthkit 1.0
stack (earthkit-data / earthkit-meteo / earthkit-plots):compute-thermal-indices.py
now fetches gridded ECMWF forecasts online (open data, Polytope or MARS, or a
local file) and writes GRIB/NetCDF;compute-obs.pycomputes indices from
near-real-time station METARs; the notebook draws maps with earthkit-plots.
Removed orphaned example data files. Install withpip install thermofeel[examples].
(Examples are not part of the shipped library.) - Added the
thermofeel.approximationsnamespace (namespace-only, not
re-exported at the top level) with estimators of the direct solar radiation
fdirfrom global radiationssrd+ solar geometry, for datasets that lack
it:approximate_fdir_erbs(Erbs et al. 1982, with an optional Earth-Sun
distance correction) andapproximate_fdir_disc(DISC; Maxwell 1987). Both
reproducepvlibto machine precision (validation oracle only). The
compute-thermal-indices.pyexample exposes them via
--approximate-fdir[=erbs|disc].
Consumption - Buildings and Heating
- Python
Published by tlmquintino 24 days ago
Social Income - release-2026-31-07
What's Changed
- chore(deps): update dependency jdx/mise to v2026.7.11 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2451
- chore(deps): update dependency postcss to v8.5.20 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2456
- chore(deps): update dependency firebase-tools to v15.24.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2393
- chore(deps): update actions/setup-node digest to 2499707 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2443
- chore(deps): bump dompurify from 3.4.11 to 3.4.12 in /website by @dependabot[bot] in https://github.com/socialincome-san/public/pull/2446
- chore(deps): update dependency knip to v6.27.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2455
- chore(deps): update dependency typescript-eslint to v8.64.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2457
- feat(website): add Content-Security-Policy and security headers by @rawi96 in https://github.com/socialincome-san/public/pull/2454
- chore: run Renovate only outside office hours by @rawi96 in https://github.com/socialincome-san/public/pull/2460
- fix(website): allow Cloudflare Insights and Mux Data in CSP by @rawi96 in https://github.com/socialincome-san/public/pull/2461
- feat: campaigns overview by @MumenthalerManuel in https://github.com/socialincome-san/public/pull/2466
- fix(deps): update dependency @sentry/nextjs to v10.66.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2459
- chore(deps): update storybook monorepo to v10.5.2 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2458
- fix(deps): update dependency @storyblok/js to v6.3.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2464
- fix(deps): update dependency @stripe/react-stripe-js to v6.8.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2465
- fix: adjust fontsize in country statistics by @MumenthalerManuel in https://github.com/socialincome-san/public/pull/2486
- Mobile App: Remove dashboard item which asks the user if he want to set the payment number as contact number by @KarinBerg in https://github.com/socialincome-san/public/pull/2489
- chore(deps): update dependency jdx/mise to v2026.7.12 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2491
- Mobile App: Introduce an explicit exception for app attestation errors by @KarinBerg in https://github.com/socialincome-san/public/pull/2490
- fix(deps): update dependency next to v16.2.11 [security] by @renovate[bot] in https://github.com/socialincome-san/public/pull/2482
- chore(deps): update dependency storyblok to v4.19.3 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2492
- chore(deps): update storybook monorepo to v10.5.3 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2495
- fix(deps): update dependency @scalar/api-reference-react to v0.9.59 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2496
- chore(deps): update dependency eslint-config-next to v16.2.11 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2498
- chore(deps): update dependency postcss to v8.5.21 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2500
- chore(deps): update dependency prettier to v3.9.6 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2501
- chore(deps): update dependency jdx/mise to v2026.7.13 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2499
- fix(deps): update radix-ui-primitives monorepo by @renovate[bot] in https://github.com/socialincome-san/public/pull/2510
- Update label casing in bug report template by @ssandino in https://github.com/socialincome-san/public/pull/2511
- chore(deps): update dependency postcss to v8.5.22 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2504
- fix(deps): update react monorepo to v19.2.8 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2514
- chore(deps): update dependency ts-jest to v29.4.12 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2506
- chore(deps): update dependency knip to v6.29.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2507
- Update label casing in feature request template by @ssandino in https://github.com/socialincome-san/public/pull/2513
- chore(deps): update dependency typescript-eslint to v8.65.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2517
- fix(deps): update surveyjs monorepo to v2.5.35 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2515
- chore(deps): update dependency storyblok to v4.20.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2516
- fix(deps): update dependency @stripe/stripe-js to v9.12.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2520
- fix(deps): update dependency @sentry/nextjs to v10.67.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2518
- Adjust code owners for mobile app md files by @KarinBerg in https://github.com/socialincome-san/public/pull/2493
- fix(deps): update dependency isomorphic-dompurify to v3.19.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2521
- Fix several things from the PO review by @KarinBerg in https://github.com/socialincome-san/public/pull/2524
- Update dependency jdx/mise to v2026.7.14 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2522
- Replace dependency npm-run-all with npm-run-all2 5.0.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2525
- Update actions/checkout digest to 3d3c42e by @renovate[bot] in https://github.com/socialincome-san/public/pull/2526
- Update dependency @mux/mux-video-react to v0.31.2 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2528
- Update dependency npm-run-all2 to v5.0.2 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2530
- Update dependency lucide-react to v1.26.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2523
- Update radix-ui-primitives monorepo by @renovate[bot] in https://github.com/socialincome-san/public/pull/2512
- Update dependency jdx/mise to v2026.7.15 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2533
- Update dependency @hookform/resolvers to v5.4.1 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2535
- Update radix-ui-primitives monorepo by @renovate[bot] in https://github.com/socialincome-san/public/pull/2536
- Update dependency postcss to v8.5.23 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2534
- Journal: Adding spacing btw lead and breadcrumb by @ssandino in https://github.com/socialincome-san/public/pull/2462
- Lock file maintenance by @renovate[bot] in https://github.com/socialincome-san/public/pull/2529
- Journal: add home icon for breadcrumb on mobile by @ssandino in https://github.com/socialincome-san/public/pull/2463
- fix(ui): perfectly center multi-select tag remove icons (#2401) by @debkarma in https://github.com/socialincome-san/public/pull/2470
- fix(ui): add bottom padding to impact measurement page (#2468) by @debkarma in https://github.com/socialincome-san/public/pull/2474
- feat(ui): add disable margin options to FAQ component (#2472) by @debkarma in https://github.com/socialincome-san/public/pull/2476
- Align local partner social links by @sean-camara in https://github.com/socialincome-san/public/pull/2480
- Fix focus filter widths on small screens by @sean-camara in https://github.com/socialincome-san/public/pull/2478
- Web: Person grid component by @ssandino in https://github.com/socialincome-san/public/pull/2527
- Update nextjs monorepo to v16.2.12 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2539
- Journal: Small fix for footnote component by @ssandino in https://github.com/socialincome-san/public/pull/2494
- Update storybook monorepo to v10.5.4 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2540
- Update dependency jdx/mise to v2026.7.16 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2545
- Update dependency @hookform/resolvers to v5.5.7 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2538
- Update dependency @sentry/nextjs to v10.68.0 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2541
- Update aikidosecurity/local-scanner:latest Docker digest to a9e482b by @renovate[bot] in https://github.com/socialincome-san/public/pull/2555
- Update github/codeql-action digest to f205ea1 by @renovate[bot] in https://github.com/socialincome-san/public/pull/2556
- Update Node.js to f70403e by @renovate[bot] in https://github.com/socialincome-san/public/pull/2558
New Contributors
- @debkarma made their first contribution in https://github.com/socialincome-san/public/pull/2470
- @sean-camara made their first contribution in https://github.com/socialincome-san/public/pull/2480
Full Changelog: https://github.com/socialincome-san/public/compare/release-2026-22-07...release-2026-31-07
Sustainable Development - Population and Poverty
- TypeScript
Published by MumenthalerManuel 24 days ago
CLEO - v0.68.1
v0.68.1 - 2026-07-31
Bug Fixes
- missing stdexcept lib - (495d0ee) - clara.bayley
- creation of b4 array must come before call to get_local_bounding_gridbox_index - (0db63b3) - clara.bayley
- for adia0d - (10ed505) - Harshada Balasubramanian
- Kokkos Abort and runtime Error - (2972088) - Harshada Balasubramanian
- typos for debug mode - (e981a97) - Harshada Balasubramanian
- introduce -DCMAKE_BUILD_TYPE= - (c6df85d) - Harshada Balasubramanian
Miscellaneous Chores
- (version) v0.68.1 - (8cfdb97) - yoctoyotta1024
- formatting and remove unused cassert lib - (b0cd77b) - clara.bayley
- extend logic for gridbox - (6172e99) - Harshada Balasubramanian
- wrap sdinit check inside NDEBUG macro - (ff77655) - Harshada Balasubramanian
Refactoring
- rename BUILD_TYPE to CLEO_CMAKE_BUILD_TYPE - (f99e09b) - clara.bayley
- use std runtime error instead of kokkos abort in cvode solver - (0c899f7) - clara.bayley
- use DEBUG flag for more print statements - (0203003) - clara.bayley
- pass Debug to CMAKE build as flag if CLEO_ENABLEDEBUG is true - (b23a5ff) - clara.bayley
Atmosphere - Atmospheric Chemistry and Aerosol
- C++
Published by github-actions[bot] 24 days ago
Ecoscope - v2.17.4
What's Changed
Other Changes
- ERDW-247: Sort relocations by fixtime for DWH row-order parity by @marianobrc in https://github.com/wildlife-dynamics/ecoscope/pull/796
- allow
decimal_places=Nonein StatSummaryParam for Timestamp aggregations by @zakhusayn in https://github.com/wildlife-dynamics/ecoscope/pull/798
Full Changelog: https://github.com/wildlife-dynamics/ecoscope/compare/v2.17.3...v2.17.4
Biosphere - Conservation and Restoration
- Python
Published by github-actions[bot] 24 days ago
gbif.range - gbif.range 1.9.1
Biosphere - Biodiversity Data Access and Management
- R
Published by 8Ginette8 24 days ago
frasyr - v2.6.0.1
What's Changed
- Fix rvpa tmb m pi by @ShotaNishijima in https://github.com/ichimomo/frasyr/pull/928
- revise retro.est to deal with NA by @ShotaNishijima in https://github.com/ichimomo/frasyr/pull/929
Full Changelog: https://github.com/ichimomo/frasyr/compare/v2.6.0.0...v2.6.0.1
Biosphere - Marine Life and Fishery
- R
Published by github-actions[bot] 24 days ago
CoastSeg - v2.0.4
Sentinel-1 (SAR) workflow update
Sentinel-1 support has been overhauled. CoastSeg now downloads both the VV and VH polarizations
instead of VH alone, and maps shorelines with a new 3-band SAR segmentation model instead of an
Otsu threshold.
Highlights
-
Sentinel-1 downloads now fetch VV and VH
- Previously CoastSeg requested
VHonly, so each scene was a single band. - The new model needs both polarizations, so both the VV and VH are downloaded by default.
- Action required: ROIs downloaded before this release are VH-only. Re-run the download for
those sites and the missing band is fetched, overwriting the existing scenes in place.
- Previously CoastSeg requested
-
New 3-band SAR segmentation model
- Each scene is stacked into a
[VV, VH, VV-VH]dB composite, so the model sees a much more
detailed version of the same acquisition than a single grey band when only the VH was used. - VV, VH and VV-VH respond differently to water, wet sand, vegetation and urban
surfaces. - The new SAR model is hosted on Hugging Face at
2320sharon/SAR_3_band_model.
- Each scene is stacked into a
-
The new SAR 3 band model is now the default for SAR in both workflows
- It runs in the CoastSat workflow (
extract_all_shorelines) and the Zoo workflow
(4_zoo_workflow_SAR.pyand the SAR notebook) with no settings change. - Nothing downstream changed: the shoreline is still the land/water boundary inside the reference
shoreline buffer, so transects, tide correction and sessions behave as before. - The SAR model runs in-process through
onnxruntime, so unlike the other Zoo models it does
not need thesegmentation_workflowenvironment.
- It runs in the CoastSat workflow (
-
Otsu thresholding is now only a fallback method for SAR
- Set
sar_segmentation = "otsu"to force it, or let CoastSeg use it automatically when the model
cannot be loaded (noonnxruntime, no internet on first use, a badsar_model_path). - Otsu needs a cleanly bimodal backscatter histogram, so it drifts on wind-roughened water, wet
sand and radar shadow, and the drift changes from date to date. Below is the same scene with the
same settings β only the segmentation differs.
- Set
Getting the model
- By default, do nothing. The model (~130 MB) is not shipped with CoastSeg. On the first SAR run
it is downloaded from Hugging Face into a per-user cache folder outside the repository, so both
workflows share one copy and later runs reuse it. - To download it manually (offline machines, restricted networks, or your own retrained model),
getSAR_3_band_model.onnxfrom
Hugging Face and save it to
CoastSeg/models/SAR_segmentation_model/. A model in that folder always wins over the download and
both workflows find it with no settings change. - To load one from anywhere else, point the workflow at it:
# CoastSat workflow: the .onnx file itself
coastsegmap.set_settings(sar_model_path=r"models/SAR_segmentation_model/SAR_3_band_model.onnx")
# Zoo workflow: the folder holding the .onnx
model_setting = {"img_type": "SAR", "local_model_path": r"models/SAR_segmentation_model"}
New settings
| setting | workflow | default | what it does |
|---|---|---|---|
sar_segmentation |
CoastSat | "model" |
"model" runs the 3-band model; "otsu" forces the legacy threshold for the whole run |
sar_water_threshold |
both | 0.5 |
P(water) cutoff. Raise it to classify less of the scene as water, lower it to catch more |
sar_model_path |
CoastSat | "" |
Your own .onnx. Stored relative to the CoastSeg folder so sessions stay portable |
local_model_path |
Zoo | "" |
Folder holding your own .onnx; "" uses/downloads models/SAR_segmentation_model |
sar_mask_nodata |
Zoo | True |
Excludes the empty parts of a SAR swath so they are not traced as land |
sar_overwrite_segmentation |
Zoo | True |
Re-segments scenes whose outputs already exist |
sar_segmentation and sar_water_threshold have widgets on the advanced settings tab; the model
paths are set through set_settings or config.json.
Other updates
- Every shoreline now records how it was segmented in
output["segmentation_method"], and
extracted_shoreline.report_sar_segmentation_methods(output)tallies a finished run β useful
because individual scenes can fall back to Otsu even when the rest of the run used the model. - When comparing outputs, note that Otsu shorelines carry a dB threshold in
MNDWI_thresholdwhile
model shorelines carryNaN. Filter withextracted_shoreline.threshold_filter_applies(output)
rather than reading that column directly, or the model rows are silently dropped. - No speckle filtering is applied any more. The old workflow ran a
size=15median filter over
the imagery before thresholding it. The SAR imagery is now left untouched β the model reads the raw
dB bands and was trained that way, so smoothing them would only blur the shoreline.
What's Changed
- Release v2.0.4 by @2320sharon in https://github.com/SatelliteShorelines/CoastSeg/pull/323
Full Changelog: https://github.com/SatelliteShorelines/CoastSeg/compare/v2.0.3...v2.0.4
Hydrosphere - Coastal and Reefs
- Jupyter Notebook
Published by github-actions[bot] 24 days ago
PowerSimulations.jl - v0.38.1
PowerSimulations v0.38.1
Merged pull requests:
- bump dependencies (#1651) (@jd-lara)
Energy Systems - Energy System Modeling Frameworks
- Julia
Published by github-actions[bot] 25 days ago
animl-py - sdzwa_southwest_v3
Model: Southwest
Version: 3
date: 2023
num_classes: 27
Format: [.pt]
Author: Kyra Swanson
Company: San Diego Zoo Wildlife Alliance
Contact: tswanson@sdzwa.org
Description: "This model distinguishes between 27 species native to the Southwest United States. The training data was collected partially by SDZWA and the California Mountain Lion Project, and includes examples from the NACTI, and CCT training datasets. The training data corpus comprises 91,662 images. We used a 70/20/10 Train/Val/Test split. The model reached an overall accuracy of 88% on the test set."
Settings
resize_width: 299
resize_height: 299
crop: True
normalize: True
Biosphere - Terrestrial Wildlife
- Python
Published by tkswanson 25 days ago
OpenDCS - 7.0.17
What's Changed
- Initial attempt at Weighted Average algorithm by @agilmore2 in https://github.com/opendcs/opendcs/pull/1214
- Extend the element filter from TopLevelParser to the DatabaseParser, by @agilmore2 in https://github.com/opendcs/opendcs/pull/1584
- Added NOS Nortek 2 Currents sensor decoding capability by @baoyuyin in https://github.com/opendcs/opendcs/pull/1711
- limit logback console output to Error level by @ktarbet in https://github.com/opendcs/opendcs/pull/1720
- Message length off by one for iridium (#1731) (7.0 branch) by @ktarbet in https://github.com/opendcs/opendcs/pull/1735
- Correctly use transaction for comp depends full evaluation. by @MikeNeilson in https://github.com/opendcs/opendcs/pull/1857
- When decoding with the UI/dbedit check for ScriptFormatException -- 7.0 branch by @ktarbet in https://github.com/opendcs/opendcs/pull/1866
- Cherry pick fustrum changes by @oskarhurst in https://github.com/opendcs/opendcs/pull/1869
- Resevap fixes 7.0 by @oskarhurst in https://github.com/opendcs/opendcs/pull/1871
- Add the always after method to close resources in a finally block (#1β¦ by @oskarhurst in https://github.com/opendcs/opendcs/pull/1873
- Use End-of-life logback 1.3.16 for Java 8 by @ktarbet in https://github.com/opendcs/opendcs/pull/1887
- Port UsgsWaterDataSource and docs, etc to 7.0 branch by @ktarbet in https://github.com/opendcs/opendcs/pull/1889
- Update to use ghcr.io hosted database images. by @MikeNeilson in https://github.com/opendcs/opendcs/pull/1897
- Introduce DecodesScriptFormatterTest by @ktarbet in https://github.com/opendcs/opendcs/pull/1895
- Update to macos-latest (drop java 8 on macos) by @ktarbet in https://github.com/opendcs/opendcs/pull/1899
- AI Assisted - PythonAlgorithm cwms rating performance improvement by @msweier in https://github.com/opendcs/opendcs/pull/1908
- Various improvements to TraceDialog and assosciated Components. by @MikeNeilson in https://github.com/opendcs/opendcs/pull/1952
- Fix CopyNoOverwrite description (7.0 branch) by @ktarbet in https://github.com/opendcs/opendcs/pull/1977
- Update usgs-watedata-api dependency (7.0 branch) by @ktarbet in https://github.com/opendcs/opendcs/pull/1980
- Move PDT load attempt to be performed once. Reduce wait. by @MikeNeilson in https://github.com/opendcs/opendcs/pull/2083
Full Changelog: https://github.com/opendcs/opendcs/compare/7.0.16...7.0.17
Hydrosphere - Ocean and Hydrology Data Access
- Java
Published by MikeNeilson 25 days ago
bbsBayes2 - v.1.2026.3
Modified all of the models to increase the level of vectorization and thereby increase sampling efficiency.
Also added an argument to prepare_model() that allows the user to decrease the size of the stored model file by removing the count-level predictions. Default is to include the predictions so that posterior and prior predictions still work by default.
Added a scaling factor to the spatial models to ensure consistent interpretation of the priors for the spatial variance across any spatial graph. Following recommendations in https://doi.org/10.1016/j.sste.2018.04.002.
Also improved the internal spatial overlay processes to more accurately assign routes to spatial strata. Done in anticipation of the release of an updated route-path dataset for all US and Canada routes (expected before next annual data release).
Biosphere - Avian Monitoring and Analysis
- R
Published by AdamCSmithCWS 25 days ago
EVCC - 0.313.0
Changelog
Breaking Changes π¨
- a3b14bb08fddb853a516bb64242121c9c3f8f845 Deye 3p hybrid: add feed-in curtailment (BC) (#32206)
- c8b27650cac4260253ae4dab7cd09092974ab427 Home Assistant: configurable charge status values (BC) (#32136)
- 1f0aaf14bbcde076bd54bdf86af8f4c89de303b4 Huawei SUN2000: treat two battery units as single battery (BC) (#32034)
- 02a66252ca7112f033fd5524de9059ddf3e8b213 Modbus: unify delay and timeout settings (BC) (#31996)
New Features π«
- c72753770289f1f5caddf8a7adc04d35c88c9db3 Add FoxESS EV charger (Modbus TCP) (#31412)
- 0a98d57cec36fd67a5e2aa8245d179e7a1ee4676 Add SMA Sunny Home Manager 2.0 ModbusTCP with curtailment (#32091)
- 1a058fd933d34cc5dd11fac08bf49910bf347ebd Add Shelly EM1 (#31992)
- cd9812ef14e56a8a8c08ab5565d0b12afe20b311 Add Sigenergy EVDC charger (#32023)
- f8cd71f70fde50a6145d1567471dae5d03483650 Add SolvisControl 2/3 heatpump (#31976)
- 106d44652cf878a7c796ba052384e6c48cde3a3b Add THB (Thai Baht) to currency list (#32231)
- d92f125336c2890a3b7f0b39338e652718b167e8 Afore hybrid: add grid and pv usage (#32027)
- 4c26af7f5c77233f65b4eb15e927bc55e01fc460 HEMS: add custom implementation (#32187)
- ce75e49192719a4cc5e8d992f2d914031acd9bd0 History: normalize tooltip units, add total row (#32262)
- 838773b2aee651507471e1098c6cb48229103219 Home Assistant: add features config (heating/integrateddevice) (#32288)
- af8ecb2de2b4e0f8a6c945a28c20ecb03f317f43 Huawei SUN2000: add curtailment description (#32188)
- e6134683ac4521343fe2b4ac3ad5d5473aecf657 PowerOpti: add grid energy (#32281)
- 435ed72a56dbb8d097dd8e9bfec705c24f2958be Revert "Add Shelly EM1 (#31992)"
- 835d3c9c9454f3a678897a5b8face3f5574a4afc Shelly 3EM (Gen.1): add http cache, default 1s (#32216)
- 177ca558c98a155b3e735b258029e8e467a8fe02 Site: add experimental battery grid discharge setting (#32086)
- caf366bd345c9ef2bcdd36671aa63262e83b72bd Solaredge: add curtailment (#31982)
- 1b16f23da3a8ed39067839a3e132a30d36a1b704 Trydan: remove Locked, pause DPC, add currents/voltages (firmware >=2.5.0) (#32013)
- e3a48e42f97d98136fd194fab0b4a0c4d257daa1 Vehicle (VW/EU Data Act): add Skoda Enyaq soc key (#32060)
- c9c3b3b7382fe982bd61c603b2944ea27335f838 emsesp: add cacheing (#32291)
Other Changes βοΈ
- 542a01fa20dd66638f78be33e374a9105809116a API: generate /api/state documentation from UI types (#31530)
- 20ce660d7a2acff8326c117ed7397e456b6c2ef3 Battery: move grid discharge setting to battery page (#32256)
- 36227559c0682b675062a45852940e4f06314a98 Chore: remove unused @claude mention workflow (#32024)
- 608aa36629b14a419f91d6a08ca72d9160a9f012 Curtailment: report curtailed percent instead of bool (#32010)
- b66d6532aefe9ab3b31e999cde70aba56323c0c2 E3DC: address session data request per wallbox index (#32172)
- 6187b965ca401e2ef6f67139f3893860fb2c4c1b EEBus OHPCF: keep enabled state when enable fails (#32263)
- 408f9a056badff4e30efc12dfe9579f7100438fe EEBus: accept an inactive Β§14a limit without a value (#32155)
- f85b3b949851bac552a9c57e78e286431b8a7117 EEBus: treat data not valid as unavailable (#32204)
- e871263e18072c1abdca4a585ff70f5036442c56 EEBus: update eebus-go/ship-go, drop eebus-go replace (#31980)
- bacca990ee3519d46148fef91a4b2e5bc0b8b8fa FNN Hems: align power config wording with EEBus (productionNominalMax) (#31948)
- 300892d1ff3cffdda0ef5055a38fbddd7f7978aa HEMS: use Wp unit for installed generator power (#32173)
- abfce921d5b1c082c4cf897132d063b8ff7ea7d3 Huawei SUN2000: optimize timings (#32235)
- f9dca652652bf3936283a6a093f1de14f2f2af3c Huawei SUN2000: read all ESS registers at once (#32234)
- 1f3196b105097720a987123b465fb4bce730f6b9 Loadpoint: ignore implausible charge rater readings (#32174)
- f8584ebb6ea338c37ea1dadd1489d84593b21fe0 Mercedes: remove broken odo, maxSoc and status (#32293)
- 1656a76cb314d3d1c4e310632d65d67130467829 Mqtt: wait for retained message after subscribe before first read (#32031)
- 496c834f0d7784e411e8ca9165818ed803a1f1f8 OCPP: tolerate empty chargePointVendor in BootNotification (#32184)
- 1c26a6f66b2fc1e8b83d1107697c57f2447dd7d3 Optimizer: blend measured values into forecast inputs (#31975)
- 43517ee105b747bd137f581c4deac72c094cc347 Optimizer: don't show outdated battery forecast (#32119)
- de4c63d18286a7eaa822fc55f7f893fe36c0418f Optimizer: evaluate suggestion actionable flag on publish (#32045)
- 36a789b5c0b6ccf3f15e4304281032b388c69b38 Optimizer: hide battery forecast when already full or empty (#32121)
- 9db7be1ededad485622f4e72c5c1f9b8c8d90f88 Optimizer: notify on advisory suggestion changes (#31905)
- 19c4e06391e992d4c87ef49e5205df8bd4b6b534 Optimizer: publish result before status check (#32055)
- 771fc20ec2428b714f42be18c46c9c1517061946 Optimizer: split grid peak shaping into demand, feed-in and combined strategies (#32108)
- a1b6a0630518c52f4bb057ec55c84d21727ba30f Optimizer: surface battery-to-grid discharge as suggestion (#32087)
- 05676e7c6809ae8d66b1ff5dc8469c7ac401bf5c Remove deprecated Smart EQ (#32294)
- 9c8852368230ba475dca77e7751660e2f78b5649 Revert "API: generate /api/state documentation from UI types" (#32109)
- 9300e158672e315e0ae38bf44a8b93070832849b Session: fixed overflowing of cards on small screens (#32261)
- 13aab7c6226f4dcedd2e3e34cb87ba5956adc45c Site: only re-evaluate HEMS dim and curtail state on change (#32011)
- c8517b0237972cab66e7eb62c1ffb1c864a27b1f Tariff (Combined): sort rates before partitioning by start time (#32094)
- aa7c685fb6e3b881ba632e79284f68346c74f40f Tariff (solar): center sub-slot interpolation on the source slot (#32116)
- be81052667234f7aa4f3846c57a2705290ec87e6 Tariff: base cache validity on update interval instead of rate coverage (#32168)
- 60f313cbfb75634f8d69dd63794efd89867980ab Tariff: keep fixed tariff rates ordered when chargesZones markers are combined (#32165)
- 03a8c744d03efb0985a795cd09e882799bee48e4 UI: suppress API error toasts during restart (#32265)
- 1db0d5015cdac481faa3137934c72169297c78f8 UI: use consistent vehicle wording in messaging events (#31938) (#32048)
- 6ead46d97ff052cfb96e7da198ac4c14359ed82e Vaillant: solve ALTCHA challenge on login (#32070)
- 2b7aaeaa371b3f1b3a5a297032964465d70b77fd WARP1: don't report zero phase currents on power-only meters (#32090)
- 4e1b0a8250add1fe8d8bb34ad88a721df3a5af12 Wattsonic: remove wrong grid currents (inverter registers) (#32049)
- 8bbbc2497dcb95b5ff725736cb7d4594e8b5e913 api: match permanent sentinel errors after backoff unwrapping (#32197)
- 608575ffec86cbce161f07f7398ec48e0353942c core: apply dim/curtail to devices that cannot report their state (#32198)
- 9a2a7306349990403199ff55602687eeaf700dad docs(openapi): remove stale result envelope from response schemas (#31989)
- 19ed27fa54f52ae6b4152fd6c23c4d88d208ca87 vw/eudataact: fall back to battery care mode field for target SoC (#32242)
- 2b69cb34129765b41970fb4d0321ffe81ac4dba2 vw/eudataact: restore welcomecharge (#32276)
Bug Fixes π
- 614c91080b952508852994316059eae1dc8d5a80 Cardata: fix mqtt channel stealing (#32244)
- f7af0bbe6ae24a0e223adbcd548c0e76ee64259f Daheimladen: fix hardware check (#32079)
- 5215bb9e3f44bc15a661e516a483ba582702a4b8 EEBus: fix OHPCF re-boost after the heat pump withdrew its flexibility (#32150)
- 209b72b8179090745595048a17a51d1a14c7e026 Fix startup deadlock with existing metrics database (#32043)
- ea6cc990945fb89b322afb69b7ca0e2215307ecc Planner: fix continuous plan selecting the current slot (#32041)
- 834c062b8c70802d08c97624ce0d85b6e3ce435c Revert "Daheimladen: fix misleading sponsorship error on station id read (#31956)"
- f937ebec1fb8a77f2aefc86ddb38bf1a4d511943 Shelly: fix PM1 Gen3 energy readings (#31957)
- e867ef60cffe45215cad911d4b4aa3e7449d0491 Tariff: fix chargesZones boundaries not taking effect between price zones (#32143)
- b178fb5c9812c510bc11b3e6192498e09e2619cc UI: fix loadpoint value alignment on narrow screens (#32275)
- 75eebf131b61fe006195a37f8e2224dcc0846639 UI: fix missing general config tiles with battery configured (#32140)
- f1b441684eb3aab2bb37b81b11132178e302d5df Update and fix translations (#32224)
Consumption - Mobility and Transportation
- Go
Published by andig 25 days ago
Arena - v2.7.0
What's Changed
- fixed current user group api endpoint by @SteRiccio in https://github.com/openforis/arena/pull/4330
- Users grouping improvements by @SteRiccio in https://github.com/openforis/arena/pull/4331
- User groups: layout adjustments by @SteRiccio in https://github.com/openforis/arena/pull/4332
- allow editing qualifier attribute by survey admin by @SteRiccio in https://github.com/openforis/arena/pull/4333
- Arena data import summary by @SteRiccio in https://github.com/openforis/arena/pull/4334
- improved chain edit locking by @SteRiccio in https://github.com/openforis/arena/pull/4336
- Make user groups module available by @SteRiccio in https://github.com/openforis/arena/pull/4337
- feat(home): survey landing, branding, and theme foundation by @peroza in https://github.com/openforis/arena/pull/4335
- fix(home): polish Survey Info branding form UX by @peroza in https://github.com/openforis/arena/pull/4339
- User invite: verify email addresses by @SteRiccio in https://github.com/openforis/arena/pull/4338
- use latest arena-server by @SteRiccio in https://github.com/openforis/arena/pull/4340
- Survey info: make "Branding" and "Document layout" tabs visible only to survey editors by @SteRiccio in https://github.com/openforis/arena/pull/4343
- fixed runtime error in data explorer edit mode by @SteRiccio in https://github.com/openforis/arena/pull/4342
Full Changelog: https://github.com/openforis/arena/compare/v2.5.9...v2.7.0
Biosphere - Biodiversity Citizen Science
- JavaScript
Published by SteRiccio 25 days ago
PortalData - 6.91.0
v6.91.0
Biosphere - Biodiversity Data Access and Management
- R
Published by github-actions[bot] 25 days ago
stglib - v1.13.1
Full Changelog: https://github.com/USGS-CMG/stglib/compare/v1.13.0...v1.13.1
Hydrosphere - Ocean and Hydrology Data Access
- Python
Published by dnowacki-usgs 25 days ago
CloudMicrophysics.jl - v0.38.0
CloudMicrophysics v0.38.0
Breaking changes
- Moved out 1M options types into Microphysics1MParams
- Renamed
optionstoprocesses(breaking change)
Merged pull requests:
- Bumping the version for a breaking release (#772) (@trontrytel)
Atmosphere - Atmospheric Chemistry and Aerosol
- Julia
Published by github-actions[bot] 25 days ago
VILLASnode - v1.1.0
1.1.0 (2026-07-30)
Features
- ci: Add a job which depends on everything (67e6c53)
- ci: Add Github Actions workflows (9703743)
- ci: Add new CI job for building & validating the OpenAPI spec (4993d73)
- ci: Auto-tag a new release on successful master builds (9cae582)
- config: Add new helper function for parsing human readable durations (c6099d4)
- doc: Add CITATION.cff (8601b81)
- docker: Add new Dockerimage for Rocky Linux 10 (f0c26ea)
- Introduce Sample::PtrUnique alias (a032da0)
- node-opal-async: Add new node-type for running VILLASnode as an Asynchronous process in OPAL-RT's RT-LAB (e978a28)
- node-opal-orchestra: Add new OPAL-RT Orchestra node-type (95681df)
- node-opal-orchestra: Update PATH (50a557b)
- node-orchestra: Add first version of OpenAPI spec of node-type configuration (6560889)
- node-orchestra: Use new parse_duration config helper for parsing duration (1e34b1e)
Bug Fixes
- Add missing new-line to signoff commit messages (3525085)
- ci/arx: Use nix-community/nix-bundle instead of NixOS/bundlers (0ed61be)
- ci: Disable VILLAS_COMPILE_WARNING_AS_ERROR for debian, ubuntu and rocky (30e764f)
- ci: Dont install dev tools in venv (e022bef)
- ci: Fix build badges in README (d7b17ee)
- ci: include build commands in var (fd49122)
- ci: remove redundant build jobs (105d879)
- clang-format: Proper formatting for libjansson macros (e29e5c2)
- clang: Allow unkown warning options (9f1d892)
- cmake: Cleanup and add missing feature infos (309d4e7)
- cmake: Fix broken FindOpalOrchestra module (c162a6a)
- cmake: Remove GetVersion module and simplify overall CMake code (93cf834)
- compat: Add drop-in std::filesystem header for older systems (c9902cb)
- config: Fix end-of-file (c9045c7)
- config: Fix regular expression handling in parse_duration (bbc951f)
- config: Fix string use-after-free (6b1da06)
- cppcheck: Fix various cppcheck warnings and portability issues (e7c6153)
- cppcheck: Replace string::find with string::starts_with (5606793)
- cppcheck: Suppress dangerous type cast warning (ba6bd7f)
- cpuset: Fix ambiguous C++20 operator== overload (4084afe)
- deps: Adjust linker search path for OpenDSS in deps.sh (47ebd07)
- deps: Fetch libxil from GitHub instead of old Gitlab repo (2d037d7)
- deps: Fix detection of git-svn (0bd7861)
- deps: Overhaul deps.sh script: (0f819de)
- deps: Update criterion installed by deps.sh (7c38ae6)
- devcontainer: Update location of Container image (f4b2edb)
- doc: Add JOSS paper als new main paper about VILLASnode (51f0562)
- doc: Add missing lab19 config (ee8423a)
- doc: Fix broken OpenAPI spec for opal.orchestra node-type (fc38caa)
- doc: Fix indentation and missing SPDX headers of lab19.conf (2140325)
- doc: Fix OpenAPI doc for opal.orchestra node-type (a354a7e)
- docker: Fix captialization (58227a3)
- docker: Order package dependencies alphabetically (afe7011)
- doc: Remove broken link (f5953ef)
- doc: Remove superfluous trailing commas in example configs (94d82da)
- docs: Added missing settings for line-based formats (5166a93)
- docs: Tweak note about citations (b663a51)
- examples: Remove obsolete example configurations for api node-type (00adfdd)
- exceptions: Add missing override annotation (31c756c)
- Fix compatability wioth GCC 8.3.0 (a05cec9)
- Fix libfmt string formatting errors (c0ed0e8)
- format/json_kafka: Fix json_pack string parameter (9064feb)
- formatting: Improve json_pack readability (85281ef)
- fpga/intc: Make IrqVectorInfo initialization more explicit (59f17a2)
- fpga/rtds: Fix broken reinterpret_cast to virtual base class (5be0a06)
- fpga: Replace type-punning pointer cast with std::bit_cast (77c9eff)
- hook-frame: Fix broken digest hook integration test (2d73d5a)
- hook-frame: Rework framing hook to synchronize frame boundaries (aa9ee64)
- hook/lua: Remove unused lua_tojson function (6c1f12b)
- hooks/lua: Fix forward declaration of SignalType (2435af5)
- kernel: Mark ~Driver interface destructor as virtual (4686d23)
- linux: Reintroduce patch for struct groups (2bb445e)
- memory: Fix non-virtual destructor in polymorphic class (c480970)
- nix: Add some missing build inputs (cbf57bb)
- nix: Only build with orchestra on x86_64-linux (54d8fb3)
- nix: Remove nix-ld env vars which break dev shell with Lix (430c533)
- nix: Use common directory for all patches (2831c2f)
- node-example: Remove header for example node-type (46e893d)
- node-opal-async: Fix compilation errors (bec6af1)
- node-opal-orchestra: Add comment to global lock (49e2c29)
- node-opal-orchestra: Do not hide node-type (1aca74b)
- node-opal-orchestra: Fix include order (66d612a)
- node-opal-orchestra: Fix typo in example config (6a2151d)
- node-opal-orchestra: Fix whitespaces (f895c44)
- node-opal-orchestra: Improve readability (37f320f)
- node-opal-orchestra: Rename source files (deb4d13)
- node-opal-orchestra: Rework Item::upsertItem using std::string_view (56f4a6b)
- node-opal-orchestra: Rework Nix build (38dc435)
- node-opal-orchestra: Use shared pointers for DDF items (864c09d)
- node-opal-orchestra: Use snake_case for options (1e5861e)
- node-opal-orchestra: Use std::optional instead of negative value for absent indices (5da3ba5)
- node-opal-orchstra: Use our fs namespace for compatability with std::filesystem drop-in (4ec829d)
- node-orchestra: Fix consteval error in RTError (b08d41a)
- nodes/fpga: Fix cppcheck warning (9f04289)
- nodes/iec61850_goose: Add checks that signals wanted in publisher exist (ce9b0bd)
- nodes/iec61850_goose: Add nullptr check when creating GOOSE publisher (98c5a96)
- nodes/iec61850_goose: Add whitespaces in check that signals wanted in publisher exist (4920d5d)
- nodes/iec61850_goose: Create publishers if only output section exists (e93347f)
- opal_orchestra: Remove <filesystem> include (1cf9be3)
- opal-async-param: Close header comment (0c430e8)
- opal/ddf: Fix non-virtual destructor in polymorphic class (e6d2588)
- packaging/deps: Use fixed pip version instead of latest (942740c)
- packaging: Fix repo location in Arch PKGBUILD file (2e98e32)
- packaging: Update outdated LABELs (b4e4b5c)
- protobuf: Update auto-generated code (203fb99)
- python: change isinstance int/bool order (01344f2)
- python: Fix mypy CI checks (545e4ba)
- python: Fix mypy error (3a45c59)
- python: Fix whitespaces (1af30af)
- reuse: Add missing REUSE header to CITATION.cff (91ef3ed)
- reuse: Remove unused license (d5e8e16)
- sample: Comparison of sample flags (c137b31)
- sample: Remove C compatability macros (dcecdf2)
- style: Fix whitespaces (d70c7da)
- style: Format code with clang-format (186e880)
- style: Make comments start with uppercase letter in Nix files (03f03d4)
- style: Replace std::map by std::unordered map where possible (b532ad3)
- style: Run clang-format (8784479)
- style: Use move semantics to pass std::strings (d835b8b)
- tests/config: Remove broken putenv call (7a489a0)
- tests/format: Use proper printf formatting specifiers for std::int64_t (1605e9f)
- tests/queue: Fix unintentional sleep(0) using usleep (5215a8f)
- tests/utils: Fix string use-after-free (b5ecbea)
- tests: Exclude opal.orchestra config from test-config (af39abb)
- tests: use C locale for integration tests (0388e0e)
- tools: Fix artifact locations for villas-install script (81152f0)
- treewide: Fix virtual/override annotations (a960050)
- Use always en_US locale (aae084e)
- Use native PEP-420 namespace package (db372c7)
- vfio_device: Make IrqVectorInfo initialization more explicit (8851cb5)
- vfio_device: Remove unused pci_device pointer (ae1d7be)
- villas-graph: Pass correct type to gvRenderData (089d772)
- villas-pipe: Allocate at least 16 samples (f4538b2)
- web: Conditionally add global extensions array (71d55f0)
- webrtc: Fix link to static logo asset (3c72575)
- webrtc: Fix use of deleted default constructor of sample_pool (34db23c)
- wrong config name in ignored configs (a0fff22)
Energy Systems - Grid Management and Microgrid
- C++
Published by github-actions[bot] 25 days ago
cellpy - v2.1.1.post3
Post-release of 2.1.1 β silence loader-discovery WARNING spam for apps.
list_instruments()is quiet by contract: expected loader-probe skips log at DEBUG; the scan usescreate_all(quiet=True)so apps no longer seeWARNING:root: Could not create loader β¦on every call. (#786)
What's Changed
- fix: silence list_instruments probe warnings (#786) by @jepegit in https://github.com/jepegit/cellpy/pull/807
Full Changelog: https://github.com/jepegit/cellpy/compare/v2.1.1.post2...v2.1.1.post3
Energy Storage - Battery
- Python
Published by cursor[bot] 25 days ago
CloudMicrophysics.jl - v0.37.2
CloudMicrophysics v0.37.2
- Move parameters out 1M options types into Microphysics1MParams
Merged pull requests:
- chore(deps): bump the all-julia-packages group across 1 directory with 2 updates (#723) (@dependabot[bot])
- Move parameters out 1M options types into Microphysics1MParams (#767) (@nefrathenrici)
Atmosphere - Atmospheric Chemistry and Aerosol
- Julia
Published by github-actions[bot] 25 days ago
REopt_API - New deployment process, PostgreSQL 16, keys.py -> .env
What's Changed
- PostgreSQL v18 updates; Database restores by @GUI in https://github.com/NatLabRockies/REopt_API/pull/720
- Move to GitHub Actions for deployments; other deployment updates/cleanup by @GUI in https://github.com/NatLabRockies/REopt_API/pull/714
- Reenable staging deploys after dry-run tests by @GUI in https://github.com/NatLabRockies/REopt_API/pull/722
- Reenable production deploys after dry-run tests by @GUI in https://github.com/NatLabRockies/REopt_API/pull/723
- Remove nrel.gov ingress by @GUI in https://github.com/NatLabRockies/REopt_API/pull/724
- Fix ingress to set explicit host for production ingress by @GUI in https://github.com/NatLabRockies/REopt_API/pull/725
Full Changelog: https://github.com/NatLabRockies/REopt_API/compare/v3.19.1...v3.20.0
Energy Systems - Energy System Modeling Frameworks
- Python
Published by Bill-Becker 25 days ago
Zarr - v3.3.0
What's Changed
- Allow s3 testing in face of ambient AWS credentials by @chuckwondo in https://github.com/zarr-developers/zarr-python/pull/3947
- ci: run all of xarray's tests in downstream workflow by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/3940
- chore(deps): bump the actions group across 1 directory with 12 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/3930
- chore: update pre-commit hooks by @pre-commit-ci[bot] in https://github.com/zarr-developers/zarr-python/pull/3943
- chore(zarr-metadata): bump version to 0.1.1 by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3949
- refactor: simplify internal chunk representation by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3899
- Fix V3 time types by @chuckwondo in https://github.com/zarr-developers/zarr-python/pull/3955
- chore: fix ability to run mypy via hatch by @chuckwondo in https://github.com/zarr-developers/zarr-python/pull/3952
- Fix minor typos by @kabilar in https://github.com/zarr-developers/zarr-python/pull/3957
- chore(deps): bump the actions group with 5 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/3951
- deprecate blosc enums by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3963
- BUG: Fix empty Group nodes lacking a "consolidated_metadata" field by @TomAugspurger in https://github.com/zarr-developers/zarr-python/pull/3967
- fix(zarr-metadata): model stored metadata more closely by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3962
- fix: allow writing to 0-dimensional arrays with sharding by @NIK-TIGER-BILL in https://github.com/zarr-developers/zarr-python/pull/3966
- chore(deps): bump the actions group with 2 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/3970
- chore: run mypy from developer environment by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3972
- feat:get_ranges by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3925
- chore: remove warning on fixed length utf32 by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3979
- misc(zarr-metadata): typed constants and fixes by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3978
- chore: cd workflow by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3935
- perf: cache default ArraySpec for regular chunk grids by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3908
- refactor(sharding): store chunks_per_shard explicitly in _ShardIndex by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3975
- docs: update link to developer chat by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3980
- feat(zarr-metadata): partial metadata types by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3982
- chore(zarr-metadata): set up a changelog by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3981
- Optimize partial shard reads by @aldenks in https://github.com/zarr-developers/zarr-python/pull/3004
- Do not install CuPy on darwin by @chuckwondo in https://github.com/zarr-developers/zarr-python/pull/3988
- chore(zarr-metadata): prepare for 0.2.0 release by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3986
- Widen ChunksLike type alias by @chuckwondo in https://github.com/zarr-developers/zarr-python/pull/3990
- fix: match v* when extracting a zarr version from git tags by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3994
- feat: subchunk write order by @ilan-gold in https://github.com/zarr-developers/zarr-python/pull/3826
- prune old string dtype class by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3973
- fix: compare metadata objects by JSON form by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3999
- Run doctests via pytest and fix broken doctests. by @chuckwondo in https://github.com/zarr-developers/zarr-python/pull/4000
- fix(FsspecStore): close owned async filesystem on store.close() by @josh-ag2 in https://github.com/zarr-developers/zarr-python/pull/4003
- chore(deps): bump the actions group across 1 directory with 8 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4014
- fix: use hatch's
defaultenv so the uv installer is inherited by @lhoupert in https://github.com/zarr-developers/zarr-python/pull/4023 - chore: update pre-commit hooks by @pre-commit-ci[bot] in https://github.com/zarr-developers/zarr-python/pull/4024
- docs: test more code snippets in docs by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4018
- chore(deps-dev): bump uv from 0.11.14 to 0.11.15 in the uv group across 1 directory by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4019
- refactor: remove random subchunk ordering by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4011
- fix: make xarray downstream tests work by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4043
- test: add property tests for block and mask indexing by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/4054
- refactor: use backported sentinel type by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4046
- chore(deps): bump aiohttp from 3.13.5 to 3.14.0 in the uv group across 1 directory by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4031
- Revert "fix: make xarray downstream tests work" by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4047
- chore: indexing test cleanup by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4001
- refactor/consolidated JSON IO routines by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3998
- chore(deps): bump the actions group with 3 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4058
- Modify custom dtype example to use only public API by @chuckwondo in https://github.com/zarr-developers/zarr-python/pull/4052
- fix: copy attributes passed from the user to avoid mutation by @stibrew in https://github.com/zarr-developers/zarr-python/pull/4060
- docs: add core-developer self-merge policy by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/4053
- fix![zarr-metadata]: define JSONValue type, and narrow object annotations to use JSONValue by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4037
- perf: cache lexicographic chunk coords in sharding codec by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4012
- deprecate more enums by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3968
- fix: update OSPO action references to canonical org path by @zkoppert in https://github.com/zarr-developers/zarr-python/pull/3856
- chore(deps): bump tornado from 6.5.5 to 6.5.6 in the uv group across 1 directory by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4062
- harden developer environment by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4066
- chore(deps): bump codecov/codecov-action from 6.0.1 to 7.0.0 in the actions group by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4071
- chore(deps): bump the python-dependencies group with 14 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4072
- chore(deps): bump tornado from 6.5.6 to 6.5.7 by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4067
- chore(deps): bump cryptography from 48.0.0 to 48.0.1 by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4070
- chore(deps): bump aiohttp from 3.14.0 to 3.14.1 by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4069
- Claude/storage codec bugfixes by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4074
- chore(deps): bump bleach from 6.3.0 to 6.4.0 by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4081
- Control sharding codec read coalescing with ArrayConfig and runtime config options by @aldenks in https://github.com/zarr-developers/zarr-python/pull/3987
- chore(deps-dev): bump the python-dependencies group across 1 directory with 2 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4080
- allow roundtripping the
BytesCodecby @keewis in https://github.com/zarr-developers/zarr-python/pull/3417 - feat![zarr-metadata]: extensive top-level exports by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4083
- zarr metadata 0.3.0 by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4084
- Claude/py312 modernizations by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4087
- chore(deps): bump CodSpeedHQ/action from 4.17.0 to 4.17.5 in the actions group by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4079
- chore: add rectilinear hypothesis block indexing tests by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/4075
- chore(deps): bump pydantic-settings from 2.14.1 to 2.14.2 by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4089
- chore: dependabot only updates direct dependencies by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4090
- chore(deps): bump msgpack from 1.1.2 to 1.2.1 by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4088
- test: pytest cleanups / modernization by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4093
- fix(testing): correct delete_dir prefix matching in stateful tests by @NIK-TIGER-BILL in https://github.com/zarr-developers/zarr-python/pull/4002
- chore(deps): bump the actions group with 3 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4097
- Remove struct unstable warning by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4100
- chore: test correctness fixes by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4094
- Fix save/load for scalar arrays by @gaoflow in https://github.com/zarr-developers/zarr-python/pull/4103
- docs: add reviewer guidance and author attestation to PR template by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/4106
- docs: document zarr.errors changes in the v3 migration guide by @NIK-TIGER-BILL in https://github.com/zarr-developers/zarr-python/pull/4110
- refactor(testing): call super().init in LatencyStore by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/4102
- Claude/internal simplifications by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4105
- Fix minor documentation issues by @DimitriPapadopoulos in https://github.com/zarr-developers/zarr-python/pull/4120
- fix: keep element order when writing F-contiguous chunks with vlen codecs by @oldrobotdev in https://github.com/zarr-developers/zarr-python/pull/4116
- test: consolidate vlen F-contiguous regression tests by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4122
- chore(deps): bump the actions group with 5 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4114
- chore(deps): bump joserfc from 1.6.5 to 1.6.8 by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4123
- chore: update pre-commit hooks by @pre-commit-ci[bot] in https://github.com/zarr-developers/zarr-python/pull/4125
- Remove broken badge by @DimitriPapadopoulos in https://github.com/zarr-developers/zarr-python/pull/4121
- docs: fix CacheStore max_age_seconds docstring default by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4133
- chore(deps): bump the actions group with 3 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4135
- ci: stop dependabot updates targeting support/v2 by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4136
- docs: fix errors and improve consistency across the documentation by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4132
- test: pass a list, not a generator, to parametrize in test_docs by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4138
- docs: clarify difference between load and open in docstrings by @SAY-5 in https://github.com/zarr-developers/zarr-python/pull/3984
- chore(deps): bump the python-dependencies group across 1 directory with 13 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4137
- test: bind moto server to an ephemeral port to fix xdist deadlock by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4139
- test: enable pytest strict mode, fix duplicate parametrization ids, and add 10m timeout to individual tests by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4140
- perf: use sync methods for chunk encoding / decoding by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/3885
- test: ignore Python 3.15 fork-with-threads DeprecationWarning in test_multiprocessing by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4143
- fix: skip object store prefix markers in list_dir by @AMBRA7592 in https://github.com/zarr-developers/zarr-python/pull/4117
- fix: byte-order handling for structured dtypes in the bytes codec by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4142
- chore: add Ilan Gold to the team list by @ilan-gold in https://github.com/zarr-developers/zarr-python/pull/4145
- docs: 3.3.0 release notes by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4148
- chore: CI worfklows for linting docs by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/4076
- chore: cleanup indentation and guidance for release by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/4153
- chore(deps): bump the actions group across 1 directory with 6 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4152
- Fix/memorystore buffer aliasing by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4157
- chore: refine link checker configuration by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/4158
- fix(store): don't close a shared filesystem in FsspecStore.close() by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4165
- chore(deps): bump setuptools from 82.0.1 to 83.0.0 by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4176
- chore(deps): bump pillow from 12.2.0 to 12.3.0 by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4169
- chore(deps): bump the actions group with 3 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4181
- feat: ZipStore accepts open binary file-like objects by @jhamman in https://github.com/zarr-developers/zarr-python/pull/4187
- feat: add type-safe
get_arrayandget_groupmethods toAsyncGroupandGroupby @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4128 - feat(zarr-metadata): Zarr metadata model layer by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4119
- fix: let open_like create arrays by default by @goutamadwant in https://github.com/zarr-developers/zarr-python/pull/4146
- fix: keep FusedCodecPipeline compute off the event-loop thread by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4194
- fix(ArraySpec): proper and robust equality semantics for ArraySpec by checking fill_value for byte-identicality, fixes #3054. by @sehoffmann in https://github.com/zarr-developers/zarr-python/pull/4183
- fix: make benchmark page-cache clearing opt-in, never prompt for sudo by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4200
- perf(indexing): speed up sorted 1-D coordinate selections by @selmanozleyen in https://github.com/zarr-developers/zarr-python/pull/4172
- fix: FusedCodecPipeline falls back to async path for sharded arrays with async-only inner codecs by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4179
- fix: fused pipeline falls back for partial-mixin codecs without sync partial methods by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4201
- fix: FusedCodecPipeline must apply outer AA/BB codecs on partial paths by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4202
- fix(fused codec pipeline): bulk shard decode must only engage for identity full reads by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4203
- docs(zarr-metadata): standalone documentation site; add package justfile by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4208
- docs(zarr-metadata): docs-site polish: repo link, titles, RTD build skips, branding by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4210
- chore(zarr-metadata): build 0.4.0 changelog by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4211
- docs: fix link checker errors and warnings; run weekly by @maxrjones in https://github.com/zarr-developers/zarr-python/pull/4214
- fix: ManagedMemoryStore sync methods must respect the path prefix by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4204
- fix: minor correctness and hygiene fixes from the sync-pipeline audit by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4205
- chore(deps): bump the python-dependencies group across 1 directory with 11 updates by @dependabot[bot] in https://github.com/zarr-developers/zarr-python/pull/4216
- fix: reject malformed chunk keys in DefaultChunkKeyEncoding by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4219
- fix: explicit store sync-IO capability; wrappers forward it; LatencyStore fixes by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4206
- docs: add dev blog, update 3.3.0 release notes by @d-v-b in https://github.com/zarr-developers/zarr-python/pull/4191
New Contributors
- @chuckwondo made their first contribution in https://github.com/zarr-developers/zarr-python/pull/3947
- @kabilar made their first contribution in https://github.com/zarr-developers/zarr-python/pull/3957
- @NIK-TIGER-BILL made their first contribution in https://github.com/zarr-developers/zarr-python/pull/3966
- @josh-ag2 made their first contribution in https://github.com/zarr-developers/zarr-python/pull/4003
- @lhoupert made their first contribution in https://github.com/zarr-developers/zarr-python/pull/4023
- @stibrew made their first contribution in https://github.com/zarr-developers/zarr-python/pull/4060
- @zkoppert made their first contribution in https://github.com/zarr-developers/zarr-python/pull/3856
- @gaoflow made their first contribution in https://github.com/zarr-developers/zarr-python/pull/4103
- @oldrobotdev made their first contribution in https://github.com/zarr-developers/zarr-python/pull/4116
- @SAY-5 made their first contribution in https://github.com/zarr-developers/zarr-python/pull/3984
- @AMBRA7592 made their first contribution in https://github.com/zarr-developers/zarr-python/pull/4117
- @goutamadwant made their first contribution in https://github.com/zarr-developers/zarr-python/pull/4146
- @sehoffmann made their first contribution in https://github.com/zarr-developers/zarr-python/pull/4183
- @selmanozleyen made their first contribution in https://github.com/zarr-developers/zarr-python/pull/4172
Full Changelog: https://github.com/zarr-developers/zarr-python/compare/v3.2.1...v3.3.0
Climate Change - Climate Data Standards
- Python
Published by d-v-b 25 days ago
Earth2Studio - v0.17.0
Earth2Studio general release 0.17.0
π¨ Breaking Changes π¨
- NNJA and GDAS data sources had breaking behavior and constructor API changes to help with consistency between them.
π Changelog
π Added
- Added GHCN hourly data source (
GHCNHourly), superseding the deprecated ISD source - Added EarthMover ERA5 0.25 degree reanalysis data source
- Added EarthMover IFS 0.1 degree data source and forecast source hosted by BrightBand
- Added
async_workersandretriesparameters to GFS / GFS_FX, HRRR / HRRR_FX,
GEFS_FX / GEFS_FX_721x1440, CFS_FX / CFS_FX_Flux and NCAR_ERA5 data sources - Added shared obstore byte-range helpers (
obstore_store_from_url,
obstore_read_range,obstore_fetch_to_cache) inearth2studio.data.utils - Added dynamical.org analysis and forecast data sources, reading anonymous Icechunk
repositories:DynamicalAIFS,DynamicalAIFS_ENS,DynamicalGFS,DynamicalGEFS,
DynamicalHRRR,DynamicalMRMS,DynamicalGFS_FX,DynamicalGEFS_FX,
DynamicalHRRR_FX,DynamicalICON_EU_FX,DynamicalIFS_ENS,
DynamicalIFS_ENS_FX,
DynamicalAIFS_FXandDynamicalAIFSENS_FX. - Added Aurora v1.5 deterministic and ensemble model wrapper (
Aurora1p5,Aurora1p5Ensemble) - Added StormCast CONUS prognostic model (
StormCastCONUS) - Added
DataReplayfor replayingDataSourceandForecastSourcedata through the
prognostic iterator interface. - Added NNJA satellite observation data frame source (
NNJAObsSat) - Added StormScope NSRDB solar irradiance (GHI) estimation model (
StormScopeDxNSRDB) - Added COSMO-REA downscaling diagnostic model (
CorrDiffCosmoEra5) for diffusion downscaling
of ERA5 to COSMO-REA6 (6 km) and COSMO-REA2 (2.2 km) over Europe.
βοΈ Changed
- Renamed
GHCNLexicontoGHCNDailyLexiconfor consistency with the new hourly lexicon - Updated MeteosatFCI reader and lexicon to include all channels.
- Updated StormScope model package to use improved higher resolution checkpoints. Model
now defaults to using 3 km and 10 minute spatiotemporal resolution, and includes
predictions for GOES GLM Lightning density. - Migrated GFS / GFS_FX data sources from s3fs to obstore for index and byte-range
GRIB fetches; downloads now use bounded concurrency with retry on transient errors - Migrated the remaining GRIB byte-range data sources (HRRR / HRRR_FX, GEFS_FX /
GEFS_FX_721x1440, CFS_FX / CFS_FX_Flux, NCAR_ERA5) from s3fs/gcsfs to obstore with
bounded concurrency and retry on transient errors - Migrated HTTP-backed GRIB sources (GFS
ncep, HRRRnomads, CFSnomads) to
obstoreHTTPStoreagainst the NOMADS HTTPS endpoint (GFSnceppreviously used
FTP); no fsspec fallbacks remain in the GRIB byte-range sources - Refactored UFS observation sources (
UFSObsConv,UFSObsSat) onto the shared
obstore byte-range helpers - Zarr-reading data sources (
ARCO,WB2ERA5and other WeatherBench 2 sources, and
therxprescriptive sources) now read viaobstore-backed zarr stores instead of
fsspec - UFS observation sources (
UFSObsConv,UFSObsSat) now tolerate missing diag files
by warning and skipping instead of erroring - Updated the OPERA data source to represent undetect values as
-99.0, while
retainingNaNfor no-data values. - NNJA Obs data source now accepts any time / tolerance rather than 6-hour strides
- Renamed
NomadsGDASObsConvmax_workersparameter toasync_workersfor
consistency with other observation data sources
π¨ Fixed
- Fixed
PrecipitationAFNOv2andWindgustAFNOpassing latitude and longitude in
swapped order tocos_zenith_angle, which produced an incorrect solar-zenith-angle
input channel. - Fixed incorrect interpolation values at the lower grid edge when an output
coordinate matched the first input coordinate. - Corrected the
PrecipitationAFNOv2docstring: the model predicts precipitation
accumulated over the following six hours[t, t+6h], not the prior six hours. - Fixed
DerivedRHmixed-phase saturation blend clipping the liquid-water fraction
ratio to 1.2 instead of 1.0 before squaring, which let the effective weight reach
1.44 and inflated relative humidity above freezing. - Changed ISD schema
sourcetype to string since the field is alphanumeric. Enforced
float32dtypes forlat,lon,elev, andobservation. - Fixed NNJA observation sources blocking the shared fsspec IO loop with
CPU-bound PrepBUFR decode work, which stalled concurrent fetches from other
data sources. - Fixed ACE2 distributed inference failures caused by nondeterministic variable ordering
across MPI ranks. - Improved ACE2ERA5 inference performance by caching yearly forcing values
- Fixed ACE2ERA5 forcing data retrieval for static variables requested across
multiple times. - Added CF-convention scale/offset when retrieving JPSS data.
π¦ Dependencies
- Removed
multi-storage-clientfrom thedataoptional dependency group,
succeeded byobstore - Added
icechunk>=2.0.0to thedataoptional dependency group (Python β₯3.12 only)
Special thank you to our external contributors:
Climate Change - Earth and Climate Modeling
- Python
Published by NickGeneva 25 days ago
metloom - metloom v0.10.0
- Homogenize radiation variable names
- Fix snowcourse dates in NRCS client
Atmosphere - Meteorological Observation and Forecast
- Python
Published by micah-prime 25 days ago
CLEO - v0.68.0
v0.68.0 - 2026-07-30
Bug Fixes
- errors in rebase conflicts corrected - (cf9a67d) - clara.bayley
Features
- collisions struct can take a fixed seed for the random number generator pool - (5d005a2) - clara.bayley
- configuration allows option fixed seed for collisions - (de0cb18) - clara.bayley
Miscellaneous Chores
- (version) v0.68.0 - (b7ac541) - yoctoyotta1024
- comment out seed in roughpaper - (7b4c2bd) - clara.bayley
- formatting - (ad633ea) - clara.bayley
- formatting - (1901abf) - clara.bayley
Refactoring
- add clearer note on seed in configs - (0406ed3) - clara.bayley
- show example with fixed seed in roughpaper - (5c9627e) - clara.bayley
- use fixed seed for golovin kernel in shima2009 example - (f11160a) - clara.bayley
Atmosphere - Atmospheric Chemistry and Aerosol
- C++
Published by github-actions[bot] 25 days ago
OasisLMF - Release 2.5.6
OasisLMF Changelog - 2.5.6
- #2048 - Add linear interpolation lookup for correlation functions
- #2051 - enhance/supported_oed_versions
- #2052 - enhance/pytools converters dtypes
- #2054 - upgrade cibuildwheels
- #2056 - fix(il): IL outputs non-deterministic when account rows are reordered (#2040)
- #2057 - Extent api client CLI options
- #2061 - Add py3.14 to binary package builds
- #2071 - Fixes for small issues
- #2072 - split get_il_input_items
- #2074 - Switch CI to using UV, replacement for pip-tools
OasisLMF Notes
enhance/supported_oed_versions - (PR #2051)
Delegate supported_oed_versions conversion to OedExposure
Removes the to_version call from GenerateKeys.run() and forwards supported_oed_versions (from model_settings.data_settings) and disable_oed_version_update through get_exposure_data_config() on all computation step entry points. Conversion now happens inside OedExposure.__init__() (ODS_Tools #286), covering all construction paths uniformly.
Updated 3 tests to assert on config forwarding rather than to_version mock calls.
closes https://github.com/OasisLMF/ODS_Tools/issues/230
Support configurable (environment-driven) dtypes across pytools converters
Summary
The pytools binary/CSV converters and event-stream writers previously hard-coded int32/float32 for stream fields (event_id, item_id, sidx, loss, etc.). This branch propagates the configurable dtypes (oasis_int, oasis_float, areaperil_int, driven by the OASIS_INT / OASIS_FLOAT / OASIS_AREAPERIL_TYPE environment variables) through the entire conversion path, so round-trips stay correct when non-default types are configured.
Main changes
Core type handling (common/data.py, common/event_stream.py)
- Add
def_to_type_and_size()helper to resolve a field definition to its(np.dtype, itemsize). - Derive
loss_pair_dtype,item_header_dtype, andsummary_stream_index_dtypefrom the configurable field definitions instead of fixed types. - Split the numba stream writers (
mv_write_item_header,mv_write_sidx_loss) into public wrappers +*_cachedimplementations that take type/size info as arguments, so numba caching stays valid when dtypes change. - Fix an incorrect
section_idheader name (was mislabelledscale2).
Converters (csvtobin & bintocsv )
- Replace hard-coded
int32/float32reads/writes and chunk-size math with dtype-derived sizes and the shared write helpers. - Fix GUL/FM cache-write and delimiter handling,
fmcsvtobin, thebintocsvfm.pyread buffer, and abstract the vulnerability header size.
getmodel & fm (getmodel/common.py, footprint.py, manager.py, vulnerability.py, fm/compare.py, footprintconv.py)
- Use numpy dtypes for
FootprintHeader, fix a circular import, correct footprint/vulnerability type usage, and fix the loss type infm/compare.py.
Tests
- New
test_converters_env.py: runs conversions in a subprocess under adjusted dtype environments and verifies both output equivalence and the serialized dtypes. - Add
envdtypetest assets (items, vulnerability, weights, fm_profile, gul/ils, coverages, damagebin) and refactor the existing converter tests to run as class methods.
upgrades cibuildwheels - (PR #2054)
- upgrades
buildCI to use latest version ofcibuildwheels - fixes https://github.com/OasisLMF/OasisLMF/issues/2053
New subcommands
oasislmf api post
Upload files to the platform.
--portfolio-id/--portfolio-name+--oed-location-csv/--oed-accounts-csv/--oed-info-csv/--oed-scope-csv/--currency-conversion-json/--reporting-currencyβ uploads to a portfolio; omitting--portfolio-idcreates a new one.--analyses-id+--analyses-settings-jsonβ uploads analysis settings (requires--analyses-id).--model-id+--model-settings-jsonβ uploads model settings (requires--model-id).- Errors if nothing is given to upload.
oasislmf api validate
Validate a portfolio's OED exposure files.
--portfolio-id(required).- Default behaviour: triggers a new validation run and polls until it completes, then returns the detailed result.
--get-statusβ skip triggering/polling, just return the current status snapshot.--poll-interval(default5s).
oasislmf api exposure-run
Runs oasislmf exposure run server-side against a portfolio (mirrors oasislmf exposure run -h flags: -a/--kernel-alloc-rule-il, -A/--kernel-alloc-rule-ri, --model-perils-covered, -l/--loss-factor, --supported-oed-coverage-types, --extra-summary-cols, --fmpy-low-memory, --fmpy-sort-output, --check-oed, --do-disaggregation).
--portfolio-id(required),-o/--output-dirfor the downloaded result.- Default: triggers a run, polls to completion, downloads the result file.
--fetchβ skip triggering, just download the last result.--poll-interval(default5s).
oasislmf api exposure-transform
Converts a portfolio's exposure data between OED and AIR.
--portfolio-id,--file-type(location/accounts/ri_info/ri_scope),--mapping-file,--transform-file(all required).- Triggers the transform and polls until complete, then returns the updated portfolio object.
--poll-interval(default5s).
oasislmf api combine
Combines the ORD output of multiple RUN_COMPLETED analyses.
--analysis-ids(required, list),--combine-settings-json(required),--combine-name(defaultcombine-analysis).- Fire-and-forget β returns the immediate API response, no polling.
oasislmf api cancel
Cancels an in-flight analysis (input generation or run, whichever is active).
--analysis-id(required).
oasislmf api sub-tasks
Lists the sub-tasks of an analysis run.
--analysis-id(required).
oasislmf api reconnect
Reconnect to an in-progress analysis and resume polling for status
--analysis-id(required).
oasislmf api plot
Plot a Gantt chart of an analysis's sub-tasks, with a status summary
Changes to existing subcommands
oasislmf api list
- Added
-t/--subtask <id...>β print task-status details fing-m/--models,-p/--portfolios,-a/--analyses).
oasislmf api get
- Added
--subtask-output-log,--subtask-error-log,--subtask-retry-log <id...>β download task-status logs, following the same<id...>list pattern as the existing model/portfolio/analyses download fl
Add py3.14 to binary package builds - (PR #2061)
- Build binary packages for Py3.14
Switch CI to using UV, replacement for pip-tools - (PR #2074)
Swtich to https://github.com/astral-sh/uv instead of pip-tools due to https://github.com/OasisLMF/OasisLMF/issues/2070 uv seems faster and shouldn't have dependency issues.
Climate Change - Natural Hazard and Storms
- Python
Published by awsbuild 25 days ago
MARIO - v1.1.1
MARIO v1.1.1
This bugfix release rebuilds the GTAP Power MRIO parser around a record-based
assembly engine shared by the CSV and GDX backends, fixing crashes and silent
data losses on recent GTAP exports, and adds an opt-in structured row layout
for the GTAP factor and satellite blocks.
GTAP parser rewrite
- The parser now maps every record onto integer axis positions and accumulates
values directly into dense blocks, so the build cost scales with the number
of records instead of the size of the cartesian label space. A full GTAP
2023 Power MRIO CSV bundle (~7 GB, ~140M records) parses end-to-end in
about 80β90 seconds, where the previous implementation ran for 20+ minutes
before failing. - CSV reading prefers the multithreaded pyarrow engine (with a silent
fallback to the default engine) and logs per-file and per-block progress.
Fixes
- Duplicated record keys no longer crash the CSV path. Recent GTAP CSV
exports flatten several GDX symbols into one file (e.g. combustion and
non-combustion emissions), so the same key can legitimately appear more than
once: duplicated keys are now summed instead of raising
ValueError: cannot handle a non-unique multi-index. - Output- and value-added-based emission accounts are captured. The CSV
export encodes them with theSRC="TOT"placeholder; they were silently
dropped β about one third of the emission record mass in the GTAP 2023
bundle β and now land in the domestic satellite rows of the destination
region (e.g.EMI_CH4_dms_QO), mirroring how the GDX bundles store them. - No more spurious
EMI_0_*satellite rows produced by the fill step of
the previous CSV implementation (which also raised aTypeErroron the
pandas 3 string dtype). EandEYexpose one dense, aligned satellite row set on both
backends, instead of the data-dependent asymmetric row sets of the previous
CSV path.- Any satellite record mass the parser cannot attribute is now reported with a
parser warning instead of being silently dropped.
New: optional structured row layouts for GTAP
-
parse_gtapgained an opt-inmatrix_layoutsargument:db = mario.parse_gtap( path="path/to/bundle", input_format="auto", matrix_layouts={"V": ("Region", "Sector"), "E": ("Region", "Sector")}, )Factor and satellite rows are exposed as a semantic
(Region, Sector, item)MultiIndex instead of the historical flat string
names (MTAX_AUS_GRObecomes("AUS", "GRO", "MTAX")), and the matching
block specifications are registered on the database. Values are identical to
the flat parse β only the index representation changes. -
Row families without a region or sector of their own (PTAX, VAAD/VTAX
endowments, ETAX, DTAX/ITAX, domestic satellite accounts) carry the
"TOTAL"sentinel on the levels that do not apply. The sentinel is not
part of the Region/Sector sets and passes through aggregation untouched, so
no extra entry is needed in aggregation mapping files. -
The default (
matrix_layouts=None) keeps the historical flat rows, so
existing workflows are unaffected.
Notes
- The GDX backend requires the GAMS Python API; the pip package
gamsapi[transfer]is sufficient to read GDX bundles. - GTAP databases parsed with earlier MARIO versions differ from v1.1.1 output
by design: the emission block now includes the previously dropped output-
and value-added-based accounts, and E/EY share one aligned row set.
Compatibility
- Requires Python 3.11β3.13.
- No API breaking changes since v1.1.0; the
matrix_layoutsargument is
additive and off by default.
Full changelog: https://github.com/it-is-me-mario/MARIO/compare/v1.1.0...v1.1.1
Industrial Ecology - Input Output Model
- Python
Published by LorenzoRinaldi 25 days ago
PowerSystems.jl - v5.12.1
PowerSystems v5.12.1
Merged pull requests:
- transformer refactor (#1714) (@m-bossart)
- add missing fields to structs (#1716) (@jd-lara)
- parse multi swing cases (#1720) (@jd-lara)
- Fix docs race condition: add concurrency group to docs workflow (#1722) (@Copilot)
- remove last pieces of stateful units system (#1724) (@luke-kiernan)
- Make InterconnectingConverter DC current unit-aware (power-equivalent on base_power) (#1727) (@jd-lara)
- Broaden
_set_value'sFloat64restriction toReal(fixes #1721) (#1729) (@luke-kiernan) - fix substation "NODES" failure (#1732) (@m-bossart)
- Mb/dgen bug (#1733) (@m-bossart)
- Jd/restore codecov (#1736) (@jd-lara)
Closed issues:
- Discrepancy between pretty print and getter functions of unattached components (#1128)
- Solve the Units Issue Once and For All (#1134)
- Support More Time Variance in Cost Parameters (#1150)
- Review start "cost" data (#1208)
- Overhaul time variant cost functions (#1244)
- Add
WindingDatastruct that containsactive_power,reactive_power,r,x, and all the other fields that exist for each of the three windings so that we can just have threeWindingDatainstances rather than duplicating all these fields? (#1271) - Data Gaps for interoperability (#1683)
- [Copilot] Fix documentation build failure (64a4486) (#1719)
_set_value'sFloat64limitation and multiple dispatch (#1721)- Parsing distributed generation doesn't account for DGENM (distributed generation status) (#1731)
Energy Systems - Energy System Modeling Frameworks
- Julia
Published by github-actions[bot] 25 days ago
GasModels.jl - GasModels v0.13.4
Release Notes
- Bug Fix: correct sign error in transfer prices (by @hskkanth )
- Merge ogf and ogf_comp_power_unc (by @rb004f )
- Improve multinetwork constraint building (by @rb004f )
Breaking Changes
- None
Energy Storage - Hydrogen
- Julia
Published by skylerreid 25 days ago
REHO - v2.0.0
| Type | Category | Title | Description | Breaking |
|---|---|---|---|---|
| ![Changed][changed] | Global | Packages migration | Dropped support for pandas 1.x and 2.x; REHO now requires pandas>=3.0.0. Code relying on pre-3.0 pandas semantics (e.g. implicit downcasting, DataFrame.append, old groupby/resample defaults) will need to be updated before upgrading. |
π΄ |
| ![Changed][changed] | Global | Packages migration | Dropped support for SQLAlchemy 1.x; REHO now requires sqlalchemy>=2.0.0. Any custom code building queries against QBuildingsReader.tables using the 1.x select([...]) style must be updated to the 2.0 select(...) API. |
π΄ |
| ![Changed][changed] | Global | Packages migration | Raised the minimum Python version from 3.9 to 3.11. Python 3.9 and 3.10 are no longer supported. | π΄ |
| ![Changed][changed] | Global | Packages migration | Unpinned numpy (<2.0.0) and geopandas (<1.0.0). Environments now resolve to numpy 2.x / geopandas 1.x by default; code depending on numpy 1.x or geopandas <1.0 behavior may break. |
π΄ |
| ![Fixed][fixed] | Scripts | Packages migration | Various fixes to example scripts and the test runner for pandas 3.0. | π’ |
| ![Changed][changed] | ![Preprocessing][preprocessing] | QBuildings access | QBuildingsReader.read_db selection API changed:1. Buildings are now selected through a single filters dictionary, e.g. read_db({'transformers': 234}), read_db({'egid': 1009515}), read_db({'geometry': 'boundary.gpkg'}).2. Filters combine with a logical AND, so a transformer and an EGID can be given together.3. The district_boundary, district_id, egid, and id_building keyword arguments are deprecated in favor of filters; they now raise a DeprecationWarning and will be removed in a future release. |
π |
| ![Added][added] | ![Preprocessing][preprocessing] | QBuildings access | QBuildingsReader.read_db can now select buildings by id_building, and by an arbitrary geometry (a file path, WKT string, shapely geometry, or (Geo)DataFrame) via spatial intersection. |
π’ |
| ![Added][added] | ![Plotting][plotting] | Profiles | Adding of a plot_combined_profiles that allows to combine different type of profiles to be mixed together, typically one by season. |
π’ |
| ![Fixed][fixed] | ![Plotting][plotting] | Plot fixes | Correction in plot_eud and plot_paretoand plot_pareto_by_objectives. |
π’ |
| ![Added][added] | ![Preprocessing][preprocessing] | Reference scenario | If the scenario name is reference, it activates a function where we build REHO with the units configuration (heating + dhw system and installed PVs) retrieved from QBuildings. |
π’ |
| ![Changed][changed] | ![Preprocessing][preprocessing] | Solar gains | Change of re-calibration of solar gains and Uh when ERA < Footprint. | π’ |
| ![Changed][changed] | ![Postprocessing][postprocessing] | Sensitivity analysis | Add an option to do the sensitivity analysis in the buildings data as well as prices. | π |
Migration notes
- If you pin
REHO<2.0(once released) in your own project, your existing pandas 1.x/2.x and
SQLAlchemy 1.x environment will keep working. Upgrading toREHO>=2.0requires upgrading
pandas and SQLAlchemy alongside it β there is no dual-support release. - Replace
reader.read_db(district_id=234, egid=[...])with
reader.read_db({'transformers': 234, 'egid': [...]}). The deprecated keyword form still works
but now raises aDeprecationWarningand will be removed later.
Energy Systems - Renewable Energy Integration
- Python
Published by github-actions[bot] 25 days ago
pvcaptest - v0.17.0
A large release centered on making the filter pipeline a first-class, serializable
object and on CapTest owning the whole test lifecycle. It contains a number of
breaking changes β see below before upgrading.
Highlights
- Filters are first-class step classes. The new
captest.filtersmodule holds
Irradiance,Sensors,Time,Outliers,Clearsky,RepCond, and the rest.
Each declares typedparamparameters, so a step can be built and run directly
(Irradiance(low=200, high=800).run(cd)), inspected, reordered, and replayed.
CapData.filters_to_config()/run_pipeline(config)serialize and replay a
chain, andCapTest.to_yaml/from_yamlround-trip both pipelines in one file. CapTest.run_test()β one call to go from a config to results: setup β
pipeline replay β fit β reporting-condition verification βCapTestResults.
Runs one side at a time withside='meas'|'sim', andreload(side, path=...)
re-loads a side and re-applies its chain against fresh data.- New data prep stage between load and
setup(). Unit conversions, scaling,
dtype casts, column drops and renames are declared, serialized, and replayed
after every load βprep_convert_units,prep_scale,prep_astype,
prep_custom, plusCapTest.meas_prep/sim_prepin the yaml config. See the
new "Preparing Data" user guide page. CapTest.rcis the single owner of reporting conditions, settable for manual
override and populated automatically byrep_cond, with staleness warnings when
an RC-changing write invalidates already-appliedref_val='rep_irr'steps.- Structured results.
captest_results()returns aCapTestResultsobject
(cap ratio, pass/fail and bounds, expected/actual/tested capacity, per-side
points and regression tables, RC provenance) instead of a bare float. - New filters:
filter_backtracking(removes single-axis-tracker backtracking
intervals from solar position and tracker geometry),filter_rolling_std,
filter_abs_diff_prev,filter_flag,filter_threshold, and
filter_sensors_abs_diff. - Automatic year-end wrapping via
CapTest.auto_wrap_sim(defaultTrue) β
a measured test within 60 days of a calendar-year boundary now aligns the
simulated data automatically, replacing the manualfilter_time(wrap_year=True). - Reporting and introspection:
describe_filters()for a written summary of a
filtering run,rerun_filters_from(index)for a partial pipeline re-run, and
full state-transaction rollback so a failing step leaves the pipeline and RC
state unchanged.
Breaking changes
- Loading a config no longer applies its filters.
from_yaml/from_mapping
store pipelines asmeas_filters_pending/sim_filters_pending;run_test()
runs them. A freshly loaded test holds unfiltered data for review, and
from_yaml(path).run_test()executes each pipeline exactly once. With a computed
rc_source,ct.rcisNoneuntil the filters run. rep_cond_sourceis renamedrc_source. Configs written by v0.16.0 will not
load βfrom_yamlraisesValueError: Unknown key 'rep_cond_source' ...β so
rename the key in saved configs and in any code passing it.- Filter step classes dropped the
Filterprefix and the terse names were
expanded (FilterIrrβIrradiance,FilterPfβPowerFactor). YAML pipeline
configs written with the oldtypestrings must be regenerated. CapData.data_filteredis now a derived, read-only property over the filter
chain. It has no setter; clear filtering withreset_filter().- The
inplacekeyword is gone from allfilter_*methods and
fit_regressionβ filters always act in place and record a step. filter_sensorscomparison is unified:perc_diffβthresholds, plus
method='percent_diff'|'abs_diff'or a callable;row_filteris removed.filter_time(wrap_year=True)is removed β useauto_wrap_sim(see above).perf_ratio_temp_corr_nrel(single_irr_weighted_temp=...)is removed; it could
never change the reported PR once the correction was applied correctly.- The module-level
capdata.run_test(cd, steps)is removed β the name is now
CapTest.run_test(). Filter steps also reject assignment to unknown attribute
names, raisingAttributeErrorwith a close-match suggestion.
Notable fixes
perf_ratio_temp_corr_nrelnow multiplies the DC nameplate by the temperature
correction factor instead of dividing by it, matching NREL/TP-5200-57991. The
division inverted the correction, biasing PR low for hot conditions and high for
cold. PR values computed with this function will change.- Remote URIs (
s3://...) andPath/UPathobjects now work for every loader
path argument, not justload_data(path=...). import captestno longer fails in a minimal install with
AttributeError: module 'importlib' has no attribute 'util'.ReportingIrradiance.plotno longer raisesKeyErroron a NaN reporting
irradiance arriving as anumpy.float64.
Full details, including the docs and tooling changes, are in the
changelog.
Full Changelog: https://github.com/pvcaptest/pvcaptest/compare/v0.16.0...v0.17.0
Renewable Energy - Photovoltaics and Solar Energy
- Python
Published by bt- 25 days ago
cellpy - cellpy 2.1.1.post2
Post-release of v2.1.1 β collected summary facet y-axis controls for apps. Safe drop-in over 2.1.1 / 2.1.1.post1.
- Per-panel y-limits (and clearer
share_y) for collected summary facet plots (#804).
Summary facets default to independent y-scales; pin CE (etc.) with Collection.plot(y_ranges={"coulombic_efficiency": [0, 110]}) (Plotly).
Energy Storage - Battery
- Python
Published by jepegit 25 days ago
ecmwf-opendata - 0.3.34
What's Changed
- feat: expose retry arguments in Client by @pjpetersik in https://github.com/ecmwf/ecmwf-opendata/pull/97
Full Changelog: https://github.com/ecmwf/ecmwf-opendata/compare/0.3.33...0.3.34
Climate Change - Climate Data Access and Visualization
- Python
Published by awarde96 25 days ago
Plant-for-the-Planet - 2026-07-30-fix-localstorage-language-writer
What's Changed
- Fix localStorage language writer by @mohitb35 in https://github.com/Plant-for-the-Planet-org/planet-webapp/pull/3018
Full Changelog: https://github.com/Plant-for-the-Planet-org/planet-webapp/compare/2026-07-30-release-fix-map-embed...2026-07-30-fix-localstorage-language-writer
Biosphere - Deforestation and Reforestation
- TypeScript
Published by mariahosfeld 25 days ago
Plant-for-the-Planet - 2026-07-30-release-fix-map-embed
What's Changed
- fix(embed): restore project data when the details pane is hidden by @mohitb35 in https://github.com/Plant-for-the-Planet-org/planet-webapp/pull/3011
Full Changelog: https://github.com/Plant-for-the-Planet-org/planet-webapp/compare/2026-07-29-dependency-release...2026-07-30-release-fix-map-embed
Biosphere - Deforestation and Reforestation
- TypeScript
Published by mariahosfeld 25 days ago
HydroPowerSimulations.jl - v0.19.0
HydroPowerSimulations v0.19.0
Breaking changes
- bump psi version
Merged pull requests:
- Fix HydroGen MarketBidCost offer-curve breakpoint units (#136) (@luke-kiernan)
Closed issues:
- README documentation badge links to dev instead of stable (#71)
- Review of decision model (#101)
Renewable Energy - Hydro Energy
- Julia
Published by github-actions[bot] 25 days ago
PowerSimulations.jl - v0.38.0
PowerSimulations v0.38.0
Breaking changes
- Implemente G-1 model
Merged pull requests:
- Add G-1 security-constrained reserve formulations with monitored componets (#1617) (@SebastianManriqueM)
- Fix flaky Documentation CI: raise InterLinks inventory fetch timeout (#1649) (@jd-lara)
Energy Systems - Energy System Modeling Frameworks
- Julia
Published by github-actions[bot] 25 days ago
wetterdienst - v0.130.0
What's changed in 0.130.0
Changed
- Raise stale/incorrect dependency lower bounds to honest, still-compatible floors β most importantly
fastapi>=0.115(the REST endpoints use Pydantic query-parameter models, a 0.115 feature). Alsohttpx>=0.27,uvicorn>=0.30,duckdb>=1,xarray>=2024.6,fsspec>=2024.6,python-dateutil>=2.8.2,tabulate>=0.9,tqdm>=4.64,click>=8.1, and a newsqlalchemy-cratedb>=0.40floor. No change to resolved/tested versions. (#1777) - Rewrite the
history/summarize/interpolateendpoint (MCP tool) descriptions so small models stop mis-routing plain weather questions. (#1774)
Fixed
- Match station names with
WRatioinfilter_by_nameso a bare place name finds its stations. (#1773) - Honor the
rankargument infilter_by_name. (#1773) - Limit the
stationslisting to the requestedrankon REST/CLI. (#1775) - Return
404for OAuth discovery paths so MCP clients treat/mcpas no-auth. (#1772) - Type
value/qualityasfloat | Nonein_ValuesItemDictso the/api/valuesschema matches serialised numbers and MCP output validation stays on. (#1776)
Full changelog: https://github.com/earthobservations/wetterdienst/compare/v0.129.0...v0.130.0
Atmosphere - Meteorological Observation and Forecast
- Python
Published by gutzbenj 26 days ago
netcdf-fortran - v4.6.4
What's Changed
- V4.6.3 wellspring.wif by @WardF in https://github.com/Unidata/netcdf-fortran/pull/484
- Update message triggered when nc_def_var_szip is not found. by @WardF in https://github.com/Unidata/netcdf-fortran/pull/485
- Add hooks to new libnetcdf meta_block_size functions by @WardF in https://github.com/Unidata/netcdf-fortran/pull/488
Full Changelog: https://github.com/Unidata/netcdf-fortran/compare/v4.6.3...v4.6.4
Climate Change - Climate Data Standards
- Fortran
Published by WardF 26 days ago
Watershed Workflow - Watershed Workflow v2.1.0
This is a relatively minor release that is done for people who do not want to rework their currently working notebooks. The next release, version 2.2, will make significant API changes as we settle on a better API for WW version 2.
What's Changed
New features
- Add new pit-filling algorithms for dual meshes (#153)
- Export
GeoDataFramefrom the M2 mesh object with each cell as a row (#134) - Add prepartitioning support (#136)
- Port additional features from v1.6 (#138)
- Add unit conversion for
manager_soilgrids_2017and revise observation options for steady-state and transient input files (#141)
Bug fixes
- Fix centroid calculation error for polygons with more than 3 vertices (#158)
- Fix a few bugs in triangle refinement at stream junctions (#155)
- Fix stream regions bug (#140)
- Fix old snow-temperature bug in the
cyclic_steadystatetemplate (reported by Sundar Niroula) - Fix a variety of bugs and QoL issues found while running the Russian River large-mesh workflow (#146)
- Fix
meshpyTriangle crash on linux-aarch64 by disabling FP contraction - Fix broken documentation link (#130)
- Fix typo in split HUCs logic
Improvements & cleanup
- General code cleanup and minor QoL changes (#135)
- Continued work on geologic data handling (#156)
- Pin Rosetta to protect against breaking changes in future versions
- Bypass HDF5-shared/CMake incompatibilities in the build
- Various CI improvements: SEACAS/METIS changes (#137), pymetis/metis arm64 workarounds, forced newer pymetis with CSR object, import testing for the environment build, certificate/container fixes
- Documentation cleanup updates
Full Changelog
Hydrosphere - Freshwater and Hydrology
- Python
Published by ecoon 26 days ago
Food Expiration Dates - Version 2.10.0
The FOSS version does not have the function to scan barcodes because it requires non-FOSS dependencies.
β¨ What's New
π New feature: What's New
Stay informed about the latest features, improvements, and important app updates.
Full Changelog: https://github.com/lorenzovngl/FoodExpirationDates/compare/v2.9.2...v2.10.0
Consumption - Agriculture and Nutrition
- Kotlin
Published by lorenzovngl 26 days ago
ecodata - v8.0.0
Date: 07/29/2026
Improvements
- Renamed default branch from
mastertomain - Deployed suite of new and revised issue templates
- Deployed suite of new pull request templates
- Added new repository documentation (CONTRIBUTING, CODE_OF_CONDUCT)
- Revised README
- Adjusted workflow triggers and bumped versions of external actions
- Deployed Air reformatter workflows and style guide
- Reformatted codebase according to new style guide
Full Changelog: https://github.com/NOAA-EDAB/ecodata/compare/v7.0.0...v8.0.0
Biosphere - Marine Life and Fishery
- HTML
Published by BBeltz1 26 days ago
PowerCalc - v1.23.2 π
Changes
- #4383 Update translations @github-actions[bot]
- #4386 Translate all untranslated strings for all languages @bramstroker
- #4390 Update translations @github-actions[bot]
π‘ Power profiles
- #4403 Add Bseed Smart Zigbee Switch profile @Maxik933
π Features
- #4388 Translate possible errors from action calls @bramstroker
- #4389 Strict mypy @bramstroker
π Bug Fixes
- #4382 Add test for missing test coverage and remove dead code @bramstroker
- #4385 Correct language code for czech translations @bramstroker
- #4415 Fix issue raised in 2026.8 beta where composite devices where discovered @bramstroker
Energy Systems - Building Energy Monitoring
- Python
Published by github-actions[bot] 26 days ago
InfrastructureSystems.jl - v3.6.2
InfrastructureSystems v3.6.2
Merged pull requests:
- add generic docstring for get_uuid for psy cross-referencing (#601) (@m-bossart)
Energy Systems - Grid Management and Microgrid
- Julia
Published by github-actions[bot] 26 days ago
FIMS - v0.9.4
What's Changed
Bug Fixes
- fix(JSON): use sanitize_val() for JSON output values by @Bai-Li-NOAA in https://github.com/NOAA-FIMS/FIMS/pull/1505*
- fix(ci): fix swap file creation for slow-tests on ubuntu-latest by @aman-raj-srivastva in https://github.com/NOAA-FIMS/FIMS/pull/1545
- fix memory leak by @Andrea-Havron-NOAA in https://github.com/NOAA-FIMS/FIMS/pull/1554
- fix(initialize_fims): log_sd needed filtered by module_type by @kellijohnson-NOAA in https://github.com/NOAA-FIMS/FIMS/pull/1653
Breaking Changes
nameis nowfleetin FIMSFramefleet_nameis nowfleetin FIMSFit
Refactor Changes
- Expose Population proportion_female with default 0.5 by @szu-yun-ko in https://github.com/NOAA-FIMS/FIMS/pull/1494
- Add Google Benchmark template, R helper, and a benchmark for CatchNumbersAtAge by @szu-yun-ko in https://github.com/NOAA-FIMS/FIMS/pull/1277
- Optimizing the build memory and to surface compilation performance metrics by @Rohith-1717 in https://github.com/NOAA-FIMS/FIMS/pull/1336
- docs: add debugging workflow for long-running or crashing test runs by @Eshaan-byte in https://github.com/NOAA-FIMS/FIMS/pull/1420
- Improve convergence handling in fit_fims by wrapping nlminb calls with tryCatch by @aman-raj-srivastva in https://github.com/NOAA-FIMS/FIMS/pull/1385
- Refactor gtest files to use_gtest_template() convention by @Eshaan-byte in https://github.com/NOAA-FIMS/FIMS/pull/1433
- Dev tu rtmb style by @msupernaw in https://github.com/NOAA-FIMS/FIMS/pull/1430
- Rename phi_0 by @nathanvaughan-NOAA in https://github.com/NOAA-FIMS/FIMS/pull/1490
- refactor: Removes globalVariables() by @kellijohnson-NOAA in https://github.com/NOAA-FIMS/FIMS/pull/1539
- Dev deep copy by @msupernaw in https://github.com/NOAA-FIMS/FIMS/pull/1626
New features
- allow for priors on derived quantities by @nathanvaughan-NOAA in https://github.com/NOAA-FIMS/FIMS/pull/1603
- tidy output by @ericward-noaa in https://github.com/NOAA-FIMS/FIMS/pull/1509
- Migrate FIMSdiags from separate repo into FIMS repo by @iantaylor-NOAA in https://github.com/NOAA-FIMS/FIMS/pull/1542
New Contributors
- @vivek0913 made their first contribution in https://github.com/NOAA-FIMS/FIMS/pull/1526
Full Changelog: https://github.com/NOAA-FIMS/FIMS/compare/v0.9.3...v0.9.4
Biosphere - Marine Life and Fishery
- C++
Published by kellijohnson-NOAA 26 days ago
Iris - v3.16.0rc0
This is a release candidate for Iris v3.16.0.
Please see the "What's New" for further details.
Available on conda-forge:
> conda install -c conda-forge/label/rc_iris iris=3.16.0rc0
and PyPI:
> pip install scitools-iris==3.16.0rc0
| Release Feedback |
|---|
Climate Change - Climate Data Processing and Analysis
- Python
Published by HGWright 26 days ago
MOVES - MOVES6-ReleaseCandidate3
EPA's MOtor Vehicle Emission Simulator (MOVES) is a state-of-the-science emission modeling system that estimates emissions for mobile sources at the national, county, and project level for criteria air pollutants, greenhouse gases, and air toxics, available under EPA's Open Source Software policy.
The MOVES6 Release Candidate is made available for testing purposes to allow modelers to become familiar with changes between MOVES5 and MOVES6 before MOVES6 is officially released. Results from the release candidate version may not be used in work for state implementation plans, conformity determinations, or for any other regulatory purpose.
The installer for this release candidate is available under the "Assets" heading below.
Results from the official MOVES6 may differ from the results of this release candidate. Until the official version of MOVES6 is available, MOVES5 is the latest version of MOVES for regulatory purposes. For more information, see MOVES5 Policy Guidance: Use of MOVES for State Implementation Plan Development, Transportation Conformity, General Conformity, and Other Purposes (EPA-420-B-24-038).
For additional information on MOVES, visit EPA's MOVES website.
Emissions - Emission Observation and Modeling
- Java
Published by danielbizercox 26 days ago
whisp - v3.0.0a16
What's Changed
Fixes:
- Fixed GLAD-L Landsat alerts crashing every Whisp run with "Expected a homogeneous image collection" after GLAD dropped the conf25 band from two (South America) UpdResult tiles; confidence bands are now mosaicked tolerantly so a missing year band can't break the collection in #248
Datasets update:
- Added GLAD-L 2024 (previously unavailable in GEE; GLAD has since added it as conf24 in the 2023final asset) and made GLAD-L pick up the newest Landsat year automatically; adds a
GLAD-L_year_2024output column in #248
Full Changelog: https://github.com/forestdatapartnership/whisp/compare/v3.0.0a15...v3.0.0a16
PyPi Release: openforis-whisp
Biosphere - Deforestation and Reforestation
- Python
Published by andyarnell 26 days ago
Nos Gestes Climat - Release v4.14.1
What's Changed
- Notif IA by @JuliePouliquen in https://github.com/incubateur-ademe/nosgestesclimat/pull/2792
- Fix: double comptage terminaux numΓ©rique by @Clemog in https://github.com/incubateur-ademe/nosgestesclimat/pull/2795
- fix: icons are now in namespace by @Clemog in https://github.com/incubateur-ademe/nosgestesclimat/pull/2796
- π Release 4.14.1 by @Clemog in https://github.com/incubateur-ademe/nosgestesclimat/pull/2798
Full Changelog: https://github.com/incubateur-ademe/nosgestesclimat/compare/v4.14.0...v4.14.1
Emissions - Carbon Intensity and Accounting
- JavaScript
Published by github-actions[bot] 26 days ago
env_canada - v0.18.0
Changes
- ECMap / ECRadar: Add
interpolationinit parameter to smooth the WMS-rendered radar layer instead of leaving it pixelated, using theINTERPOLATION=TRUEWMS parameter (suggested in #143). Defaults toFalse, matching previous behaviour - ECMap / ECRadar: Add
webpinit parameter to request the radar layer from Environment Canada's WMS as WebP instead of PNG, and returnget_latest_frame()/get_loop()output as WebP instead of PNG/GIF, trading lower bandwidth for higher per-frame latency. Defaults toFalse, matching previous behaviour
Sustainable Development - Data Catalogs and Interfaces
- Python
Published by michaeldavie 26 days ago
icechunk - v2.1.2
What's Changed
- CI: Coverage for Rust, prepare for Python+PyO3 in a follow-up PR by @li-em in https://github.com/earth-mover/icechunk/pull/2093
- dev: sync nix and pixi dependencies versions by @li-em in https://github.com/earth-mover/icechunk/pull/2269
- chore(deps): bump the actions group across 1 directory with 8 updates by @dependabot[bot] in https://github.com/earth-mover/icechunk/pull/2268
- chore(deps): bump the rust-dependencies group with 2 updates by @dependabot[bot] in https://github.com/earth-mover/icechunk/pull/2270
- chore(deps-dev): bump prettier from 3.9.4 to 3.9.5 in /icechunk-js in the js-dependencies group by @dependabot[bot] in https://github.com/earth-mover/icechunk/pull/2271
- Refresh napi-generated js bindings by @li-em in https://github.com/earth-mover/icechunk/pull/2272
- Reject shift_array/reindex_array on non-regular chunk grids by @jhamman in https://github.com/earth-mover/icechunk/pull/2257
- CI: Add Just tasks to run CI locally, reuse tasks in CI by @li-em in https://github.com/earth-mover/icechunk/pull/2104
- Fix docs readme by @lsterzinger in https://github.com/earth-mover/icechunk/pull/2280
- Fix manifest.fbs comment for compression_algorithm = 0 by @Shane98c in https://github.com/earth-mover/icechunk/pull/2277
- Explicit minimum pixi version and CI tweaks by @li-em in https://github.com/earth-mover/icechunk/pull/2285
- Account for lost successful responses in conditional PUT by @li-em in https://github.com/earth-mover/icechunk/pull/2156
- chore(deps): bump brace-expansion from 5.0.5 to 5.0.7 in /icechunk-js by @dependabot[bot] in https://github.com/earth-mover/icechunk/pull/2286
- Add contributing and coc by @ianhi in https://github.com/earth-mover/icechunk/pull/2287
- Bump JS dependencies, cache by @li-em in https://github.com/earth-mover/icechunk/pull/2288
- chore(deps-dev): bump the js-dependencies group across 1 directory with 2 updates by @dependabot[bot] in https://github.com/earth-mover/icechunk/pull/2282
- Don't strip quotes when doing conditional operations in object_store by @li-em in https://github.com/earth-mover/icechunk/pull/2289
- chore(deps): bump the actions group with 2 updates by @dependabot[bot] in https://github.com/earth-mover/icechunk/pull/2281
- Select appropriate reduction for dask-array by @li-em in https://github.com/earth-mover/icechunk/pull/2292
- Remove unused Sphinx dependencies and config by @VeckoTheGecko in https://github.com/earth-mover/icechunk/pull/2293
- More GHA caching, clean remaining zizmor warnings by @li-em in https://github.com/earth-mover/icechunk/pull/2295
- docs: mention the Earthmover Community Slack in the contributing guide by @claude[bot] in https://github.com/earth-mover/icechunk/pull/2296
- Python: build an exception tree rooted by
IcechunkErrorby @li-em in https://github.com/earth-mover/icechunk/pull/2267 - Fix upstream-dev CI job: zarr test overrides, stateful testing, upstream GHA by @li-em in https://github.com/earth-mover/icechunk/pull/2294
- chore(deps): bump quinn-proto from 0.11.14 to 0.11.16 by @dependabot[bot] in https://github.com/earth-mover/icechunk/pull/2298
- Re-enable xarray timedelta/datetime roundtrip tests on xarray >= 2026.7.0 by @li-em in https://github.com/earth-mover/icechunk/pull/2297
- chore(deps-dev): bump the js-dependencies group in /icechunk-js with 3 updates by @dependabot[bot] in https://github.com/earth-mover/icechunk/pull/2301
- Expose manifest update concurrency configuration option by @aldenks in https://github.com/earth-mover/icechunk/pull/2274
- Reduce ReadTheDocs build time, CI cache sizes by @li-em in https://github.com/earth-mover/icechunk/pull/2305
- chore(deps): bump the actions group across 1 directory with 3 updates by @dependabot[bot] in https://github.com/earth-mover/icechunk/pull/2300
- Stop mkdocs-jupyter from probing plain markdown pages by @li-em in https://github.com/earth-mover/icechunk/pull/2307
- Prepare v2.1.2 release by @li-em in https://github.com/earth-mover/icechunk/pull/2308
New Contributors
- @lsterzinger made their first contribution in https://github.com/earth-mover/icechunk/pull/2280
- @Shane98c made their first contribution in https://github.com/earth-mover/icechunk/pull/2277
- @claude[bot] made their first contribution in https://github.com/earth-mover/icechunk/pull/2296
- @aldenks made their first contribution in https://github.com/earth-mover/icechunk/pull/2274
Full Changelog: https://github.com/earth-mover/icechunk/compare/v2.1.1...v2.1.2
Climate Change - Climate Data Standards
- Rust
Published by li-em 26 days ago
Ecoscope - v2.17.3
What's Changed
Other Changes
- flatten nested attachment filenames in
download_grouped_event_attachmentsby @zakhusayn in https://github.com/wildlife-dynamics/ecoscope/pull/794
Full Changelog: https://github.com/wildlife-dynamics/ecoscope/compare/v2.17.2...v2.17.3
Biosphere - Conservation and Restoration
- Python
Published by github-actions[bot] 26 days ago
CLEO - v0.67.0
v0.67.0 - 2026-07-29
Bug Fixes
- remove stray creation of terminalv from RogersGKTerminalVelocity - (b409aef) - clara.bayley
Continuous Integration
- compile two more breakup example executables - (7f0dc05) - clara.bayley
Features
- new breakup examples for other flag options - (e76556c) - clara.bayley
Miscellaneous Chores
- (version) v0.67.0 - (930459d) - yoctoyotta1024
- (version) v0.66.1 - (2d5ee9e) - yoctoyotta1024
- add note on use of phi_out - (bd4d4f2) - clara.bayley
- formatting for robustness - (0a41043) - clara.bayley
Refactoring
- change colours - (5f52cfd) - clara.bayley
- make examples compatible with changes to TSCoalBuReFlag - (3ee27bf) - clara.bayley
- make examples compatible with changes to SUCoalBuReFlag - (764c9e9) - clara.bayley
- make examples compatible with changes to LowListCoalProb and LowListBuProb - (bb52c12) - clara.bayley
- make examples compatible with changes for CollisionKineticEnergyNFrags - (0918b01) - clara.bayley
- remove deleted files from cmake - (ba90725) - clara.bayley
- remove contrained RogersGKTerminalVelocity from TSCoalBuReFlag - (9f1563b) - clara.bayley
- remove contrained RogersGKTerminalVelocity from SUCoalBuReFlag - (efa2a4d) - clara.bayley
- remove contrained RogersGKTerminalVelocity from LowListCoalProb - (b016ca3) - clara.bayley
- remove contrained RogersGKTerminalVelocity from CollisionKineticEnergyNFrags - (f5d5ed4) - clara.bayley
- add comment on examples with E_coal = 1.0 - (d7bfe30) - clara.bayley
- add note clarifying coaleff in example of LongHydroProb box model - (476e745) - clara.bayley
- show possible collision configurations more clearly - (9d86190) - clara.bayley
Atmosphere - Atmospheric Chemistry and Aerosol
- C++
Published by github-actions[bot] 26 days ago
AquaFetch - AquaFetch 1.1.0
AquaFetch 1.1.0
New datasets
- CAMELS_DE β Germany
- CAMELS_PL β Poland
- CAMELS_PE β Peru (136 catchments)
- UKFlow15 β UK 15-minute streamflow (1,369 gauges)
- CaravanQual β water-quality extension for Caravan
- GlobalRiverNutrients β total N / total P / streamflow (observational)
- NamalValleyPakistan
Enhancements
- Faster / refactored HYSETS, GSHA, LamaH-Ice, EStreams, CAMELS-H, CAMELS-DE
- Efficient time-weighted resampler; time-weighted averaging for Ireland (OPW)
- New
free_disk_spacemethod (rr) and two new HYSETS methods - Optional
seedfor reproducible station sampling infetch()
Fixes
- Restored core dependencies (pandas, requests) in
install_requires - Fixed CAMELS-CH coordinate bug and static-feature renaming bug
- Ireland OPW stations now assert timezone info
- Removed unguarded print statements
Hydrosphere - Ocean and Hydrology Data Access
- Python
Published by AtrCheema 26 days ago
BEMRosetta - 2026 Aug
Libraries
Added libraries for C/C++
GUI
Advice on maximum frequency depending on mesh size
CLI
AQWA/Capytaine: Iterative detection of optimal irregular frequencies removal mesh size in case of the original fails.
General
macOS is supported
AQWA
- Case generation allows automatic or user supplied irregular frequencies removal mesh.
- Fixed problems with symmetries
Renewable Energy - Hydro Energy
- C++
Published by izabala123 26 days ago
cellpy - cellpy 2.1.1.post1
Docs-only post-release of v2.1.1 β no API, schema, or runtime changes. Safe drop-in over 2.1.1.
- Backfilled
HISTORY.mdfor the already-shipped 2.1.1 and 2.1.0.post1 releases (#802).
No code behaviour change.
Energy Storage - Battery
- Python
Published by cursor[bot] 26 days ago
ecmwf-opendata - 0.3.33
Fix formatting so push to pypi works.
Full Changelog: https://github.com/ecmwf/ecmwf-opendata/compare/0.3.32...0.3.33
Climate Change - Climate Data Access and Visualization
- Python
Published by awarde96 26 days ago
ecmwf-opendata - 0.3.32
What's Changed
- fix: respect explicit stream for aifs-ens (waef was forced to enfo) by @valtzen in https://github.com/ecmwf/ecmwf-opendata/pull/100
New Contributors
- @valtzen made their first contribution in https://github.com/ecmwf/ecmwf-opendata/pull/100
Full Changelog: https://github.com/ecmwf/ecmwf-opendata/compare/0.3.31...0.3.32
Climate Change - Climate Data Access and Visualization
- Python
Published by awarde96 26 days ago
ToOp - v0.10.1
Fixes
- fix: resolve wheel build collisions by refining package paths by @BenjPetr in https://github.com/eliagroup/ToOp/pull/654
- test: complex grid save and load powsybl by @spetznick-elia in https://github.com/eliagroup/ToOp/pull/649
Full Changelog: https://github.com/eliagroup/ToOp/compare/v0.10.0...v0.10.1
Energy Systems - Grid Analysis and Planning
- Python
Published by spetznick-elia 26 days ago
cellpy - cellpy 2.1.1
Patch release β app-builder fixes and conveniences (gathered while building cellpy-simple-gui on 2.1.0.post1). Additive, no breaking changes.
Fix
- Group-averaged collected summaries now plot:
Collection.plot()/plot(spread=True)render group-keyedmeanΒ±stdframes instead of raisingKeyError 'cell'(#785).
Collect / batch
cellpy.collect.from_cells()(+Batch.from_cells): build a batch straight from already-loadedCellpyCellobjects held in memory (#787).Collection.is_grouped/meta.grouped: signals whether group-averaging actually happened (#790).Collection.save()now supportsxlsxandjson(was parquet/csv only) (#789).CurveOptionsgainsmode/method, forwarded per cell toget_capβ parity with the single-cell call (#788).
Instruments / docs
cellpy.list_instruments(): quiet, app-facing instrument listing β[{"id", "label", "models", "suffixes"}], no per-module warnings (#786).- App/agents guide: note on the polars/pandas frame boundary and quieting cellpy's logger/warnings (#791).
Deferred app-builder ideas split to v2.2: lightweight read_meta (#799), per-instrument metadata schema (#800), app-friendly collected-figure theming (#801).
Energy Storage - Battery
- Python
Published by jepegit 26 days ago
AMO-Tools-Desktop - MEASUR v1.8.1
A software tool for calculating energy efficiency for a variety of industrial and manufacturing applications.
MEASUR helps manufacturers increase industrial energy efficiency at the plant-level and in specific systems. Learn step-by-step ways to identify opportunities, monitor progress, and improve efficiency in any facility. Some tools help facilities implement an energy management system and prepare to become ISO 50001 and Superior Energy Performance certified. Based on older Department of Energy (DOE) tools, the Industrial Technologies office (ITO, formerly the Advanced Manufacturing Office, AMO) has undertaken this effort to refactor the legacy tools into a modern environment.
The suite includes 8 assessment modules (6 energy system, the treasure hunt, and the water balance modules), a Data Exploration Module, extensive help text, comprehensive reports, data visualization, and 80 calculators!
Release Notes v1.8.1
MEASUR is a supported application, updates are expected and may impact previously created assessments.
Warnings:
- Installing v1.0.0 or an earlier version of this tool will automatically reset your app data. Data can be imported into an earlier version from v1.0.1
- Do not install an earlier version of this tool without resetting your app data (in settings).
- Assessments created in MEASUR 0.8.0 or later are not compatible with older versions.
- Exporting from v.0.8.0 and importing to a lower version will continue to work, though new features will not be available.
What's New?
- Process Cooling Assessment - Various additions and improvements
- PSAT PDF reports workflow - Improve readability and presentation with quicker access to report PDF
Here are the details of what's new in version 1.8.1:
Application
- Enhanced: Sponsors list updated
- Enhanced: Privacy notice updated to clarify observed data
Compressed Air
- Added: Air Velocity documentation
- Added: System Capacity documentation
Steam
- Fixed: SSMT -> Change Fuel Type EEM should be managed by Operational Impacts (settings) visibility
Pumps
- Enhanced: Upgrade PSAT report building workflow to improve readability and presentation with quicker access to report PDF
Process Cooling
- Added: Ability to view chiller performance curve after adjustments
- Added: Allow user to declare unknown pump size
- Added: Allow user to declare Tower Fan Type Unknown
- Fixed: Results relating to chiller performance curve
- Fixed: By default, performance graph shows unadjusted curve
- Fixed: Use kW/Ton where kW/RT was being used
- Fixed: issues resulting in stale profile charts for chillers with custom performance
Here are the details of what's new in version 1.7.5:
Application
- Issue 8602: Fix checkmark icon visibility on copy table clipboard notification
- Added: Add SEO features, including: sitemap, meta tags, twitter tags
- Fixed: Show full toast notification width on mobile screens
Compressed Air
- Added: CA Reduction documentation added
- Added: Pneumatic Air Requirement Suite documentation added
- Added: Receiver Tank Suite documentation added
- Added: CA Operating Cost Suite documentation added
- Added: Pipe Sizing Calculator Suite documentation added
- Added: Bag Method documentation added
- Enhanced: Update CA Leak Survey to fit new suite calculations
- Enhanced: Improve Compressed Air - Leak Survey UX depicting selected leak to users
- Enhanced: Improve Receiver Tank calculator cycle time calculation
- Fixed: CA Inventory error on "Set Data from Existing Compressor"
- Fixed: Display Compressed Air Assessment EEM results with 0 savings
Fans
- Fixed: Fixed issue where specified efficiency was incorrectly treated as a fraction instead of percent
Steam
- Added: Insulated Pipe/Tank Suite documentation added
- Fixed: Fix missing SSMT Boiler steam pressure conversion
- Fixed: Steam modeler and SSMT Boiler validation updated
Treasure Hunt
- Enhanced: Improve presentation and clarity of Treasure Hunt cost savings errors
- Enhanced: Fix Treasure Hunt gauge threshold for 0-1% values
- Fixed: Update legacy Treasure Hunt opportunities for backwards compatibility
- Fixed: Fix Electricity Reduction documentation link
- Fixed: Show annual cost savings in Waste Heat for Absorption Chillers results panel
- Fixed: Enforce 1:1 baseline and modification instances and resolve flow rate reduction calculation
Water
- Added: Add mobile return action to Water Diagram unavailable display message
- Fixed: remove Known Loss Outflow trailing 0 from Data Drawer Forms
Process Cooling
- New Feature: A new module for conducting an energy assessment for a process cooling system
- New Feature: Enter data regarding pump, condenser, towers, and chillers
- New Feature: Pull in TMY weather data based on zip code
- New Feature: Specify operating and load schedules
- New Feature: Conduct "What-if" scenarios for key energy use parameters
- New Feature: Tables and graphs to understand energy use in system and performance of equipment
- Coming Soon: Dashboard and rollup support
Known Issues:
- Users are experiencing issues with the desktop auto-update feature on some machines. In some cases this can be resolved by simply closing the application, re-opening, and allowing the auto-update to finish. The development team is actively working on the issue.
- The Linux release does not support Auto-updating
- Renaming an export in Windows Download menu can delete the file extension (.json)
- Assessments made in a previous major release may experience errors
- Import files made in a previous major release may not be useable due to field additions/removals
- We have observed cases where if MEASUR is open for a long period of time while many assessments are present, MEASUR performance can become slow. If experienced, close and reopen MEASUR
Consumption - Production and Industry
- TypeScript
Published by github-actions[bot] 26 days ago
icclim - v7.1.7
7.1.7
- Defer percentile-threshold materialization until a bootstrap path actually needs the threshold field, reducing setup overhead for dask-backed day-of-year percentile count indices.
- Keep percentile bootstrap cases using
threshold_min_valueon the exact safe tiled path after Kraken validation showed the experimental fast path was not field-identical on real precipitation data. - Keep
cftimepercentile bootstrap cases on the exact safe tiled path after Kraken validation found a remaining one-cell mismatch in the experimental fast path. - Add maintainer notes for bootstrap architecture, readable implementation boundaries and the validated fast-path support matrix.
Validation
Kraken validation on Wednesday, July 29, 2026 confirmed:
- exact fallback agreement for wet-day percentile bootstrap reruns;
- exact safe fallback routing for
cftimepercentile bootstrap in this release; - local bootstrap regression slice passing before merge.
Climate Change - Climate Data Processing and Analysis
- Python
Published by pagecp 26 days ago
CLEO - v0.66.1
v0.66.1 - 2026-07-29
Bug Fixes
- remove redundant initialisation of supers - (65bbf47) - Harshada Balasubramanian
- YAC issues with netcdf dependencies - (ee938c5) - Harshada Balasubramanian
- resolve yaml-cpp cmake version compatibility - (1a49324) - Harshada Balasubramanian
Build system
- (deps) upgrade yaml-cpp to 0.9.0 - (62a1e16) - Harshada Balasubramanian
Documentation
- update documentation for netcdf dependency - (d8bd50d) - Harshada Balasubramanian
Miscellaneous Chores
- (version) v0.66.1 - (3d84d58) - yoctoyotta1024
- extend logic for gridbox - (e12080a) - Harshada Balasubramanian
- wrap sdinit check inside NDEBUG macro - (2cf9149) - Harshada Balasubramanian
- use yaml-cpp CMakeLists from main - (e689c00) - Harshada Balasubramanian
Atmosphere - Atmospheric Chemistry and Aerosol
- C++
Published by github-actions[bot] 26 days ago
Ecoscope - v2.17.2
What's Changed
Other Changes
- GLM and Linear Regression Models for comparison by @devenmaheshwari in https://github.com/wildlife-dynamics/ecoscope/pull/624
- feat: add "Normalised (LTD)" patrol density weighting with mode-aware classification by @Yun-Wu in https://github.com/wildlife-dynamics/ecoscope/pull/788
Full Changelog: https://github.com/wildlife-dynamics/ecoscope/compare/v2.17.1...v2.17.2
Biosphere - Conservation and Restoration
- Python
Published by github-actions[bot] 26 days ago
Planscape - 2026.07.29-5411c982d4
- Public Funding Opportunit Report page (Share Funding Report).
- Ownership details on Treatable Area layer exported on GeoPackage
Biosphere - Wildfire
- Python
Published by roquebetioljr 26 days ago
CLEO - v0.66.0
v0.66.0 - 2026-07-29
Bug Fixes
- replace rescaling phi with drawing independent random number for coalbure algorithm - (f5b04fb) - clara.bayley
Documentation
- mention testik 2009 as well as testik et al. 2011 - (c341d0b) - clara.bayley
Features
- option to use only straub2010 for coalescence or breakup - (76cb1df) - clara.bayley
- option for constant coaleff coalescence or breakup - (f60b8b0) - clara.bayley
- new optional configuration to set coaleff - (4be7e09) - clara.bayley
Miscellaneous Chores
- (version) v0.66.0 - (087b715) - yoctoyotta1024
- formatting - (439ad5a) - clara.bayley
- formatting - (f2b45d4) - clara.bayley
- formatting - (9ce1a91) - clara.bayley
- formatting - (f65fceb) - clara.bayley
Refactoring
- add Testik 2009 reference in comments - (d37edf3) - clara.bayley
- demonstrate use of new coalbure flags in roughpaper - (8dedc7b) - clara.bayley
- move straub collision eff calc into seperate file - (9e29cee) - clara.bayley
- demonstrate const coaleff usage in roughpaper main - (3cd9bb7) - clara.bayley
Atmosphere - Atmospheric Chemistry and Aerosol
- C++
Published by github-actions[bot] 26 days ago
VeraGrid - 6.4.2
Added
- Database-backed model storage and remote administration workflows, including grid DB I/O, admin/dashboard
capabilities, and server-side support for remote model operations. - New editor tooling, including admittance and line editors and a per-device admittance matrix editor.
- Sugiyama-based graph layout/routing work for dynamic editor and diagram positioning.
- Quadratic cost linear approximation support and area reserves support in linear OPF-related workflows.
- Additional interoperability coverage, including broader roundtrip/CIM/DGS/MATPOWER-related work and test
assets. - Expanded dynamics/EMT and GSLV integration features, including VSC and short-circuit related capabilities.
Improved
- GUI usability across navigation, dialogues, copy/paste flows, validation flows, and editor packaging.
- Dark/light theme behavior, paired-item highlighting, initial colors, and general graphics fluidity.
- Nonlinear OPF robustness, initialization quality, MATPOWER handling, and benchmark coverage.
- Dynamics and EMT model handling, including RMS behavior, model assembly, and bus-variable integration.
- Connection routing, item positioning, and overall editor layout behavior.
- Server documentation and general project documentation/readme quality.
Fixed
- Battery dispatch/energy traceability regressions.
- Grid assignment bugs and nodal-capacity issues.
- Parser and import edge cases, including Eurostag single-file handling, MATPOWER loading issues, DGS parsing
details, and other file-format regressions. - GUI state and theme/navigation bugs, including dark mode issues and coloring errors.
- Short-circuit, distributed slack, VSC, RMS, and EMT correctness issues.
- Packaging, import, missing-file, and assorted test failures across the release range.
Performance
- Much faster database inserts by migrating to jsonb.
- Additional vectorization work in GUI/dynamics-related paths and optimized fully vectorized RMS problem
handling. - Better model assembly and other analysis-path optimizations, including improvements around OPF and benchmark
execution.
Energy Systems - Grid Analysis and Planning
- Python
Published by SanPen 26 days ago
CLEO - v0.65.2
v0.65.2 - 2026-07-29
Bug Fixes
- download yac and yaxt from owncloud servers - (9033bf1) - clara.bayley
- update yac and yaxt versions - (2ff3d03) - clara.bayley
Continuous Integration
- update setup python - (eaad482) - clara.bayley
- update artifacts - (560e885) - clara.bayley
- update miniconda setup - (55cd573) - clara.bayley
- update action-gh-release - (83693f4) - clara.bayley
- fix missing python in mamba environment setup - (03ce75f) - clara.bayley
- update checkout - (f91250a) - clara.bayley
Miscellaneous Chores
- (version) v0.65.2 - (1ae9824) - yoctoyotta1024
- update version of yaml-cpp - (4e3c4a4) - clara.bayley
Refactoring
- change color in plot - (b368857) - clara.bayley
Atmosphere - Atmospheric Chemistry and Aerosol
- C++
Published by github-actions[bot] 26 days ago
Climate Risk Assessment Book - v2026.07.0
CLIMAAX CRA Handbook v2026.07.0
- Update FLOODS workflows:
- 01 Coastal floods:
- Update LUISA dataset to version 2026-07-15 (https://github.com/CLIMAAX/FLOODS/pull/21).
- 02 River floods:
- Update URLs to Aqueduct dataset (https://github.com/CLIMAAX/FLOODS/pull/20).
- Update LUISA dataset to version 2026-07-15 (https://github.com/CLIMAAX/FLOODS/pull/21).
- 01 Coastal floods:
- Update HEAVY RAINFALL workflows:
- 01 Extreme precipitation:
- Update CDS requests for new API and allow region and month selection (https://github.com/CLIMAAX/HEAVY_RAINFALL/pull/17).
- Fix kernel crash in last cell of hazard assessment (https://github.com/CLIMAAX/HEAVY_RAINFALL/pull/18).
- 01 Extreme precipitation:
- Update HEATWAVES workflows:
- 01 Urban heatwaves:
- Update CDS requests for new API and allow region and month selection (https://github.com/CLIMAAX/HEATWAVES/pull/26).
- 01 Urban heatwaves:
- Update DROUGHTS workflows:
- 02 Agriculture drought:
- Update CDS requests for new API and allow region and month selection (https://github.com/CLIMAAX/DROUGHTS/pull/37).
- 02 Agriculture drought:
- Update SNOW workflows:
- 01 Heavy snowfall and blizzards:
- Update CDS requests for new API and allow region and month selection (https://github.com/CLIMAAX/SNOW/pull/12).
- 01 Heavy snowfall and blizzards:
- Update STORMS workflows:
- 01 Windstorms:
- Update LUISA dataset to version 2026-07-15 (https://github.com/CLIMAAX/STORMS/pull/13).
- 01 Windstorms:
- Update MULTI workflows:
- 01 Infrastructure heat precipitation:
- Update CDS requests for new API and allow region and month selection (https://github.com/CLIMAAX/MULTI/pull/5).
- 01 Infrastructure heat precipitation:
- Add Community of Practice webinar to heavy rainfall hazard overview page.
Sustainable Development - Education
- CSS
Published by chpolste 26 days ago
Roseau Load Flow - Version 0.16.0a1
What's Changed
- Update and use ruff to format markdown by @alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/483
- Disallow voltage source on sc buses, other small fixes by @alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/484
- Version 0.16.0a1 by @alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/485
Full Changelog: https://github.com/RoseauTechnologies/Roseau_Load_Flow/compare/v0.16.0-alpha...v0.16.0a1
Energy Systems - Energy System Modeling Frameworks
- Python
Published by alihamdan 26 days ago
Plant-for-the-Planet - 2026-07-29-dependency-release
What's Changed
- Upgrade Heroku stack and update Node.js and npm versions by @mohitb35 in https://github.com/Plant-for-the-Planet-org/planet-webapp/pull/3007
- chore(deps): bump immutable from 5.1.5 to 5.1.9 by @dependabot[bot] in https://github.com/Plant-for-the-Planet-org/planet-webapp/pull/2990
- chore(deps-dev): bump fast-uri from 3.1.2 to 3.1.4 by @dependabot[bot] in https://github.com/Plant-for-the-Planet-org/planet-webapp/pull/2997
- chore(deps): bump body-parser from 1.20.4 to 1.20.6 by @dependabot[bot] in https://github.com/Plant-for-the-Planet-org/planet-webapp/pull/3001
- chore(deps): bump qs, express and cypress by @dependabot[bot] in https://github.com/Plant-for-the-Planet-org/planet-webapp/pull/2959
Full Changelog: https://github.com/Plant-for-the-Planet-org/planet-webapp/compare/2026-07-28-accessibility-fixes...2026-07-29-dependency-release
Biosphere - Deforestation and Reforestation
- TypeScript
Published by mariahosfeld 26 days ago
Oceananigans.jl - v0.110.13
Oceananigans v0.110.13
Merged pull requests:
- Reduce kernel launching overhead (#5774) (@jackdfranklin)
- Adds adapt method for IsopycnalSkewSymmetricDiffusivity (#5785) (@jlk9)
- Improve docstrings for
viscosityanddiffusivity(#5813) (@tomchor) - Fix
interpolatereading the wrong cell on fine Float32LatitudeLongitudeGrids (#5822) (@xkykai) - Support multi-dimensional conservative regridding with
regrid!(#5824) (@xkykai) - Fix column_depth when close to an immersed boundary (#5826) (@simone-silvestri)
- Bump patch release v0.110.13 (#5831) (@xkykai)
Closed issues:
- Extend
regrid!for conservative multi-axis regridding (#5716) - interpolate reads the wrong cell on fine Float32 LatitudeLongitudeGrids (#5821)
- Conservative
regrid!drops fractional-cell contributions in the last row when a transverse dimension isPeriodic(#5825) - Conservative
regrid!along aPeriodicdimension reads past the source face array (#5830)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] 27 days ago
SteVe - steve-3.14.0
What's new:
- Refactor OCPP client #2051
- Refactor OcppJsonChargePoint (test station impl) to fix a race in ITs #2061
- Pass down Task to OcppCallbacks #2053
- Refine stop meter value selection with monotonic streaks #2063
- Fix elapsed connection duration formatting on UI #2064
- Add disconnect button for OCPP JSON sessions #2065
- Improve CertificateSigningServiceLocal #2066
- Fix: Reject plain WS connections when profile 2 is configured #2067
- Refactor: use generic event OcppStationStatusUpdate for connector status updates #2082
- Add a status_timestamp column to the reservation table #2085
- Improve IdTag authorization context and nullability contracts #2087
- Classify OCPP msg validation failures as hard or soft, early exit when hard #2092 (also fixes https://github.com/steve-community/steve/security/advisories/GHSA-xgmv-c7vq-m9wp)
- Powerfill donation: OCTT workarounds #2093
- Update dependencies and other refactors/cleanups
Thanks to all contributors!
This release contains the same OCPP implementation and protocol behavior that formed the foundation of Powerfillβs OCA-certified CSMS.
Consumption - Mobility and Transportation
- Java
Published by goekay 27 days ago
iNaturalistReactNative - v1.0.27+224
FIXED
- Android: Camera zoom stutters and does not stay zoomed
- Photos and sounds should fully delete when tapping back without saving
Biosphere - Biodiversity Citizen Science
- Fluent
Published by jtklein 27 days ago
Pywr-DRB - Pywr-DRB v2.2.0
v2.2.0 (2026-07-28)
Overview
Pywr-DRB v2.2.0 adds a new perfect_foresight flow prediction mode, a new STARFITOfflineSimulator class which simulates STARFIT reservoir releases outside of the Pywr-DRB simulation, and the ability to run the model with custom STARFIT parameters. The pre-packaged observed flow and storage records have been extended through July 2026, with an improved NYC reservoir storage record. This release also contains bug fixes for ensemble simulations run using MPI.
New Functionality
1. New flow_prediction_mode option in ModelBuilder
The FFMP-based release rules for the NYC and lower basin reservoirs rely on multi-day predictions of flows at Montague and Trenton. In prior versions, these predictions were always generated using a regression-based disaggregation method. This remains the default behavior.
The new flow_prediction_mode option in the ModelBuilder options allows the user to choose between prediction methods:
"regression_disagg"(default): Regression-based flow predictions, identical to prior versions."perfect_foresight": Predictions constructed such that the model has perfect knowledge of future non-NYC flow contributions at Montague and Trenton. In this mode, NYC reservoirs contribute zero to the predicted flows (their releases are the quantity being determined by the FFMP logic), STARFIT-controlled reservoirs contribute pre-simulated STARFIT releases (seeSTARFITOfflineSimulatorbelow), and all other nodes contribute their consumption-adjusted catchment inflows.
The legacy internal "perfect foresight" method, which took predictions directly from the dataset gage flows without accounting for reservoir operations, has been removed.
import pywrdrb
mb = pywrdrb.ModelBuilder(
start_date="1983-10-01",
end_date="1985-12-31",
inflow_type="nhmv10_withObsScaled",
options={"flow_prediction_mode": "perfect_foresight"},
)
mb.make_model()
mb.write_model("./model_perfect_foresight.json")
1.1 Regenerated predicted_inflows_mgd.csv and predicted_diversions_mgd.csv
The predicted_inflows_mgd.csv files for all nine pre-packaged datasets, and the predicted_diversions_mgd.csv file, have been re-generated and now contain both regression_disagg and perfect_foresight prediction columns. This allows users to run either prediction mode without re-running the preprocessors.
The regression_disagg predicted inflow values are unchanged relative to v2.1.0. The predicted diversions have been re-fit using the updated observed records (described below), so the regression-based diversion predictions differ from v2.1.0 and now extend through May 2025.
2. STARFITOfflineSimulator for offline reservoir simulation
The new pywrdrb.pre.STARFITOfflineSimulator class replicates the STARFIT release logic used by the pywrdrb.parameters.STARFITReservoirRelease parameter, but runs outside of the Pywr simulation. Given a timeseries of catchment inflows, it simulates storage dynamics and releases day-by-day for each STARFIT-controlled reservoir.
This class is used to generate the pre-simulated releases required by the perfect_foresight prediction mode. It can also be used on its own to study STARFIT release behavior for a given inflow scenario, without needing to run the full Pywr-DRB model.
from pywrdrb.pre import STARFITOfflineSimulator
sim = STARFITOfflineSimulator(initial_volume_frac=0.8)
sim.load_parameters()
releases_df = sim.simulate_all(catchment_inflows_df)
3. Use custom STARFIT parameters
In prior versions, the STARFIT reservoir rule parameters were always loaded from the istarf_conus.csv file included in the package. The new starfit_params_filename option in the ModelBuilder options allows the user to provide an alternative STARFIT parameter CSV. The file must follow the same format as istarf_conus.csv and contain rows for all Pywr-DRB reservoirs. The custom parameters are used for both the reservoir capacities and the STARFIT release rules.
mb = pywrdrb.ModelBuilder(
start_date="1983-10-01",
end_date="1985-12-31",
inflow_type="nhmv10_withObsScaled",
options={"starfit_params_filename": "./my_starfit_params.csv"},
)
Note that this option cannot be combined with the run_starfit_sensitivity_analysis option, which loads parameters from a separate scenario file.
4. Updated default STARFIT parameters for FE Walter, Beltzville, Blue Marsh, and Prompton
The default STARFIT rule parameters for the four lower basin flood control reservoirs (fewalter, beltzvilleCombined, blueMarsh, prompton) have been updated in istarf_conus.csv. The new parameters were fit to the observed reservoir storage and release records (2004-2023): the normal operating range (NOR) bounds now follow the observed seasonal storage guide curves, and the seasonal release harmonics were fit by water balance so that simulated releases reproduce the observed seasonal storage cycle.
Compared to the prior defaults, the updated parameters substantially improve simulated storage and release accuracy at all four reservoirs. Notable changes:
Adjusted_MEANFLOW_MGDvalues are now set to the mean catchment inflows for each reservoir, correcting values which were previously off by up to a factor of three (e.g., FE Walter listed 137 MGD vs. an actual mean inflow near 400 MGD). This corrects the scaling of the inflow-response and storage-response terms in the release function.- The Beltzville capacity (
Adjusted_CAP_MG) was raised from 13,500 MG to the storage-curve maximum of 17,750 MG. The prior value was below the observed normal pool volume (~14,000 MG), which made the observed storage level unreachable in simulation. The DRBC Water Code priority staging inlower_basin_ffmp.pyuses separate hard-coded usable-storage values and is unaffected. - Prompton's release bounds were updated using the Prompton release gauge (USGS 01429000): a 10 MGD minimum consistent with observed low releases, and a 2,000 MGD maximum which allows observed flood peaks to pass.
- The DRBC-specified conservation releases and maximum discharges at FE Walter, Beltzville, and Blue Marsh are hard-coded in
lower_basin_ffmp.pyand are unchanged by the new parameters.
The prior default parameter values are retained in istarf_conus.csv under new row names (fewalter_v2.1_default, beltzvilleCombined_v2.1_default, blueMarsh_v2.1_default, prompton_v2.1_default) for reference. To run the model with the prior parameters, copy these rows into a custom parameter CSV (using the original row names) and pass it via the starfit_params_filename option.
The packaged perfect_foresight prediction files were re-generated using the updated default parameters, since the pre-simulated STARFIT releases embedded in those predictions are computed from the default parameter set.
The figure below compares observed storage dynamics against offline STARFIT simulations (driven by pub_nhmv10_BC_withObsScaled catchment inflows) using the v2.1 and v2.2 default parameters. Each panel shows the seasonal (day-of-year) median and interquartile range of storage as a fraction of the v2.2 capacity, over each reservoir's observed storage record. Note the offline simulation represents pure STARFIT behavior only β the FFMP / Trenton-contribution logic that also influences Beltzville and Blue Marsh releases in the full model is not included.

4.1 Prompton release gauge added to observed data
The Prompton release gauge (USGS 01429000, Lackawaxen River at Prompton) is now retrieved with the observational data and included as its own column (01429000) in gage_flow_mgd.csv. Prompton has no downstream gauge node in the model network, so this record is provided for observation comparisons such as evaluating simulated Prompton releases.
Updated Observed Data Records
The pre-packaged observed data records (gage_flow_mgd.csv, catchment_inflow_mgd.csv, reservoir_storage_mg.csv) have been re-generated and now extend through 2026-07-20.
The NYC reservoir storage records (cannonsville, pepacton, neversink) have been improved:
- DRBC daily storage records are now used for the period 1999-12-01 through 2021-11-30, replacing the storage values derived from USGS elevation records over that period. USGS-derived values are still used outside of the DRBC record period.
- Early-record storage values known to be erroneous are now dropped on a per-reservoir basis, using reservoir-specific validity start dates.
- The retrieval workflow (
pywrdrb.pre.ObservationalDataRetriever) now exports an audit CSV of the USGS-derived NYC storage record, and includes a storage diagnostics plotting function for visual inspection of the merged record.
New tests have been added in tests/test_observation_loader.py to verify the merged NYC storage record.
Bug Fixes
1. Fixed scenario indexing in ensemble simulations
Some parameters were indexing scenario data using the local scenario index rather than scenario_index.global_id. This produced incorrect scenario mappings when running ensemble simulations with MPI, where each rank only sees a subset of scenarios. The affected parameters, including STARFITReservoirRelease and the lower basin FFMP parameters, now use global_id throughout.
2. Fixed ensemble realization ID handling in preprocessors
The ensemble preprocessors were inconsistent in their handling of integer vs. string realization IDs when reading ensemble HDF5 files, which caused failures for some ensemble datasets. Realization IDs are now consistently coerced to strings. The ensemble preprocessors also now accept an optional comm argument, allowing an existing MPI communicator to be reused.
3. STARFIT releases now enforce the minimum release in all storage conditions
Previously, the STARFITReservoirRelease parameter only enforced the minimum release (R_min) when storage was below the normal operating range. When storage was inside the NOR, the release function could dip below R_min on very dry days. The minimum release is now enforced in all storage conditions, consistent with the DRBC conservation release requirements at the lower basin reservoirs.
The practical impact is small: in a 40-year test simulation, this affected roughly 0.27% of days at Blue Marsh (the most affected reservoir), with all other days unchanged. The same correction is applied in the STARFITOfflineSimulator.
Hydrosphere - Freshwater and Hydrology
- Python
Published by TrevorJA 27 days ago
cellpy - cellpy 2.1.0.post1
Post-release of v2.1.0 β docs-only, no code behaviour change. Safe drop-in over 2.1.0.
- Stripped issue-tracker references (
#NNN,cellpy-core#NNN, epic/decision/Stage codes) and "what it used to be, in which issue" migration narrative out of package docstrings across 100 modules, so the API reference reads cleanly (#771). - Documented the Read the Docs header release-badge behaviour β it always shows the live GitHub latest release; the RTD version switcher is the source of truth (#776).
No API, schema, or runtime changes.
Energy Storage - Battery
- Python
Published by jepegit 27 days ago
FACTS - v1.1.5 July 28, 2026
This release adds the ability to create and launch a containerized version of FACTS, that can be installed in 3 steps. Documentation has also been updated accordingly.
This version was used to demo FACTS at the WHOI-NASA summer school 2026.
What's Changed
- Demo/ssisls by @pkjr002 in https://github.com/radical-collaboration/facts/pull/385
Full Changelog: https://github.com/radical-collaboration/facts/compare/v1.1.4...v1.1.5
Climate Change - Natural Hazard and Storms
- Jupyter Notebook
Published by kemccusker 27 days ago
SlideRule Earth - v5.5.0
see https://docs.slideruleearth.io/developer_guide/release_notes/release_notes.html
Sustainable Development - Environmental Satellites
- C++
Published by jpswinski 27 days ago
TZ-OSeMOSYS - v0.4.0
Changes
- Migrate to linopy 0.9 (#191) @edwardxtg
Energy Systems - Energy System Modeling Frameworks
- Python
Published by github-actions[bot] 27 days ago
cellpy - cellpy 2.1.0
cellpy 2.1.0
Stable Stage-4 release: cellpy.batch / cellpy.collect redesign, Epic E shim removals, v9 example data.
Migration: see docs/getting_started/migration_v2.0_to_2.1.md and HISTORY.md Β§2.1.0.
Pin: cellpycore==0.2.4 (unchanged from 2.0.0).
What's Changed
- chore: archive #574 after v2.0.0 ship by @jepegit in https://github.com/jepegit/cellpy/pull/694
- docs: fix example notebook typos and outdated config notes by @jepegit in https://github.com/jepegit/cellpy/pull/722
- docs: clarify Neware nda loading via fastnda by @jepegit in https://github.com/jepegit/cellpy/pull/723
- test(batch): characterization net for batch v3 redesign (#697) by @jepegit in https://github.com/jepegit/cellpy/pull/725
- feat(batch): batch v3 package - journal model + layout (#698) by @jepegit in https://github.com/jepegit/cellpy/pull/727
- feat(batch): typed LoadPolicy/CellSpec + resolve_specs (#699) by @jepegit in https://github.com/jepegit/cellpy/pull/728
- feat(batch): runner + result + store (#700) by @jepegit in https://github.com/jepegit/cellpy/pull/729
- feat(batch): aggregate + qc + outputs (#701) by @jepegit in https://github.com/jepegit/cellpy/pull/731
- feat(batch): Batch facade + load/from_journal (#702) by @jepegit in https://github.com/jepegit/cellpy/pull/732
- feat(batch)!: cut utils.batch over to the cellpy.batch facade (#703) by @jepegit in https://github.com/jepegit/cellpy/pull/733
- feat(batch): process-pool + thread executors (#704) by @jepegit in https://github.com/jepegit/cellpy/pull/734
- feat(collect): cellpy.collect foundation + cross-cell bug fixed (#705) by @jepegit in https://github.com/jepegit/cellpy/pull/735
- B2: port concat_summaries feature set onto collect options (#706) by @jepegit in https://github.com/jepegit/cellpy/pull/736
- B3: BatchCollector convenience class + standard_gravimetric recipe (#707) by @jepegit in https://github.com/jepegit/cellpy/pull/737
- B4: collect_ica + Collection.plot handover + clean-break collectors shim (#708) by @jepegit in https://github.com/jepegit/cellpy/pull/738
- C1: refactor ocv_rlx onto native schema + fix the self.data trap (#709) by @jepegit in https://github.com/jepegit/cellpy/pull/739
- D2: surface per-test metadata as Batch.tests (#711) by @jepegit in https://github.com/jepegit/cellpy/pull/740
- E1: remove plotting deprecation shims (#713) by @jepegit in https://github.com/jepegit/cellpy/pull/741
- E2: remove ICA deprecation shims (#714) by @jepegit in https://github.com/jepegit/cellpy/pull/742
- E3 (partial): remove make_new_cell (#715) by @jepegit in https://github.com/jepegit/cellpy/pull/743
- E3 (runtime part 1): migrate direct headers_* accesses to native (#715) by @jepegit in https://github.com/jepegit/cellpy/pull/744
- E3 (runtime part 2): migrate headers_* resolvers to native (#715) by @jepegit in https://github.com/jepegit/cellpy/pull/745
- E3 (runtime part 3): migrate bdf exporter off the headers shim (#715) by @jepegit in https://github.com/jepegit/cellpy/pull/746
- Remove the headers_* legacy shim from CellpyCell (E3 final, #715) by @jepegit in https://github.com/jepegit/cellpy/pull/747
- Fix batch-summary benchmark: use native combine_summaries, drop xfail by @jepegit in https://github.com/jepegit/cellpy/pull/749
- Port the DB-journal path natively into cellpy.batch (E4 part 1, #716) by @jepegit in https://github.com/jepegit/cellpy/pull/748
- Delete utils/batch_tools/ and migrate its tests (E4 part 2, #716) by @jepegit in https://github.com/jepegit/cellpy/pull/750
- Audit DEPRECATIONS.md: seed pending 2.2 deprecations + note kept facades (E5, #717) by @jepegit in https://github.com/jepegit/cellpy/pull/751
- Remove the prms.* global-mutation shim (E5, #717) by @jepegit in https://github.com/jepegit/cellpy/pull/752
- Integrate v2-docs-stable: marimo notebook docs + assets (#724) by @jepegit in https://github.com/jepegit/cellpy/pull/754
- docs: 2.0->2.1 migration guide + release notes (G3, #720) by @jepegit in https://github.com/jepegit/cellpy/pull/755
- docs: API reference for cellpy.batch and cellpy.collect (G2, #719) by @jepegit in https://github.com/jepegit/cellpy/pull/756
- build(deps): bump pymdown-extensions from 10.21.3 to 11.0 by @dependabot[bot] in https://github.com/jepegit/cellpy/pull/757
- data: regenerate hosted example cells as v9 .cellpy (G1, #718) by @jepegit in https://github.com/jepegit/cellpy/pull/758
- test: remove dead fixture references from fdv.py (#655) by @jepegit in https://github.com/jepegit/cellpy/pull/759
- test: add deliberately-broken fixture set + graceful-failure tests (#655) by @jepegit in https://github.com/jepegit/cellpy/pull/762
- test: add loader goldens for biologics / batmo / arbin_sql_h5 (#655) by @jepegit in https://github.com/jepegit/cellpy/pull/760
- Release prep: host-local Arbin goldens + HISTORY 2.1.0 by @jepegit in https://github.com/jepegit/cellpy/pull/769
Full Changelog: https://github.com/jepegit/cellpy/compare/v2.0.0...v2.1.0
Energy Storage - Battery
- Python
Published by jepegit 27 days ago
ECTO - 2026-07-28 Release
What's Changed
- Add 473 route-qualified chemical exposure terms by @jamesamcl in https://github.com/EnvironmentOntology/environmental-exposure-ontology/pull/268
- Prepare release v2026-07-28 by @aleixpuigb in https://github.com/EnvironmentOntology/environmental-exposure-ontology/pull/270
New Contributors
- @jamesamcl made their first contribution in https://github.com/EnvironmentOntology/environmental-exposure-ontology/pull/268
Full Changelog: https://github.com/EnvironmentOntology/environmental-exposure-ontology/compare/v2026-07-12...v2026-07-28
Sustainable Development - Taxonomy and Ontology
- Makefile
Published by aleixpuigb 27 days ago
optihood - v0.2.13
What's Changed
- 213 refactoring replace all building label creation with create building label by @ahobeost in https://github.com/SPF-OST/optihood/pull/214
- Ice storage model by @nehadimri1991 in https://github.com/SPF-OST/optihood/pull/219
Full Changelog: https://github.com/SPF-OST/optihood/compare/v0.2.12...v0.2.13
Energy Systems - Renewable Energy Integration
- HTML
Published by ahobeost 27 days ago
WISDEM - Sync with OpenMDAO v3.45
What's Changed
- Additional CCBlade fixes for Numpy 2.5 for WEIS by @gbarter in https://github.com/NLRWindSystems/WISDEM/pull/733
- Fix depreciation of set_design_var by @dzalkind in https://github.com/NLRWindSystems/WISDEM/pull/734
Full Changelog: https://github.com/NLRWindSystems/WISDEM/compare/v4.2.5...v4.2.6
Renewable Energy - Wind Energy
- Python
Published by gbarter 27 days ago