frequenz-dispatch 0.6.3__tar.gz → 0.7.0__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.
Files changed (22) hide show
  1. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/PKG-INFO +3 -3
  2. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/README.md +1 -1
  3. frequenz_dispatch-0.7.0/RELEASE_NOTES.md +9 -0
  4. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/pyproject.toml +1 -1
  5. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz/dispatch/_actor_dispatcher.py +1 -1
  6. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz/dispatch/_bg_service.py +2 -2
  7. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz/dispatch/_dispatcher.py +9 -8
  8. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz_dispatch.egg-info/PKG-INFO +3 -3
  9. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz_dispatch.egg-info/requires.txt +1 -1
  10. frequenz_dispatch-0.6.3/RELEASE_NOTES.md +0 -18
  11. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/LICENSE +0 -0
  12. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/MANIFEST.in +0 -0
  13. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/setup.cfg +0 -0
  14. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz/dispatch/__init__.py +0 -0
  15. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz/dispatch/_dispatch.py +0 -0
  16. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz/dispatch/_event.py +0 -0
  17. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz/dispatch/_merge_strategies.py +0 -0
  18. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz/dispatch/conftest.py +0 -0
  19. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz/dispatch/py.typed +0 -0
  20. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz_dispatch.egg-info/SOURCES.txt +0 -0
  21. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz_dispatch.egg-info/dependency_links.txt +0 -0
  22. {frequenz_dispatch-0.6.3 → frequenz_dispatch-0.7.0}/src/frequenz_dispatch.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: frequenz-dispatch
3
- Version: 0.6.3
3
+ Version: 0.7.0
4
4
  Summary: A highlevel interface for the dispatch API
5
5
  Author-email: Frequenz Energy-as-a-Service GmbH <floss@frequenz.com>
6
6
  License: MIT
@@ -23,7 +23,7 @@ License-File: LICENSE
23
23
  Requires-Dist: typing-extensions<5.0.0,>=4.13.0
24
24
  Requires-Dist: frequenz-sdk<1.0.0-rc1900,>=1.0.0-rc1302
25
25
  Requires-Dist: frequenz-channels<2.0.0,>=1.6.1
26
- Requires-Dist: frequenz-client-dispatch<0.10.0,>=0.9.0
26
+ Requires-Dist: frequenz-client-dispatch<0.11.0,>=0.10.1
27
27
  Provides-Extra: dev-flake8
28
28
  Requires-Dist: flake8==7.2.0; extra == "dev-flake8"
29
29
  Requires-Dist: flake8-docstrings==1.7.0; extra == "dev-flake8"
@@ -99,7 +99,7 @@ async def create_actor(dispatch: DispatchInfo, receiver: Receiver[DispatchInfo])
99
99
  return MagicMock(dispatch=dispatch, receiver=receiver)
100
100
 
101
101
  async def run():
102
- url = os.getenv("DISPATCH_API_URL", "grpc://fz-0004.frequenz.io:50051")
102
+ url = os.getenv("DISPATCH_API_URL", "grpc://dispatch.url.goes.here.example.com")
103
103
  key = os.getenv("DISPATCH_API_KEY", "some-key")
104
104
 
105
105
  microgrid_id = 1
@@ -30,7 +30,7 @@ async def create_actor(dispatch: DispatchInfo, receiver: Receiver[DispatchInfo])
30
30
  return MagicMock(dispatch=dispatch, receiver=receiver)
31
31
 
32
32
  async def run():
33
- url = os.getenv("DISPATCH_API_URL", "grpc://fz-0004.frequenz.io:50051")
33
+ url = os.getenv("DISPATCH_API_URL", "grpc://dispatch.url.goes.here.example.com")
34
34
  key = os.getenv("DISPATCH_API_KEY", "some-key")
35
35
 
36
36
  microgrid_id = 1
@@ -0,0 +1,9 @@
1
+ # Dispatch Highlevel Interface Release Notes
2
+
3
+ ## Upgrading
4
+
5
+ This is a breaking release that requires you to use the new URL for the dispatch service.
6
+
7
+ ## Bug Fixes
8
+
9
+ * Fix that a user might see invalid values for dispatches without `end_time`.
@@ -40,7 +40,7 @@ dependencies = [
40
40
  # plugins.mkdocstrings.handlers.python.import)
41
41
  "frequenz-sdk >= 1.0.0-rc1302, < 1.0.0-rc1900",
42
42
  "frequenz-channels >= 1.6.1, < 2.0.0",
43
- "frequenz-client-dispatch >= 0.9.0, < 0.10.0",
43
+ "frequenz-client-dispatch >= 0.10.1, < 0.11.0",
44
44
  ]
45
45
  dynamic = ["version"]
46
46
 
@@ -115,7 +115,7 @@ class ActorDispatcher(BackgroundService):
115
115
  )
116
116
 
117
117
  async def main():
118
- url = os.getenv("DISPATCH_API_URL", "grpc://fz-0004.frequenz.io:50051")
118
+ url = os.getenv("DISPATCH_API_URL", "grpc://dispatch.url.goes.here.example.com")
119
119
  key = os.getenv("DISPATCH_API_KEY", "some-key")
120
120
 
121
121
  microgrid_id = 1
@@ -17,7 +17,7 @@ from heapq import heappop, heappush
17
17
  import grpc.aio
18
18
  from frequenz.channels import Broadcast, Receiver, select, selected_from
19
19
  from frequenz.channels.timer import SkipMissedAndResync, Timer
20
- from frequenz.client.dispatch import Client
20
+ from frequenz.client.dispatch import DispatchApiClient
21
21
  from frequenz.client.dispatch.types import Event
22
22
  from frequenz.sdk.actor import BackgroundService
23
23
 
@@ -90,7 +90,7 @@ class DispatchScheduler(BackgroundService):
90
90
  def __init__(
91
91
  self,
92
92
  microgrid_id: int,
93
- client: Client,
93
+ client: DispatchApiClient,
94
94
  ) -> None:
95
95
  """Initialize the background service.
96
96
 
@@ -12,7 +12,7 @@ from datetime import timedelta
12
12
  from typing import Awaitable, Callable, Self
13
13
 
14
14
  from frequenz.channels import Receiver
15
- from frequenz.client.dispatch import Client
15
+ from frequenz.client.dispatch import DispatchApiClient
16
16
  from frequenz.sdk.actor import Actor, BackgroundService
17
17
  from typing_extensions import override
18
18
 
@@ -55,7 +55,7 @@ class Dispatcher(BackgroundService):
55
55
  return MagicMock(dispatch=dispatch, receiver=receiver)
56
56
 
57
57
  async def run():
58
- url = os.getenv("DISPATCH_API_URL", "grpc://fz-0004.frequenz.io:50051")
58
+ url = os.getenv("DISPATCH_API_URL", "grpc://dispatch.url.goes.here.example.com")
59
59
  key = os.getenv("DISPATCH_API_KEY", "some-key")
60
60
 
61
61
  microgrid_id = 1
@@ -81,7 +81,7 @@ class Dispatcher(BackgroundService):
81
81
  from unittest.mock import MagicMock
82
82
 
83
83
  async def run():
84
- url = os.getenv("DISPATCH_API_URL", "grpc://fz-0004.frequenz.io:50051")
84
+ url = os.getenv("DISPATCH_API_URL", "grpc://dispatch.url.goes.here.example.com")
85
85
  key = os.getenv("DISPATCH_API_KEY", "some-key")
86
86
 
87
87
  microgrid_id = 1
@@ -126,7 +126,7 @@ class Dispatcher(BackgroundService):
126
126
  from frequenz.dispatch import Created, Deleted, Dispatcher, Updated
127
127
 
128
128
  async def run():
129
- url = os.getenv("DISPATCH_API_URL", "grpc://fz-0004.frequenz.io:50051")
129
+ url = os.getenv("DISPATCH_API_URL", "grpc://dispatch.url.goes.here.example.com")
130
130
  key = os.getenv("DISPATCH_API_KEY", "some-key")
131
131
 
132
132
  microgrid_id = 1
@@ -151,7 +151,8 @@ class Dispatcher(BackgroundService):
151
151
  ```
152
152
 
153
153
  Example: Creating a new dispatch and then modifying it.
154
- Note that this uses the lower-level `Client` class to create and update the dispatch.
154
+ Note that this uses the lower-level `DispatchApiClient` class to create
155
+ and update the dispatch.
155
156
 
156
157
  ```python
157
158
  import os
@@ -162,7 +163,7 @@ class Dispatcher(BackgroundService):
162
163
  from frequenz.dispatch import Dispatcher
163
164
 
164
165
  async def run():
165
- url = os.getenv("DISPATCH_API_URL", "grpc://fz-0004.frequenz.io:50051")
166
+ url = os.getenv("DISPATCH_API_URL", "grpc://dispatch.url.goes.here.example.com")
166
167
  key = os.getenv("DISPATCH_API_KEY", "some-key")
167
168
 
168
169
  microgrid_id = 1
@@ -213,7 +214,7 @@ class Dispatcher(BackgroundService):
213
214
  """
214
215
  super().__init__()
215
216
 
216
- self._client = Client(server_url=server_url, key=key)
217
+ self._client = DispatchApiClient(server_url=server_url, key=key)
217
218
  self._bg_service = DispatchScheduler(
218
219
  microgrid_id,
219
220
  self._client,
@@ -349,7 +350,7 @@ class Dispatcher(BackgroundService):
349
350
  self._empty_event.set()
350
351
 
351
352
  @property
352
- def client(self) -> Client:
353
+ def client(self) -> DispatchApiClient:
353
354
  """Return the client."""
354
355
  return self._client
355
356
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: frequenz-dispatch
3
- Version: 0.6.3
3
+ Version: 0.7.0
4
4
  Summary: A highlevel interface for the dispatch API
5
5
  Author-email: Frequenz Energy-as-a-Service GmbH <floss@frequenz.com>
6
6
  License: MIT
@@ -23,7 +23,7 @@ License-File: LICENSE
23
23
  Requires-Dist: typing-extensions<5.0.0,>=4.13.0
24
24
  Requires-Dist: frequenz-sdk<1.0.0-rc1900,>=1.0.0-rc1302
25
25
  Requires-Dist: frequenz-channels<2.0.0,>=1.6.1
26
- Requires-Dist: frequenz-client-dispatch<0.10.0,>=0.9.0
26
+ Requires-Dist: frequenz-client-dispatch<0.11.0,>=0.10.1
27
27
  Provides-Extra: dev-flake8
28
28
  Requires-Dist: flake8==7.2.0; extra == "dev-flake8"
29
29
  Requires-Dist: flake8-docstrings==1.7.0; extra == "dev-flake8"
@@ -99,7 +99,7 @@ async def create_actor(dispatch: DispatchInfo, receiver: Receiver[DispatchInfo])
99
99
  return MagicMock(dispatch=dispatch, receiver=receiver)
100
100
 
101
101
  async def run():
102
- url = os.getenv("DISPATCH_API_URL", "grpc://fz-0004.frequenz.io:50051")
102
+ url = os.getenv("DISPATCH_API_URL", "grpc://dispatch.url.goes.here.example.com")
103
103
  key = os.getenv("DISPATCH_API_KEY", "some-key")
104
104
 
105
105
  microgrid_id = 1
@@ -1,7 +1,7 @@
1
1
  typing-extensions<5.0.0,>=4.13.0
2
2
  frequenz-sdk<1.0.0-rc1900,>=1.0.0-rc1302
3
3
  frequenz-channels<2.0.0,>=1.6.1
4
- frequenz-client-dispatch<0.10.0,>=0.9.0
4
+ frequenz-client-dispatch<0.11.0,>=0.10.1
5
5
 
6
6
  [dev]
7
7
  frequenz-dispatch[dev-flake8,dev-formatting,dev-mkdocs,dev-mypy,dev-noxfile,dev-pylint,dev-pytest]
@@ -1,18 +0,0 @@
1
- # Dispatch Highlevel Interface Release Notes
2
-
3
- ## Summary
4
-
5
- <!-- Here goes a general summary of what this release is about -->
6
-
7
- ## Upgrading
8
-
9
- <!-- Here goes notes on how to upgrade from previous versions, including deprecations and what they should be replaced with -->
10
-
11
- ## New Features
12
-
13
- <!-- Here goes the main new features and examples or instructions on how to use them -->
14
-
15
- ## Bug Fixes
16
-
17
- * Fixes reconnecting after connection loss for streams
18
- * Fixed an issue in the `Dispatcher` class where the client connection was not properly disconnected during cleanup, potentially causing unclosed socket errors.