Repository navigation
v0.8.0
Date: 2026-11-06
Previous release: v0.7.0
Added
cbsigma: cB-Sigma openadr v0.2.0 (Go, Apache-2.0), an independent OpenADR 3.1.0 stack in both roles, published asghcr.io/otfabric/openadr-interop-cbsigma. The server is its VTN (oadr3/vtn) with its own token endpoint and webhooks; the clients are its REST client (oadr3.APIClient), which checks a request body with the library'soadr3.CheckRequestbefore it is sent. It is a second client foropenleadrand a second server forelaadnl, and its VTN passes the 24 conformance scenarios. A bug of its VTN found on the way, a VEN that cannot read a targeted object by ID, is cB-Sigma/openadr#1, tracked in #19.go.modandgo.sumofadapters/cbsigmahold the pin;scripts/check-versions.shchecks that they and the Dockerfile agree, and the Upstream workflow follows the tags of cB-Sigma/openadr.- Contract 1.5, webhooks: the client operation
listen-webhook(featureclientWebhook) serves a receiver, subscribes with the library's client and waits for notifications.scripts/interop.shhas a webhook scenario: a VEN subscribes, Business Logic creates an event, and the VTN notifies the VEN's webhook with the subscription's bearer token.cbsigmahas it, and so doesown/go-openadr(with go-openadr'swebhook.Handler) from its next build. - Contract 1.5,
serverTargetsUnlock: the reading of targets of thecbsigmaVTN. For a VEN, the targets a request names unlock the targeted objects it was granted and narrow nothing: a search naming targets returns the untargeted objects too, and a targeted object is not found by ID, asGET /programs/{programID}has no parameter to name its target. Cases of either reading run against the servers that have it. - A case for
GET /notifiersof a VTN without MQTT.
Changed
- The workflow check of the event's start time accepts
+00:00as well asZ: OpenLEADR writes the former, and a client that hands over the VTN's JSON as it is (cbsigma) passes it on. elaadnlmoves to ElaadNL openadr3-client 2.4.2 (tag134ff74e), the latest release. Between 2.4.0 and 2.4.2 the packageopenadr3_clientis unchanged. Its dependencies moved: oauthlib 3.3.1 to 4.0.1 (the library now requires 4), paho-mqtt 2.2.0, pydantic 2.14.3, certifi 2026.10.23, and the transitive security updates of 2.4.1.requirements.txtwas regenerated with its hashes. The set of packages is the same, and the cross-stack results are those of 2.4.0.needsintests/cases.tsvtakesserver:!<feature>andclient:!<feature>: the case runs only where the feature is not declared.- The Own stack workflow runs the cross-stack self-test against the adapters of the harness release's Makefile, so a release that adds an adapter adds it there too.
The fixtures do not change.
Images
| Image | Upstream | Digest |
|---|---|---|
ghcr.io/otfabric/openadr-interop-openleadr:v0.8.0 |
v0.2.8 | sha256:8f5c8e55a31a50888d2eca6da6431734c32b589b5151c68e86ddb68076da171e |
ghcr.io/otfabric/openadr-interop-elaadnl:v0.8.0 |
2.4.2 | sha256:48b02fd2cbef75282093804837330a681934c4473c6e6907862ea8f0b34a3a65 |
ghcr.io/otfabric/openadr-interop-openleadr301:v0.8.0 |
v0.1.4 | sha256:ce3c87d9a633ef90816a3bba5daf972a19013b501cc728a64445767e93de0256 |
ghcr.io/otfabric/openadr-interop-cbsigma:v0.8.0 |
v0.2.0 | sha256:626f3742826ba30d4b62775cd343653c7ed0633422af4676a61aa3975b9be4ab |
Pinning in a consumer
OPENADR_INTEROP_OPENLEADR_IMAGE=ghcr.io/otfabric/openadr-interop-openleadr@sha256:8f5c8e55a31a50888d2eca6da6431734c32b589b5151c68e86ddb68076da171e
OPENADR_INTEROP_ELAADNL_IMAGE=ghcr.io/otfabric/openadr-interop-elaadnl@sha256:48b02fd2cbef75282093804837330a681934c4473c6e6907862ea8f0b34a3a65
OPENADR_INTEROP_OPENLEADR301_IMAGE=ghcr.io/otfabric/openadr-interop-openleadr301@sha256:ce3c87d9a633ef90816a3bba5daf972a19013b501cc728a64445767e93de0256
OPENADR_INTEROP_CBSIGMA_IMAGE=ghcr.io/otfabric/openadr-interop-cbsigma@sha256:626f3742826ba30d4b62775cd343653c7ed0633422af4676a61aa3975b9be4abmanifest.json records the upstream versions these images were built from. The images contain third-party software under its own licences; see THIRD_PARTY_NOTICES.md and /licenses in each image. Notes: RELEASE.md.