Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
124 changes: 63 additions & 61 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,61 +1,63 @@
# `optimex` Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
* Sped up the whole pipeline a lot: the `notebooks/methanol_and_iron.ipynb` case
study goes from 613 s to 44 s end to end
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* **Changed results**: `background_inventory.cutoff` now defaults to `None`. The old
default truncated background inventories before aggregating them, biasing flow
amounts low by up to 30% ([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* Background databases are now calculated in parallel by default, and elementary
flows without a characterization factor are dropped from the optimization model.
See `background_inventory.retain_flows` and `restrict_to_characterized_flows`
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* Building and solving the model is much faster too: on the same case study, model
build 103.6 s to 1.7 s, solve wall clock 55.7 s to 0.1 s and
`PostProcessor.get_dynamic_inventory()` 19.8 s to 0.2 s, with identical results
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* `get_dynamic_inventory()` no longer returns rows whose amount is exactly zero
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* Flow limits that cannot take effect are now reported: naming a flow that is not in
the model raises in `ModelInputManager.override()` (pointing at `retain_flows`), and
`create_model()` warns about limits it has to ignore or that can never bind
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* Background inventories are cached on disk per (project, database, activity), so a
new session reuses them instead of rebuilding every technosphere matrix. Switch it
off with `background_inventory.use_disk_cache` and clear it with
`lca_processor.clear_lca_caches(include_disk=True)`
([#64](https://github.com/RWTH-LTT/optimex/pull/64))

## [0.5.0] - 2026-08-18
* Added foreground_db_name argument to LCAConfig
* Fixed `LCAConfig.foreground_db_name` being ignored by `LCADataProcessor`, which
silently fell back to the database named "foreground". A config naming a
non-existent database now raises instead of falling back.

## [0.4.2] - 2026-04-27
* Fix conda publish workflow

## [0.4.1] - 2026-04-27
* Convert to src package layout and use absolute imports

## [0.4.0] - 2026-04-21
* Added Vintage-dependent foreground parameters: Model how process characteristics change based on installation year (vintage). Supports two approaches:
- Explicit values per vintage via `foreground_*_vintages` fields
- Scaling factors via `vintage_improvements` field

## [0.3.0] - 2025-07-04
* Fixed an issue with process installation scaling

## [0.2.0] - 2025-05-28
* Introduced automatic testing
* Differentiation between capacity installment and actual operation
* Improved user-facing API

## [0.1.0] - 2025-02-27
* Initial release.
# `optimex` Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.6.0] - 2026-08-20
* Sped up the whole pipeline a lot: the `notebooks/methanol_and_iron.ipynb` case
study goes from 613 s to 44 s end to end
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* **Changed results**: `background_inventory.cutoff` now defaults to `None`. The old
default truncated background inventories before aggregating them, biasing flow
amounts low by up to 30% ([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* Background databases are now calculated in parallel by default, and elementary
flows without a characterization factor are dropped from the optimization model.
See `background_inventory.retain_flows` and `restrict_to_characterized_flows`
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* Building and solving the model is much faster too: on the same case study, model
build 103.6 s to 1.7 s, solve wall clock 55.7 s to 0.1 s and
`PostProcessor.get_dynamic_inventory()` 19.8 s to 0.2 s, with identical results
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* `get_dynamic_inventory()` no longer returns rows whose amount is exactly zero
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* Flow limits that cannot take effect are now reported: naming a flow that is not in
the model raises in `ModelInputManager.override()` (pointing at `retain_flows`), and
`create_model()` warns about limits it has to ignore or that can never bind
([#64](https://github.com/RWTH-LTT/optimex/pull/64))
* Background inventories are cached on disk per (project, database, activity), so a
new session reuses them instead of rebuilding every technosphere matrix. Switch it
off with `background_inventory.use_disk_cache` and clear it with
`lca_processor.clear_lca_caches(include_disk=True)`
([#64](https://github.com/RWTH-LTT/optimex/pull/64))

## [0.5.0] - 2026-08-18
* Added foreground_db_name argument to LCAConfig
* Fixed `LCAConfig.foreground_db_name` being ignored by `LCADataProcessor`, which
silently fell back to the database named "foreground". A config naming a
non-existent database now raises instead of falling back.

## [0.4.2] - 2026-04-27
* Fix conda publish workflow

## [0.4.1] - 2026-04-27
* Convert to src package layout and use absolute imports

## [0.4.0] - 2026-04-21
* Added Vintage-dependent foreground parameters: Model how process characteristics change based on installation year (vintage). Supports two approaches:
- Explicit values per vintage via `foreground_*_vintages` fields
- Scaling factors via `vintage_improvements` field

## [0.3.0] - 2025-07-04
* Fixed an issue with process installation scaling

## [0.2.0] - 2025-05-28
* Introduced automatic testing
* Differentiation between capacity installment and actual operation
* Improved user-facing API

## [0.1.0] - 2025-02-27
* Initial release.
2 changes: 1 addition & 1 deletion src/optimex/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@
# Add functions and variables you want exposed in `optimex.` namespace here
)

__version__ = "0.5.0"
__version__ = "0.6.0"
Loading