python-cqrs 4.6.0__tar.gz → 4.6.1__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.
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/PKG-INFO +1 -1
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/pyproject.toml +1 -1
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/requests/bootstrap.py +63 -2
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/python_cqrs.egg-info/PKG-INFO +1 -1
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/LICENSE +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/README.md +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/setup.cfg +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/adapters/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/adapters/amqp.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/adapters/circuit_breaker.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/adapters/kafka.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/adapters/protocol.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/compressors/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/compressors/protocol.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/compressors/zlib.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/container/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/container/dependency_injector.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/container/di.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/container/protocol.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/deserializers/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/deserializers/exceptions.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/deserializers/json.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/dispatcher/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/dispatcher/event.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/dispatcher/exceptions.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/dispatcher/models.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/dispatcher/request.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/dispatcher/saga.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/dispatcher/streaming.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/events/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/events/bootstrap.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/events/event.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/events/event_emitter.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/events/event_handler.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/events/event_processor.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/events/map.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/mediator.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/message_brokers/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/message_brokers/amqp.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/message_brokers/devnull.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/message_brokers/kafka.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/message_brokers/protocol.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/middlewares/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/middlewares/base.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/middlewares/logging.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/outbox/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/outbox/map.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/outbox/mock.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/outbox/repository.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/outbox/sqlalchemy.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/producer.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/requests/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/requests/cor_request_handler.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/requests/map.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/requests/mermaid.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/requests/request.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/requests/request_handler.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/response.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/bootstrap.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/circuit_breaker.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/compensation.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/execution.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/fallback.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/mermaid.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/models.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/recovery.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/saga.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/step.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/storage/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/storage/enums.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/storage/memory.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/storage/models.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/storage/protocol.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/storage/sqlalchemy.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/saga/validation.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/serializers/__init__.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/serializers/default.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/cqrs/types.py +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/python_cqrs.egg-info/SOURCES.txt +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/python_cqrs.egg-info/dependency_links.txt +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/python_cqrs.egg-info/requires.txt +0 -0
- {python_cqrs-4.6.0 → python_cqrs-4.6.1}/src/python_cqrs.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-cqrs
|
|
3
|
-
Version: 4.6.
|
|
3
|
+
Version: 4.6.1
|
|
4
4
|
Summary: Python CQRS pattern implementation
|
|
5
5
|
Author-email: Vadim Kozyrevskiy <vadikko2@mail.ru>, Dmitry Kutlubaev <kutlubaev00@mail.ru>
|
|
6
6
|
Maintainer-email: Vadim Kozyrevskiy <vadikko2@mail.ru>
|
|
@@ -30,7 +30,7 @@ maintainers = [{name = "Vadim Kozyrevskiy", email = "vadikko2@mail.ru"}]
|
|
|
30
30
|
name = "python-cqrs"
|
|
31
31
|
readme = "README.md"
|
|
32
32
|
requires-python = ">=3.10"
|
|
33
|
-
version = "4.6.
|
|
33
|
+
version = "4.6.1"
|
|
34
34
|
|
|
35
35
|
[project.optional-dependencies]
|
|
36
36
|
aiobreaker = ["aiobreaker>=0.3.0"]
|
|
@@ -232,6 +232,7 @@ def bootstrap(
|
|
|
232
232
|
)
|
|
233
233
|
|
|
234
234
|
|
|
235
|
+
@overload
|
|
235
236
|
def setup_streaming_mediator(
|
|
236
237
|
event_emitter: events.EventEmitter,
|
|
237
238
|
container: di_container_impl.DIContainer,
|
|
@@ -241,6 +242,31 @@ def setup_streaming_mediator(
|
|
|
241
242
|
domain_events_mapper: typing.Callable[[events.EventMap], None] | None = None,
|
|
242
243
|
max_concurrent_event_handlers: int = 10,
|
|
243
244
|
concurrent_event_handle_enable: bool = True,
|
|
245
|
+
) -> cqrs.StreamingRequestMediator: ...
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
@overload
|
|
249
|
+
def setup_streaming_mediator(
|
|
250
|
+
event_emitter: events.EventEmitter,
|
|
251
|
+
container: CQRSContainer,
|
|
252
|
+
middlewares: typing.Iterable[mediator_middlewares.Middleware],
|
|
253
|
+
commands_mapper: typing.Callable[[RequestMap], None] | None = None,
|
|
254
|
+
queries_mapper: typing.Callable[[RequestMap], None] | None = None,
|
|
255
|
+
domain_events_mapper: typing.Callable[[events.EventMap], None] | None = None,
|
|
256
|
+
max_concurrent_event_handlers: int = 10,
|
|
257
|
+
concurrent_event_handle_enable: bool = True,
|
|
258
|
+
) -> cqrs.StreamingRequestMediator: ...
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
def setup_streaming_mediator(
|
|
262
|
+
event_emitter: events.EventEmitter,
|
|
263
|
+
container: di_container_impl.DIContainer | CQRSContainer,
|
|
264
|
+
middlewares: typing.Iterable[mediator_middlewares.Middleware],
|
|
265
|
+
commands_mapper: typing.Callable[[RequestMap], None] | None = None,
|
|
266
|
+
queries_mapper: typing.Callable[[RequestMap], None] | None = None,
|
|
267
|
+
domain_events_mapper: typing.Callable[[events.EventMap], None] | None = None,
|
|
268
|
+
max_concurrent_event_handlers: int = 10,
|
|
269
|
+
concurrent_event_handle_enable: bool = True,
|
|
244
270
|
) -> cqrs.StreamingRequestMediator:
|
|
245
271
|
requests_mapper = RequestMap()
|
|
246
272
|
if commands_mapper:
|
|
@@ -268,6 +294,7 @@ def setup_streaming_mediator(
|
|
|
268
294
|
)
|
|
269
295
|
|
|
270
296
|
|
|
297
|
+
@overload
|
|
271
298
|
def bootstrap_streaming(
|
|
272
299
|
di_container: di.Container,
|
|
273
300
|
message_broker: protocol.MessageBroker | None = None,
|
|
@@ -278,6 +305,33 @@ def bootstrap_streaming(
|
|
|
278
305
|
on_startup: typing.List[typing.Callable[[], None]] | None = None,
|
|
279
306
|
max_concurrent_event_handlers: int = 10,
|
|
280
307
|
concurrent_event_handle_enable: bool = False,
|
|
308
|
+
) -> cqrs.StreamingRequestMediator: ...
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
@overload
|
|
312
|
+
def bootstrap_streaming(
|
|
313
|
+
di_container: CQRSContainer,
|
|
314
|
+
message_broker: protocol.MessageBroker | None = None,
|
|
315
|
+
middlewares: typing.Sequence[mediator_middlewares.Middleware] | None = None,
|
|
316
|
+
commands_mapper: typing.Callable[[RequestMap], None] | None = None,
|
|
317
|
+
domain_events_mapper: typing.Callable[[events.EventMap], None] | None = None,
|
|
318
|
+
queries_mapper: typing.Callable[[RequestMap], None] | None = None,
|
|
319
|
+
on_startup: typing.List[typing.Callable[[], None]] | None = None,
|
|
320
|
+
max_concurrent_event_handlers: int = 10,
|
|
321
|
+
concurrent_event_handle_enable: bool = False,
|
|
322
|
+
) -> cqrs.StreamingRequestMediator: ...
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
def bootstrap_streaming(
|
|
326
|
+
di_container: di.Container | CQRSContainer,
|
|
327
|
+
message_broker: protocol.MessageBroker | None = None,
|
|
328
|
+
middlewares: typing.Sequence[mediator_middlewares.Middleware] | None = None,
|
|
329
|
+
commands_mapper: typing.Callable[[RequestMap], None] | None = None,
|
|
330
|
+
domain_events_mapper: typing.Callable[[events.EventMap], None] | None = None,
|
|
331
|
+
queries_mapper: typing.Callable[[RequestMap], None] | None = None,
|
|
332
|
+
on_startup: typing.List[typing.Callable[[], None]] | None = None,
|
|
333
|
+
max_concurrent_event_handlers: int = 10,
|
|
334
|
+
concurrent_event_handle_enable: bool = False,
|
|
281
335
|
) -> cqrs.StreamingRequestMediator:
|
|
282
336
|
if message_broker is None:
|
|
283
337
|
message_broker = DEFAULT_MESSAGE_BROKER
|
|
@@ -287,8 +341,15 @@ def bootstrap_streaming(
|
|
|
287
341
|
for fun in on_startup:
|
|
288
342
|
fun()
|
|
289
343
|
|
|
290
|
-
container
|
|
291
|
-
container
|
|
344
|
+
# If the provided container is a container implemented using di package,
|
|
345
|
+
# we need to wrap it into our own container
|
|
346
|
+
if isinstance(di_container, di.Container):
|
|
347
|
+
container = di_container_impl.DIContainer()
|
|
348
|
+
container.attach_external_container(di_container)
|
|
349
|
+
|
|
350
|
+
# Otherwise, we can use the provided container directly
|
|
351
|
+
else:
|
|
352
|
+
container = di_container
|
|
292
353
|
|
|
293
354
|
event_emitter = setup_event_emitter(
|
|
294
355
|
container,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-cqrs
|
|
3
|
-
Version: 4.6.
|
|
3
|
+
Version: 4.6.1
|
|
4
4
|
Summary: Python CQRS pattern implementation
|
|
5
5
|
Author-email: Vadim Kozyrevskiy <vadikko2@mail.ru>, Dmitry Kutlubaev <kutlubaev00@mail.ru>
|
|
6
6
|
Maintainer-email: Vadim Kozyrevskiy <vadikko2@mail.ru>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|