Released on 2024-02-09.
- Upgrade the backend to [**AltDSS/DSS C-API 0.14.0**](https://github.com/dss-extensions/dss_capi/releases/tag/0.14.0). **A lot** of changes there, please check the changelog. Includes many small bugfixes, improvements, and ports of a few changes from the official OpenDSS codebase, matching OpenDSS v9.8.0.1.
- Enums:
- Move to DSS-Python-Backend to allow easier sharing among all Python packages from DSS-Extensions.
- Convert enum comments to docstrings for better user experience.
- New `DSSCompatFlags.ActiveLine`.
- New `DSSJSONFlags.SkipTimestamp`, `DSSJSONFlags.SkipBuses`, `DSSJSONFlags.IncludeDefaultObjs`.
- New `DSSSaveFlags` (used in the new function `Circuit.Save`)
- New `EnergyMeterRegisters` and `GeneratorRegisters` to simplify handling register indexes from EnergyMeters (`EnergyMeterRegisters`), Generators, PVSystems, and Storage objects (these last three use `GeneratorRegisters`).
- Use enums in a few more methods.
- Packaging: Migrate build system to `pyproject.toml` and Hatch.
- Implement the DSSEvents interface. Note that this is not a popular interface and we haven't seen it used in Python with COM yet. OpenDSS comes with a couple of examples using VBA in Excel though.
- Drop `CheckForError()`; use `_check_for_error()` instead (same function, but the latter doesn't pollute the public scope).
- Expose `Circuit.Save()` function
- Expose `Circuit.FromJSON()` function
- Move `DSS.Obj` to the new [AltDSS-Python package](https://github.com/dss-extensions/AltDSS-Python) (`pip install altdss`, `from altdss import altdss`).
- **Breaking change**: the main object classes previously used indices starting at 1, but it seemed unnatural in Python and when used with the rest of the API, so they now behave as normal batches and start at 0. Affects both the `find()` method and the brackets (e.g. `altdss.Load[0]`) syntax.
- **Lots** of new features.
- Use weakrefs to avoid accidentally extending the lifetime of DSSContexts.
- Update documentation framework (Sphinx) to use Markdown, based on MyST and autodoc2.
0.14.x