python-ddd-framework 0.4.0__py3-none-any.whl → 0.5.1__py3-none-any.whl
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_ddd_framework/application/runtime.py +46 -19
- python_ddd_framework/application_services/invocation.py +88 -25
- python_ddd_framework/background_execution/local.py +20 -1
- python_ddd_framework/background_execution/processes.py +11 -1
- python_ddd_framework/background_workers/runtime.py +10 -1
- python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/README.md +2 -1
- python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/hosted_services/order_integration_service.py.jinja +31 -7
- python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/hosted_services/order_observation_handler.py.jinja +2 -2
- python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/AGENTS.md +7 -0
- python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/docs/architecture.md +2 -1
- python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/docs/development.md +11 -1
- python_ddd_framework/hosted_services/bridge.py +75 -16
- python_ddd_framework/hosted_services/contracts.py +5 -1
- python_ddd_framework/hosted_services/runtime.py +71 -17
- python_ddd_framework/lifecycle/participants.py +4 -0
- python_ddd_framework/messaging/channel.py +34 -7
- python_ddd_framework/messaging/contracts.py +9 -0
- python_ddd_framework/messaging/module.py +13 -0
- python_ddd_framework/messaging/runtime.py +16 -1
- {python_ddd_framework-0.4.0.dist-info → python_ddd_framework-0.5.1.dist-info}/METADATA +10 -2
- {python_ddd_framework-0.4.0.dist-info → python_ddd_framework-0.5.1.dist-info}/RECORD +25 -25
- {python_ddd_framework-0.4.0.dist-info → python_ddd_framework-0.5.1.dist-info}/WHEEL +0 -0
- {python_ddd_framework-0.4.0.dist-info → python_ddd_framework-0.5.1.dist-info}/entry_points.txt +0 -0
- {python_ddd_framework-0.4.0.dist-info → python_ddd_framework-0.5.1.dist-info}/licenses/LICENSE +0 -0
- {python_ddd_framework-0.4.0.dist-info → python_ddd_framework-0.5.1.dist-info}/licenses/src/python_ddd_framework/background_jobs/pgqueuer/UPSTREAM_LICENSE.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-ddd-framework
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.5.1
|
|
4
4
|
Summary: Modular DDD application framework with project CLI and bundled templates
|
|
5
5
|
License-Expression: LicenseRef-Proprietary
|
|
6
6
|
License-File: LICENSE
|
|
@@ -86,7 +86,7 @@ Runtime integrations ship in the base package; the Host explicitly enables the m
|
|
|
86
86
|
|
|
87
87
|
The supported versions and dependencies are defined in [pyproject.toml](https://github.com/componet-architecture/python-ddd-framework/blob/main/pyproject.toml). The framework, CLI, and bundled templates share one package version.
|
|
88
88
|
|
|
89
|
-
> **Version 0.
|
|
89
|
+
> **Version 0.5:** This version introduces staged lifecycle shutdown, a temporary `HostedService.stopping` context, and explicit message-channel admission during stopping. Existing applications must apply the lifecycle migration instructions below; applications upgrading from before 0.4 must also apply the earlier capability and consumer-layout migrations. Check [release status](https://github.com/componet-architecture/python-ddd-framework/blob/main/docs/status.md#当前发布) for publication and validation evidence. Use the local-wheel route below when evaluating a checkout that has not been published.
|
|
90
90
|
|
|
91
91
|
### 1. Install the CLI and create a project
|
|
92
92
|
|
|
@@ -368,6 +368,14 @@ During `0.x`, compatible fixes use a patch release; changes requiring consumer a
|
|
|
368
368
|
|
|
369
369
|
These notes remain the authoritative consumer migration instructions. Historical versions below refer to the former package name.
|
|
370
370
|
|
|
371
|
+
#### Lifecycle shutdown migration (0.5)
|
|
372
|
+
|
|
373
|
+
Version 0.5.1 changes shutdown after the published 0.4.0 baseline. Custom `RuntimeParticipant` implementations must use the new global barriers: `quiesce` → `stopping(reason)` → `close_admission` → `drain` → `stop(reason)` → Module/container cleanup. Move accepted-work draining out of resource `stop`; keep dependencies alive until all drains complete. `prepare(bool)` still selects the startup mode.
|
|
374
|
+
|
|
375
|
+
Move business calls needed before resource release into the optional `HostedService.stopping(context, reason)` hook. Use its separate context for SDK/thread callbacks; the startup context stays closed. Only successfully started services receive the hook. `stop` still cleans every touched service, including partial startup failures. Each hook uses the existing `shutdown_timeout`; cancellation waits for actual cleanup and is not a total shutdown deadline.
|
|
376
|
+
|
|
377
|
+
Channels that must accept these callbacks declare `stopping_owners=(ServiceType,)` and pass the current hook context with `send(value, stopping=context)` or `submit(value, stopping=context)`. The channel Module must depend on the declared service owner. The default permits no shutdown input. Capacity, receipts and per-call scope/UoW behavior remain unchanged; HTTP/WebSocket retain native transport shutdown. See the [lifecycle decision](docs/adr/ADR-033-staged-lifecycle-shutdown.md) and [usage guide](docs/development.md#hostedservice-收尾).
|
|
378
|
+
|
|
371
379
|
#### Additional fixes in 0.4.0
|
|
372
380
|
|
|
373
381
|
`BackgroundJobRetryPolicy.max_attempts` now counts all executions, including the first. A value of `2` permits two executions; `1` disables failure retries. The 0.3.2 PgQueuer mapping allowed one extra execution. If your application intentionally relied on that behavior, increase its configured total by one. `BackgroundJobContext.attempt` remains zero-based. No queue schema migration is required.
|
|
@@ -3,7 +3,7 @@ python_ddd_framework/application/__init__.py,sha256=RPe_lkegIRim7GcBnXyevOg5KM7b
|
|
|
3
3
|
python_ddd_framework/application/build_spec.py,sha256=Udj1JIgP2oBMCUezmzWzOdjFYBCEE8OxwHSEaDqrMMo,1030
|
|
4
4
|
python_ddd_framework/application/builder.py,sha256=d0vc1D5HvG_aJI5lPQydr-ha0OTNviWlplxlyP99qDs,8080
|
|
5
5
|
python_ddd_framework/application/composition.py,sha256=vgtalmP-ovAHZ3vgDen2Eywj5WPfkhvtPHbPmreQbwc,7601
|
|
6
|
-
python_ddd_framework/application/runtime.py,sha256=
|
|
6
|
+
python_ddd_framework/application/runtime.py,sha256=2VzBWlgwkyWRXK9hf3jzO5Wd2U749pVIXsjzrK0WF9Y,15433
|
|
7
7
|
python_ddd_framework/application/runtime_hooks.py,sha256=RFlte6jMRmlla00ZGXqi4CBHJAJ7TI7GGZ_sv3V41dU,12240
|
|
8
8
|
python_ddd_framework/application/state.py,sha256=IH0KLhNpsqrUKHaal5yvZ5svcbhX2shJmQ4pPP_lyAs,5478
|
|
9
9
|
python_ddd_framework/application_services/__init__.py,sha256=sxmrmycrqb3PWmhUNt1FGOQKzezeoZabkxWQDxW3K8I,1203
|
|
@@ -12,7 +12,7 @@ python_ddd_framework/application_services/catalog.py,sha256=1T3QtLj1ENx6VtsfcvVl
|
|
|
12
12
|
python_ddd_framework/application_services/contracts.py,sha256=dTVMuinGho3aAagXF5ZOdqMngMCsl1mLcrqNNLoJ1rU,7379
|
|
13
13
|
python_ddd_framework/application_services/dispatcher.py,sha256=FD4DP2tkGA2hp1MYD2-GnIXrRBMUixUG8QkRq8hzBeg,6505
|
|
14
14
|
python_ddd_framework/application_services/errors.py,sha256=jBR9zt8kRygNG7gUbZOe8dugCT3YR3iOV-DmuNX0znA,2970
|
|
15
|
-
python_ddd_framework/application_services/invocation.py,sha256=
|
|
15
|
+
python_ddd_framework/application_services/invocation.py,sha256=TgpibFVhvj2ai9cmKnd30lUtTd0RdA5XfQQXX_L_EUA,23597
|
|
16
16
|
python_ddd_framework/application_services/module.py,sha256=9uvigujA-Rraw0vbpO85VA-pDjtHAhoOObJRL0kMuas,7091
|
|
17
17
|
python_ddd_framework/application_services/pagination.py,sha256=4jq4wGO60iPrIpP_6gnXYnIYkvcqgC6wJ6B0cmyL7Xw,500
|
|
18
18
|
python_ddd_framework/auditing/__init__.py,sha256=299w-hyoCj50QNr-1FPq6G4NO8boiRDKTfcPcGLT5Ao,345
|
|
@@ -39,12 +39,12 @@ python_ddd_framework/background_execution/child.py,sha256=EgTP-xkWpmXrYZO-3G6qMS
|
|
|
39
39
|
python_ddd_framework/background_execution/contracts.py,sha256=8K7ILU67rJQ9jUd7zU2Rcf1YZ1Q-KePjS5xkl_E7W6c,1185
|
|
40
40
|
python_ddd_framework/background_execution/declarations.py,sha256=xqA5fG3F5V8KrQF9oRW-E_hgHbR2f5VRw6fMNwWZkpA,1478
|
|
41
41
|
python_ddd_framework/background_execution/lifecycle.py,sha256=BhVkTlNPLhqUXG1h6nuG958r47Be0haqBgTKimE48Eo,1194
|
|
42
|
-
python_ddd_framework/background_execution/local.py,sha256=
|
|
42
|
+
python_ddd_framework/background_execution/local.py,sha256=ypTAESAUCzpeVwhu_10mwWr5pOexDYObguXecwS9aQ4,5959
|
|
43
43
|
python_ddd_framework/background_execution/locks.py,sha256=bD_hT_PfZnXXrq4VwTPK1pPHzeJ6JEZ7d6cekBBjG9g,1298
|
|
44
44
|
python_ddd_framework/background_execution/management.py,sha256=FmtuhU1glMXnQoYzn-w1F7GjUCVjhnW6ssACr4_tSeE,716
|
|
45
45
|
python_ddd_framework/background_execution/module.py,sha256=V7AMhBwPOQlrHMoO5xgq6SyGJepykiv8HaPjohiRuBo,4831
|
|
46
46
|
python_ddd_framework/background_execution/permissions.py,sha256=63PomRO6Zb9z0ezn6ra6n8zVjbdFFsnzqpGJ_Xcm3AU,584
|
|
47
|
-
python_ddd_framework/background_execution/processes.py,sha256=
|
|
47
|
+
python_ddd_framework/background_execution/processes.py,sha256=AnDPMSFcoEtvqpl6wz2JVqPl8ywfM5i43jvgmuY8_VA,13764
|
|
48
48
|
python_ddd_framework/background_jobs/__init__.py,sha256=DLPrkoSb7wXWmGZOAzFynmjvI7qtyKXpaCGTnU5FWBs,819
|
|
49
49
|
python_ddd_framework/background_jobs/catalog.py,sha256=-D4Rhln_VkIRt5nrld-icxZSMUqfZsYhJXRd1wV3d-M,14237
|
|
50
50
|
python_ddd_framework/background_jobs/contracts.py,sha256=WT0Zr6HsbMr2Pd-OP8boq0hcD0MZ8M5n78FgNcLL9B4,7855
|
|
@@ -66,7 +66,7 @@ python_ddd_framework/background_workers/catalog.py,sha256=esbPe_nz6GFKOkNy3cHJaH
|
|
|
66
66
|
python_ddd_framework/background_workers/contracts.py,sha256=rDscYI7o9jebr1eFGIaOVCUyFFp9WG127obj50fYLyY,5603
|
|
67
67
|
python_ddd_framework/background_workers/errors.py,sha256=sNPth84yM9fE77dr5V_SdAI8oqcPZu4eXqOhsDMqeaU,732
|
|
68
68
|
python_ddd_framework/background_workers/execution.py,sha256=e7OywrRefIN6mhzvHApCoS8L5fXKI8kLgNxHpGV2idY,5490
|
|
69
|
-
python_ddd_framework/background_workers/runtime.py,sha256=
|
|
69
|
+
python_ddd_framework/background_workers/runtime.py,sha256=WA6L9pXf0YYdLQgdKwgwPbkVN1tPnI2scmJjztXWVP0,10667
|
|
70
70
|
python_ddd_framework/caching/__init__.py,sha256=J4MKK4ptwl8KraAKWiqDo18LYAQmZ_Wb5SgCL35VUM0,341
|
|
71
71
|
python_ddd_framework/caching/contracts.py,sha256=71zhKUqi3zD-iZ5lZfVKRNjlkNfMpjffICaGmGUoe0A,2190
|
|
72
72
|
python_ddd_framework/caching/errors.py,sha256=pR-lBWjNY6UFcnPhM9eahoipC_1VxZmJESRoQp9kpa8,473
|
|
@@ -105,7 +105,7 @@ python_ddd_framework/developer_kit/templates/basic/{{cookiecutter.module_name}}/
|
|
|
105
105
|
python_ddd_framework/developer_kit/templates/basic/{{cookiecutter.module_name}}/services/__init__.py.jinja,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
106
106
|
python_ddd_framework/developer_kit/templates/basic/{{cookiecutter.module_name}}/services/default_conversion_service.py.jinja,sha256=YIYXqDycBVoUlLCwwUZ2tcyUk2fKSu-20mI00u5QUhc,342
|
|
107
107
|
python_ddd_framework/developer_kit/templates/module/cookiecutter.json,sha256=yirXpnODe6TAOyf2VR0LhAMPdrX-_Qvjobu4K0mC8ck,120
|
|
108
|
-
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/README.md,sha256=
|
|
108
|
+
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/README.md,sha256=_-msJMH_dRGk7JdBHBzqcIxzx6k3qYjY_CB9FWnFIGM,8736
|
|
109
109
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/__init__.py.jinja,sha256=byPOI4PKtQDi5IQa9tzZZEVYy5zGx9PJdBzPrgcxm64,89
|
|
110
110
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/__init__.py.jinja,sha256=pm9_TqjN20deRELpopxK412O3mra0OZ6QdesPdcsaRU,90
|
|
111
111
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/background_jobs/__init__.py.jinja,sha256=Kbig4VsdpmVUDHx5SLPf7ZZM6S5ftVmzBxBAJIjwvng,40
|
|
@@ -125,8 +125,8 @@ python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}
|
|
|
125
125
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/event_handlers/__init__.py.jinja,sha256=Kbig4VsdpmVUDHx5SLPf7ZZM6S5ftVmzBxBAJIjwvng,40
|
|
126
126
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/event_handlers/order_changed_handler.py.jinja,sha256=Tu40Q_HPbF0dNO0hqNJDBFCs6G2n9kNt3RHanIcfhUM,1311
|
|
127
127
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/hosted_services/__init__.py.jinja,sha256=Kbig4VsdpmVUDHx5SLPf7ZZM6S5ftVmzBxBAJIjwvng,40
|
|
128
|
-
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/hosted_services/order_integration_service.py.jinja,sha256=
|
|
129
|
-
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/hosted_services/order_observation_handler.py.jinja,sha256=
|
|
128
|
+
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/hosted_services/order_integration_service.py.jinja,sha256=ibx4gynGNZiLxoxoRanQ2alx0l6CexvK9Wyr_qyiGh4,3038
|
|
129
|
+
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/hosted_services/order_observation_handler.py.jinja,sha256=KbFmFLZIJ9-3nDdWggwi46IkLERGrFKrg5Fv0rMArcE,656
|
|
130
130
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/integration_services/__init__.py.jinja,sha256=Kbig4VsdpmVUDHx5SLPf7ZZM6S5ftVmzBxBAJIjwvng,40
|
|
131
131
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/integration_services/order_reporting_service.py.jinja,sha256=cdJ7odGr4z-Ag-yMQRiDdjmOnGK4r_s7ncOLMYOuq8A,650
|
|
132
132
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/application/interceptors/__init__.py.jinja,sha256=Kbig4VsdpmVUDHx5SLPf7ZZM6S5ftVmzBxBAJIjwvng,40
|
|
@@ -207,7 +207,7 @@ python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}
|
|
|
207
207
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/tests/__init__.py.jinja,sha256=Kbig4VsdpmVUDHx5SLPf7ZZM6S5ftVmzBxBAJIjwvng,40
|
|
208
208
|
python_ddd_framework/developer_kit/templates/module/{{cookiecutter.module_name}}/tests/test_domain.py.jinja,sha256=7aELY93ty7EiJOS6s3GpXYE1z5CLy658rnAUElTyy-U,738
|
|
209
209
|
python_ddd_framework/developer_kit/templates/project/cookiecutter.json,sha256=vmN799k9eRHAEGeYt8uUjPsusbblvgpNIsXVOsXUno4,314
|
|
210
|
-
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/AGENTS.md,sha256=
|
|
210
|
+
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/AGENTS.md,sha256=NYwQ1p_kkpJA7P1rlYyOjNdy-dan9yE8b9EE6CqBUeg,8184
|
|
211
211
|
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/README.md,sha256=xJZD8VyGjAkTbYMdOAWKn3gMgCo_aYzcH0jeVqiZKZI,8605
|
|
212
212
|
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/backend/.dockerignore,sha256=TG053vIzikxG8h53vCcU_s5wcr7p4GEKwsedbrRrSOo,71
|
|
213
213
|
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/backend/.gitignore,sha256=OF6nwgb-RiP8EAXc5osbk3bsOEYkk0JaV99v3FcglTU,66
|
|
@@ -222,8 +222,8 @@ python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name
|
|
|
222
222
|
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/backend/src/host/module.py.jinja,sha256=6j63muRR7tQmYIFso-egk8L5_Zw57I61ijWR8SDpw5U,3235
|
|
223
223
|
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/backend/tests/conftest.py.jinja,sha256=I_SlSxioBsCFNJLM52iM-neYBJR71qOUn7C4dI9t-7I,149
|
|
224
224
|
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/backend/tests/host/test_http.py.jinja,sha256=pmiz6k0oWWrPeW_rVG2Ynibg4j3yuKvgvYFc0K7J_no,2766
|
|
225
|
-
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/docs/architecture.md,sha256=
|
|
226
|
-
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/docs/development.md,sha256=
|
|
225
|
+
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/docs/architecture.md,sha256=x5MRPgB1eLAocXrmBQ_TRbrzOoQ9Tl7KKniZ24zCiH0,15420
|
|
226
|
+
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/docs/development.md,sha256=yfPwn1jBhGFQQeSMFndutlv8K9tA5_fQBsUEVxPpFKs,32417
|
|
227
227
|
python_ddd_framework/developer_kit/templates/project/{{cookiecutter.project_name}}/scripts/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
228
228
|
python_ddd_framework/developer_kit/wiring.py,sha256=80ZhxpGXK6NP3b_BTTc1kt3oIU21MU70cT9kgm8ZgAE,7835
|
|
229
229
|
python_ddd_framework/diagnostics/__init__.py,sha256=HdgzjQqMJ_SUGKJc5EcQ5PL1rM4GcTeem-L0q1r7vjQ,455
|
|
@@ -295,14 +295,14 @@ python_ddd_framework/fastapi/transfer.py,sha256=QiWPxvv-sYkilGTwP8uDh-dozGR-Qf8i
|
|
|
295
295
|
python_ddd_framework/fastapi/upload_limits.py,sha256=vK1wuH34zrqrZhg6WDwMn730nX9fUDsMFhBbHKmv2kg,1959
|
|
296
296
|
python_ddd_framework/fastapi/uploads.py,sha256=SUQVB7tEXUXti6GFUenBNdlW3YaIchtCi0GcBJGhU88,3839
|
|
297
297
|
python_ddd_framework/hosted_services/__init__.py,sha256=r9yz2PpCUgpxvZsv1WyVrzslvfYCcfmAEsFIlrxejx8,991
|
|
298
|
-
python_ddd_framework/hosted_services/bridge.py,sha256=
|
|
298
|
+
python_ddd_framework/hosted_services/bridge.py,sha256=8Aw4XD3O-rC5M1smAeMqHvR24moMdY-QQdpfRVGlXLw,17075
|
|
299
299
|
python_ddd_framework/hosted_services/catalog.py,sha256=maXqFDewPeYoEPYJGKf8B1G4oknVDUuy56lOSdJ8p6o,9146
|
|
300
|
-
python_ddd_framework/hosted_services/contracts.py,sha256=
|
|
300
|
+
python_ddd_framework/hosted_services/contracts.py,sha256=LtisS08lO8v_cBd0Guy8RVf8S8f_fpWq-2VMCZGPRcc,2237
|
|
301
301
|
python_ddd_framework/hosted_services/declarations.py,sha256=IvtaOWPvoTECwdhTxRqd4_4-LMyJlxjB0Xrx9zr-Ljw,526
|
|
302
302
|
python_ddd_framework/hosted_services/errors.py,sha256=GKG7fEkSoW4ykUXmMHriNrhuIEKBlonlN_vkjIwWKAY,1949
|
|
303
303
|
python_ddd_framework/hosted_services/module.py,sha256=EyDIwdtiBmhmhaG_9_MW_8iPBxsZtaWu0P6ivJOZiV4,2628
|
|
304
304
|
python_ddd_framework/hosted_services/options.py,sha256=KiMZhzbgFlUhYdTbTccUHMfGHrnnXrn-_5Qf6PAfxlE,551
|
|
305
|
-
python_ddd_framework/hosted_services/runtime.py,sha256=
|
|
305
|
+
python_ddd_framework/hosted_services/runtime.py,sha256=fP96LDfItgh4jo3NoTF4-opUOrblDaCAFBJrzSNK0Io,14199
|
|
306
306
|
python_ddd_framework/hosted_services/state.py,sha256=q9mZrd1nflI3WvYg6xzBzNZvbq1lEDXImSW4dXRZiVs,1459
|
|
307
307
|
python_ddd_framework/hosting/__init__.py,sha256=pH06-NGL_FXdio5YldB4pqY89IyL8vDe4HStwRlakdI,244
|
|
308
308
|
python_ddd_framework/hosting/instance.py,sha256=2vmaB4McO8vCzZcqKP3zbNPDHO1WUNyTIWyEOKm4-R8,1581
|
|
@@ -350,16 +350,16 @@ python_ddd_framework/invocation/validation.py,sha256=sy3YyGFtQ-Y69XcjzfJw7PO13zw
|
|
|
350
350
|
python_ddd_framework/lifecycle/__init__.py,sha256=8L_wDnclU6xAPmPAtx2iGX8lf4qFczcE_ubqFsGfhJA,745
|
|
351
351
|
python_ddd_framework/lifecycle/composition.py,sha256=dKsqWB6Tvplkpt_d4qBFKP48Kzs9_9ud66XXdA6f-cI,1167
|
|
352
352
|
python_ddd_framework/lifecycle/context.py,sha256=GfWBjveXbmVLWmQsRc77p5zsUcOCN2MyEV770x855pE,907
|
|
353
|
-
python_ddd_framework/lifecycle/participants.py,sha256=
|
|
353
|
+
python_ddd_framework/lifecycle/participants.py,sha256=tljXU7plQCw_DqsopqnmQ_14kQWKUJ-HzsuM_JGehdk,1457
|
|
354
354
|
python_ddd_framework/lifecycle/runtime.py,sha256=8itu1qc-TKYwfQpihEJevUyrsijTxhak15o7qGG-yzI,1166
|
|
355
355
|
python_ddd_framework/lifecycle/state.py,sha256=chxUojM1d3s-cu7mr_gWV-kFu5A-S6ANlKBQ_Pq-0GA,501
|
|
356
356
|
python_ddd_framework/messaging/__init__.py,sha256=RiZ1RhVT3k1HXIpWiR41ne6vJCgUpfkR2xnQTy5emHY,576
|
|
357
|
-
python_ddd_framework/messaging/channel.py,sha256=
|
|
358
|
-
python_ddd_framework/messaging/contracts.py,sha256=
|
|
359
|
-
python_ddd_framework/messaging/module.py,sha256=
|
|
357
|
+
python_ddd_framework/messaging/channel.py,sha256=JvC2hzdFsAYNbHPCM49c63fORB0_fPMc-h6B6tYAcmQ,9961
|
|
358
|
+
python_ddd_framework/messaging/contracts.py,sha256=UK2tXLdH_Apx_lxf_cLplYpv_i0_kMuFB-sV7NiLflQ,2777
|
|
359
|
+
python_ddd_framework/messaging/module.py,sha256=tdWSH3oLcYUZU74dGJTVwUIY-sIDeW1K76WfNzYRgyg,5331
|
|
360
360
|
python_ddd_framework/messaging/options.py,sha256=SnGQA1oEHKKpPVi5n16YgacbvIkxTX4IRjEpAfLOUTo,332
|
|
361
361
|
python_ddd_framework/messaging/receipt.py,sha256=Mfc_waONpUlIY0arqVuHW78ETZsteeNY-LokhHYEAm8,795
|
|
362
|
-
python_ddd_framework/messaging/runtime.py,sha256=
|
|
362
|
+
python_ddd_framework/messaging/runtime.py,sha256=iZtoE-cnPEFXwOK6uERrbyFkMYB5v1lnzTx64633URY,4807
|
|
363
363
|
python_ddd_framework/modularity/__init__.py,sha256=8MFbyTdOC-qlu87nQFCiq-JtZMdpRLjSXpiFrwu9djE,560
|
|
364
364
|
python_ddd_framework/modularity/contracts.py,sha256=z9PxxtOiFwtQOMZzatmO_3SYFTmPJb-aMz_fpwMg_Io,3720
|
|
365
365
|
python_ddd_framework/modularity/discovery.py,sha256=5e346Q4363i3WhTS_VerjS1j7A-SxxsXgYGnVRNUjko,6200
|
|
@@ -480,9 +480,9 @@ python_ddd_framework/unit_of_work/module.py,sha256=6H0D2ZNH5DJ2LnDGhHkI98FsTqew4
|
|
|
480
480
|
python_ddd_framework/unit_of_work/options.py,sha256=AVcEmwwn39qvj8PLQetBeGzdU_eblABGuNLDIQU5tyI,3365
|
|
481
481
|
python_ddd_framework/validation/__init__.py,sha256=nTN_BgIXMLHeUtMgSj2hpisWc1_sk6UWTapk30oh1us,100
|
|
482
482
|
python_ddd_framework/validation/models.py,sha256=Ydz5ZYgqYMPZEXi9A3DA6beN5lD9AcMaImnxDf1aRXs,1737
|
|
483
|
-
python_ddd_framework-0.
|
|
484
|
-
python_ddd_framework-0.
|
|
485
|
-
python_ddd_framework-0.
|
|
486
|
-
python_ddd_framework-0.
|
|
487
|
-
python_ddd_framework-0.
|
|
488
|
-
python_ddd_framework-0.
|
|
483
|
+
python_ddd_framework-0.5.1.dist-info/licenses/LICENSE,sha256=2sSWLZdtk4EhG2GlwpksXzmyux-G6Qiov0D27lE_bqw,805
|
|
484
|
+
python_ddd_framework-0.5.1.dist-info/licenses/src/python_ddd_framework/background_jobs/pgqueuer/UPSTREAM_LICENSE.txt,sha256=0lCGUd5Pke2Up1Kqn1kRnHcwLlBz60E8xvR7WL4k_kE,1066
|
|
485
|
+
python_ddd_framework-0.5.1.dist-info/WHEEL,sha256=7hzKWg-J8I3Buqyw5tBii5z_MmAVsDYXXijd_QAtNZ8,81
|
|
486
|
+
python_ddd_framework-0.5.1.dist-info/entry_points.txt,sha256=CMy4XBD8IKGUfHwe0YBmHmSJtjfnA3yyDHqsMZCLsc8,447
|
|
487
|
+
python_ddd_framework-0.5.1.dist-info/METADATA,sha256=gyAZinf6LZuIQts8-opsMcyTPZ4RUNkVkL_5p0n0qu4,53839
|
|
488
|
+
python_ddd_framework-0.5.1.dist-info/RECORD,,
|
|
File without changes
|
{python_ddd_framework-0.4.0.dist-info → python_ddd_framework-0.5.1.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{python_ddd_framework-0.4.0.dist-info → python_ddd_framework-0.5.1.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|