> [!IMPORTANT]
> Starting with this version, Roseau Load Flow is no longer supplied as a SaaS. The software is
> available as a standalone Python library. Please contact us at contactroseautechnologies.com in order to get a license key.
This release includes:
- Fix a bug in the engine: it was impossible to change the parameters of center-tapped and single phase transformers.
- 179 Fix a bug in the propagation of potentials when a center-tapped transformer is used without neutral at the primary side.
- 178 176 Merge the `results_to_json`, `results_from_json`, `results_to_dict` and `results_from_dict` methods of the `ElectricalNetwork` and `Element`s classes into the methods `to_json`, `from_json`, `to_dict` and `from_dict` respectively. The old `results_` methods are **deprecated** and will be removed in a future release. The new methods will include the results by default, but you can pass `include_results=False` to exclude them.
- 175 174 Fix JSON serialization of network with line parameters created from the catalogue.
- 173 Remove the conda installation option.
It also includes all the modifications of the alpha release 171 :
- 168 166 Fix initial potentials' propagation.
- 167 161 Add a catalogue of lines using the IEC standards. You can use the method `LineParameters.get_catalogue()` to get a data frame of the available lines and the method `LineParameters.from_catalogue()` to create a line from the catalogue. Several line types, conductor material, and insulation types have been updated. Physical constants have been updated to match the IEC standards where applicable.
- 167 The class `LineParameters` now takes optional arguments `line_type`, `conductor_type`, `insulator_type` and `section`. These parameters are accessible as properties. They are filled automatically when creating a line from the catalogue or from a geometry.
- 167 Replace all `print_catalogue()` methods by `get_catalogue()` methods that return a data frame instead of printing the catalogue to the console.
- 167 Enumeration classes no longer have a `from_string` method, you can call the enumeration class directly with the string value to get the corresponding enumeration member. Case-insensitive behavior is preserved.
- 167 122 Add checks on line height and diameter in the `LineParameters.from_geometry()` alternative constructor. This method will try to guess a default conductor and insulation type if `None` is provided.
- 163 **BREAKING CHANGE:** roseau-load-flow is no longer a SaaS project. Starting with version 0.7.0, the software is distributed as a standalone Python package. You need a license to use it for commercial purposes. See the documentation for more details. This comes with a huge performance improvement but requires a breaking change to the API:
- The `ElectricalNetwork.solve_load_flow()` method no longer takes an `auth` argument.
- To activate the license, you need to call `roseau.load_flow.activate_license("MY LICENSE KEY")` or set the environment variable `ROSEAU_LOAD_FLOW_LICENSE_KEY` (preferred) before calling `ElectricalNetwork.solve_load_flow()`. More information in the documentation.
- Several methods on the `FlexibleParameter` class that previously required `auth` are changed. Make sure to follow the documentation to update your code.
- 163 158 Fix `ElectricalNetwork.res_transformers` returning an empty dataframe when max_power is not set.
- 163 Several unused exception codes were removed. An `EMPTY_NETWORK` code was added to indicate that a network is being created with no elements.
- 163 Remove the `ElectricalNetwork.res_info` attribute. `ElectricalNetwork.solve_load_flow()` now returns the tuple (number of iterations, residual).
- 163 Remove the `Bus.clear_short_circuits()` and `ElectricalNetwork.clear_short_circuits()` methods. It is currently not possible to clear short-circuits from the network.
- 163 Improve performance of network creation and results access.
- 163 Attributes `phases` and `bus` are now read-only on all elements.
- 151 Require Python 3.10 or newer.
What's Changed
* Update to Python 3.10 by alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/151
* Bump conda-incubator/setup-miniconda from 2 to 3 by dependabot in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/152
* Bump actions/upload-pages-artifact from 2 to 3 by dependabot in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/153
* Bump actions/deploy-pages from 2 to 4 by dependabot in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/154
* Bump actions/setup-python from 4 to 5 by dependabot in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/155
* Bump actions/configure-pages from 3 to 4 by dependabot in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/156
* Bump actions/upload-artifact from 3 to 4 by dependabot in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/157
* Fix res_transformers returning an empty dataframe by alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/163
* Moving away from SaaS, step 1 by alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/164
* Moving away from SaaS, step 2 by Saelyos in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/165
* Potentials propagation by Saelyos in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/168
* Add lines catalogue and get_catalogue method by alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/167
* Add missing changelog entries by alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/170
* Version 0.7.0-alpha by benoit9126 in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/171
* Bump actions/cache from 3 to 4 by dependabot in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/172
* Remove conda by benoit9126 in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/173
* Fix bug when serializing line parameters with numpy values by alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/175
* Merge and deprecate results serialization methods by alihamdan in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/178
* Bug in `propagate_potentials` with "center" transformer types by benoit9126 in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/179
* Version 0.7.0 by benoit9126 in https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/180
**Full Changelog**: https://github.com/RoseauTechnologies/Roseau_Load_Flow/compare/v0.6.0...v0.7.0