Releases: acturtle/cashflower
v0.9.2
v0.9.1
This version introduces significant improvements to make defining model point sets easier and more flexible:
- No need to define model point sets in
input.py
- if no model point sets are defined, a single calculation will be performed. - Flexible naming - model point set no longer needs to be named
main
. Instead, for multiple sets, exactly one must have themain
parameter set toTrue
(e.g.,ModelPointSet(main=True)
). - Simplified
ID_COLUMN
- theID_COLUMN
setting has been removed. Use theid_column
parameter directly in theModelPointSet
class (e.g.,ModelPointSet(id_column=...
)). - Updated template - the initial template now includes helpful comments to make getting started easier.
These changes reduce complexity.
v0.8.5
This release introduces checks to ensure the settings are correct. It verifies that all settings are properly defined and that the output variables correspond to existing variables in the model.
v0.8.4
In this version, we've changed the name of the setting:
OUTPUT_COLUMNS
is now called OUTPUT_VARIABLES
.
We've also updated the default value:
From []
(empty list) to None
.
Rationale:
In the model, we use the word "variable" (like with the @variable()
decorator). While "column" relates to table formats, it doesn’t cover all the ways we can show results. Changing the name to OUTPUT_VARIABLES
helps keep things consistent throughout the model.
For the default value, using OUTPUT_VARIABLES=None
is clearer because it means that no specific set of variables is chosen, so all variables will be included in the output. On the other hand, OUTPUT_VARIABLES=[]
might suggest that no variables should be output at all, which could lead to confusion or extra checks in your code.
v0.8.3
Bug fix
v0.8.2
Fixed a bug related to the OUTPUT_COLUMNS
setting.
v0.8.1
The default settings have been updated. Now, only the main output file is saved by default, while the log and diagnostic files are disabled. Users can adjust these settings in the configuration file.
After:
settings = {
# ...
"SAVE_DIAGNOSTIC": False,
"SAVE_LOG": False,
"SAVE_OUTPUT": True,
# ...
}
Before:
settings = {
# ...
"SAVE_DIAGNOSTIC": True,
"SAVE_LOG": True,
"SAVE_OUTPUT": True,
# ...
}
This change focuses on the main output file, as the log and diagnostic files are helpful but not essential for cash flow modelling. By simplifying the default settings, the basic process becomes tidier.
v0.8.0
Important: This version is not backward-compatible.
In this version, we've simplified the settings for grouping results. The AGGREGATE
and GROUP_BY_COLUMN
settings have been removed and replaced with GROUP_BY
.
Here’s how the old settings map to the new one:
1. Results aggregated for the whole portfolio
Before:
AGGREGATE = True
GROUP_BY_COLUMN = None
After:
GROUP_BY = None
2. Results grouped by an attribute (e.g. product)
Before:
AGGREGATE = True
GROUP_BY_COLUMN = "product"
After:
GROUP_BY = "product"
3. Individual results (per model point)
Before:
AGGREGATE = False
GROUP_BY_COLUMN = None
After:
GROUP_BY = "id"
v0.7.3
Bug fixes:
- Fixed error in result aggregation - resolved an issue where a shape mismatch could occur when calculating results if only some variables were included in the output. The
multiplier
is now correctly applied only to variables listed inOUTPUT_COLUMNS
, preventing this error.
v0.7.2
Updates:
- removed unnecessary data transposing for increased efficiency,
- added a description of the release process to the documentation,
- updated to numpy 2.0.1 for better compatibility,
- made minor documentation fixes.