v0.19.0
TulipaEnergyModel v0.19.0
Breaking changes
-
Two‑stage stochastic optimization (2S‑SO) schema updates (#1415, #1419): new/modified tables and updated timeframe profiles information. Existing input data must be aligned to the new schema.
-
Scenario column type changed to INT (#1428): ensure inputs and any loaders cast scenario IDs to integers.
-
Rename of group to investment_group (#1425): both a column and a file were renamed. Update input CSVs, queries, and any scripts that reference the old name.
-
File naming updates for rolling-horizon (#1413): adjust any automation that depends on specific filenames.
Merged pull requests:
- JOSS paper (#1284) (@abelsiqueira)
- Rolling horizon (#1327) (@abelsiqueira)
- Rolling horizon tutorial (#1387) (@abelsiqueira)
- CompatHelper: bump compat for ParametricOptInterface to 0.14, (keep existing compat) (#1400) (@github-actions[bot])
- Fix bug running roling horizon on Windows (#1402) (@abelsiqueira)
- Make TestOnPRs run for all OSs if the label pr-test-all is added (#1403) (@abelsiqueira)
- Bump actions/upload-artifact from 4 to 5 (#1406) (@dependabot[bot])
- Compute and save dual variables during rolling horizon (#1407) (@abelsiqueira)
- More robust test of printed EnergyProblem (#1409) (@abelsiqueira)
- [Fix]: Update names in RH file names (#1413) (@datejada)
- [2S-SO]: Update tables schema (#1415) (@datejada)
- [AUTO] pre-commit update (#1416) (@github-actions[bot])
- [2S-SO]: Two-stage stochastic optimization (#1417) (@datejada)
- [2S-SO]: Add examples for Two-stage stochastic optimization (#1418) (@datejada)
- [2S-SO]: Update schema for timeframe profiles information (#1419) (@datejada)
- [2S-SO]: Add function to calculate scenario probability (#1421) (@datejada)
- Minor refactoring (#1422) (@gnawin)
- Rename column and file group to investment_group (#1425) (@abelsiqueira)
- Move OBZ data to repo instead of downloading from Zenodo (#1427) (@abelsiqueira)
- [Fix]: Update scenario column type to INT (#1428) (@datejada)
- Fix DOIs and ORCIDs for JOSS paper (#1429) (@abelsiqueira)
- [JOSS] Multiple affiliation must be quoted (#1430) (@abelsiqueira)
- Modify parameters (#1432) (@gnawin)
- [AUTO] pre-commit update (#1433) (@github-actions[bot])
- Bump actions/checkout from 5 to 6 (#1434) (@dependabot[bot])
- Apply MD060 rule to align markdown tables (#1437) (@Copilot)
Closed issues:
- Implement unit scaling in the model (#257)
- Translate the code to the formulation (#292)
- Improve
:greedystrategy in functioncompute_rp_partition(#355) - Include the marginal asset in the outputs (#371)
- Define scenario specification workflow (#414)
- Don't include integration tests in the code coverage (#430)
- Validate the efficiency for inflows and outflows for conversion assets (#437)
- Investigate the memory usage of model creation (#457)
- Investigate using the package JET.jl for type stability checks (#459)
- Create a tutorial for a hydropower assets in cascade example (#567)
- Change capacity for storage asset to charging and discharging capacities (#617)
- Create a meaningful year data for the Norse Case (#684)
- Define as input the
resolutioninput data in therep_periods_datafrom somewhere in the pipeline (#686) - Improve user friendliness of the output of the @show of the energy_problem (#687)
- Add profiling.jl to the tests (#703)
- Should we use the ENUM type from DuckDB for the asset type? (#717)
- Create a new test for the balance_sense constraint (#718)
- How to use prepared statements in DuckDB to reuse common access patterns (#725)
- Check if TidierDB.jl is useful for us (#727)
- Improve group feature (#747)
- Create individual test for the functions that creates the constraints in the model (#749)
- Review if it makes sense to split "user input files" into information for new capacity and existing capacity (#774)
- Creat How-To for adding options for specific solvers to specification file/method (#809)
- Improve the INPUT workflow (#974)
- Add log info in the console while the model is creating (#1008)
- Use JuMP.add_to_expression! all over the code (#1021)
- Improve the
Profilingsection in the developer documentation (#1022) - Rename files for clarity (#1041)
- Consider creating auxiliary functions that tie the indices and containers (#1043)
- Add the scenario index to the operational variables (#1050)
- Consider adding OEO to schema / docs (#1053)
- Remove prettier from docs (#1073)
- Create a preprocessing step to use defaults, validate input data, and calculate flow partitions (#1081)
- Validate connections of assets (#1100)
- Validate units (#1103)
- Validate consistency between
investableandinitial_units(#1111) - Add a tutorial that saves a case in a duckdb file (#1173)
- Add plain English explanations of formulations (#1209)
- Update benchmark to use OBZ Zenodo links (#1225)
- Fix inconsistent data output format (#1242)
- Reformulate inter-period constraint for seasonal storage (#1251)
- Rename
groupparameter (#1252) - Reduce tutorial data to minimum required (#1261)
- [2S-SO]: Update input schema for the new feature (#1298)
- Refactor code in order to improve testing of constraints (#1310)
- Distinguishing between types of transport capacities (#1324)
- Add initial flow parameter for ramping constraints (#1328)
- Split the constraints in the file ramping-and-unit-commitment.jl (#1331)
- Define a rule when tables need to be ordered or not (#1335)
- Add a description of each table of the schema (#1338)
- Implement Rolling Horizon (#1365)
- Create new test for storage level over clustering year (#1373)
- Documentation updates related to rolling horizon (#1385)
- Save dual variable solution in rolling horizon (#1395)
- [2S-SO]: Add scenario index to seasonal storage (#1396)
- [2S-SO]: Add example for stochastic optimization case study (#1397)
- [Bug] Test on Windows is failing after rolling horizon (#1401)
- Find a better solution for hosting data for test, docs, and benchmark (#1404)
- [Bug] Tests are failing because of some update (#1408)
- Change parameters commodity_price and efficiency (#1411)
- [2S-SO]: Add function to calculate stochastic scenario probability, if it is not provided (#1420)
- Apply manually rule MD060 to markdown files (#1435)