Skip to content

FastDSS, Oddie and AltDSS C-API 0.15.0#145

Open
PMeira wants to merge 8 commits intomasterfrom
fastdss
Open

FastDSS, Oddie and AltDSS C-API 0.15.0#145
PMeira wants to merge 8 commits intomasterfrom
fastdss

Conversation

@PMeira
Copy link
Member

@PMeira PMeira commented Feb 20, 2026

This PR adds relevant code to support the new features:

  • FastDSS backend: new CPython backend written directly in C. The CFFI backend is still used for many features.
  • Oddie support: Oddie, originally for "OpenDSSDirect.DLL Interface Extender", allows loading EPRI's OpenDSS and OpenDSS-C through their modern DCSL approach. OpenDSS-C is the newish C++ implementation from EPRI and works on Linux too.
  • AltDSS C-API 0.15.0: currently in beta, merges a lot of changes except some API and backwards compatibility changes (which will be included in a future release).

TODO:

  • Check and update docs
  • Reenable AltDSS-Python as optional dependency (disabled for testing, since it has not been released).
  • Wait upstream packages to be released

Notable changes (more will be listed in the changelog or release notes):

  • Some changes in the engine, mirroring some of EPRI's changes, can result in numerical differences. For example, the line model had some updates, so many circuits that use LineGeometry and similar constructs might result in slightly different results.
  • We now default to using NumPy arrays for many functions. This can now be easily toggled though.
  • Stricter data model by default. This avoids many errors. It can also be easily toggled.

- New: `OpenDSSDirect.ShareGeneral`  (includes test)
- New: `Settings.PreserveCase`
- Move some settings from `Basic` to `Settings`
- Move `NewCircuit` from `Basic` to `OpenDSSDirect`
@PMeira
Copy link
Member Author

PMeira commented Feb 20, 2026

First beta release at: https://pypi.org/project/opendssdirect.py/0.10.0b1/

Working on preparing a release for AltDSS-Python later today.

@PMeira
Copy link
Member Author

PMeira commented Feb 26, 2026

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant