span-panel-api-schema-1 1.2.1__tar.gz → 1.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/CHANGELOG.md +9 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/PKG-INFO +2 -2
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/pyproject.toml +4 -2
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/adapter.py +9 -2
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/.gitignore +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/README.md +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/breaker.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/charge-limit.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/connection.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/door.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/grid-forming.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/grid.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/info.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/load-shed.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/meter.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/pcs.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/power-flows.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/shed-forecast.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/shed.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/soc.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/status.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/switch.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/registries/device-types.md +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/__init__.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/adoption.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/catalog.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/charge_limit.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/circuits.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/const.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/description.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/devices.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/extension.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/field_metadata.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/firmware.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/panel.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/py.typed +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/reference/parent_child_tree.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/snapshot.py +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/spec_lock.json +0 -0
- {span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/transport.py +0 -0
|
@@ -9,6 +9,15 @@ number. A release here means this parser changed, never that the panel did.
|
|
|
9
9
|
|
|
10
10
|
Pre-releases are not listed separately. A beta is a step towards the next public version, so its changes are folded into that version's entry as they land and are described against the last public release, never against the beta before it.
|
|
11
11
|
|
|
12
|
+
## [1.2.2]
|
|
13
|
+
|
|
14
|
+
Requires `span-panel-api` **3.6.2 or newer**, which waits on this parser's missing labels after a reconnect as well as on connect.
|
|
15
|
+
|
|
16
|
+
### Fixed
|
|
17
|
+
|
|
18
|
+
- **`circuit_nodes_missing_names()` gives an inverter that appears after another inverter's feed link has arrived, within the same wait, a full grace for its own**, rather than reporting nothing missing the moment it appears and so letting it be keyed by
|
|
19
|
+
its device id.
|
|
20
|
+
|
|
12
21
|
## [1.2.1]
|
|
13
22
|
|
|
14
23
|
Every PV inverter a panel commissions is read, and the battery's power keeps its sign on firmware r202639. Requires `span-panel-api` **3.6.1 or newer**.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: span-panel-api-schema-1
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.2
|
|
4
4
|
Summary: Parent/child schema (data-model-version 1.x) parser for span-panel-api
|
|
5
5
|
Project-URL: Homepage, https://github.com/SpanPanel/span-panel-api
|
|
6
6
|
Project-URL: Issues, https://github.com/SpanPanel/span-panel-api/issues
|
|
@@ -8,7 +8,7 @@ Author: SpanPanel
|
|
|
8
8
|
License-Expression: MIT
|
|
9
9
|
Requires-Python: <4.0,>=3.14
|
|
10
10
|
Requires-Dist: ebus-sdk<0.24,>=0.19.0
|
|
11
|
-
Requires-Dist: span-panel-api<4.0,>=3.6.
|
|
11
|
+
Requires-Dist: span-panel-api<4.0,>=3.6.2
|
|
12
12
|
Description-Content-Type: text/markdown
|
|
13
13
|
|
|
14
14
|
# span-panel-api-schema-1
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "span-panel-api-schema-1"
|
|
3
|
-
version = "1.2.
|
|
3
|
+
version = "1.2.2"
|
|
4
4
|
description = "Parent/child schema (data-model-version 1.x) parser for span-panel-api"
|
|
5
5
|
authors = [
|
|
6
6
|
{name = "SpanPanel"}
|
|
@@ -26,7 +26,9 @@ dependencies = [
|
|
|
26
26
|
# parser fills. Against an earlier one, building a snapshot fails on those
|
|
27
27
|
# arguments.
|
|
28
28
|
# Raised to 3.6.1, whose SpanPanelSnapshot.pv documents what this parser builds.
|
|
29
|
-
|
|
29
|
+
# Raised to 3.6.2, which waits on this parser's missing labels after a bridge
|
|
30
|
+
# rebuild as well as on connect; the fix spans both, so the pair moves together.
|
|
31
|
+
"span-panel-api>=3.6.2,<4.0",
|
|
30
32
|
# Only this distribution depends on the eBus SDK. The bootstrap and
|
|
31
33
|
# schema-0 stay clean, so a flat-panel install never pulls it in — which is
|
|
32
34
|
# what bounds the release coupling this dependency introduces to panels on
|
|
@@ -230,7 +230,9 @@ class SchemaOneAdapter:
|
|
|
230
230
|
unvalued after the grace is taken as absent. The inverter is then keyed
|
|
231
231
|
by its device id, reported once at INFO rather than the transport
|
|
232
232
|
warning after the full name timeout. The grace restarts whenever
|
|
233
|
-
anything else is missing again
|
|
233
|
+
anything else is missing again, and once every inverter is placed, so
|
|
234
|
+
an inverter that appears after another's feed has arrived, within the
|
|
235
|
+
same wait, gets a whole grace of its own.
|
|
234
236
|
"""
|
|
235
237
|
roles = TreeRoles(self._children())
|
|
236
238
|
missing = [circuit.device_id for circuit in roles.circuits if not circuit.get_property(NODE_INFO, PROP_NAME)]
|
|
@@ -257,8 +259,13 @@ class SchemaOneAdapter:
|
|
|
257
259
|
)
|
|
258
260
|
self._feed_wait_reported = True
|
|
259
261
|
feeds = []
|
|
260
|
-
|
|
262
|
+
else:
|
|
263
|
+
# No feed is being waited out on its own: something else is still
|
|
264
|
+
# missing, or every inverter is placed. Either way a later feed wait
|
|
265
|
+
# is a new one and gets the whole grace.
|
|
261
266
|
self._feed_wait_since = None
|
|
267
|
+
if not feeds:
|
|
268
|
+
self._feed_wait_reported = False
|
|
262
269
|
missing.extend(feeds)
|
|
263
270
|
return missing
|
|
264
271
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/charge-limit.json
RENAMED
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/connection.json
RENAMED
|
File without changes
|
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/grid-forming.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/load-shed.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/power-flows.json
RENAMED
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/catalogs/shed-forecast.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/spec/registries/device-types.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/const.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/panel.py
RENAMED
|
File without changes
|
{span_panel_api_schema_1-1.2.1 → span_panel_api_schema_1-1.2.2}/src/span_panel_api_schema_1/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|