tigrcorn-contract 0.3.18.dev1__tar.gz → 0.3.18.dev3__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 (21) hide show
  1. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/PKG-INFO +4 -4
  2. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/README.md +1 -1
  3. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/pyproject.toml +3 -3
  4. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/events.py +31 -2
  5. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract.egg-info/PKG-INFO +4 -4
  6. tigrcorn_contract-0.3.18.dev3/src/tigrcorn_contract.egg-info/requires.txt +3 -0
  7. tigrcorn_contract-0.3.18.dev1/src/tigrcorn_contract.egg-info/requires.txt +0 -3
  8. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/LICENSE +0 -0
  9. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/setup.cfg +0 -0
  10. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/__init__.py +0 -0
  11. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/classification.py +0 -0
  12. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/compat.py +0 -0
  13. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/metadata.py +0 -0
  14. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/projection.py +0 -0
  15. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/py.typed +0 -0
  16. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/registry.py +0 -0
  17. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/scopes.py +0 -0
  18. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract/semantics.py +0 -0
  19. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract.egg-info/SOURCES.txt +0 -0
  20. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract.egg-info/dependency_links.txt +0 -0
  21. {tigrcorn_contract-0.3.18.dev1 → tigrcorn_contract-0.3.18.dev3}/src/tigrcorn_contract.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tigrcorn-contract
3
- Version: 0.3.18.dev1
3
+ Version: 0.3.18.dev3
4
4
  Summary: tigr-asgi-contract adapters and runtime-boundary classification for Tigrcorn ASGI3, WebSocket, and WebTransport surfaces.
5
5
  Author-email: Jacob Stewart <jacob@swarmauri.com>
6
6
  License: Apache License
@@ -186,8 +186,8 @@ Classifier: Typing :: Typed
186
186
  Requires-Python: <3.15,>=3.10
187
187
  Description-Content-Type: text/markdown
188
188
  License-File: LICENSE
189
- Requires-Dist: tigrcorn-core==0.3.18.dev1
190
- Requires-Dist: tigrcorn-asgi==0.3.18.dev1
189
+ Requires-Dist: tigrcorn-core==0.3.18.dev3
190
+ Requires-Dist: tigrcorn-asgi==0.3.18.dev3
191
191
  Requires-Dist: tigr-asgi-contract>=0.3.2
192
192
  Dynamic: license-file
193
193
 
@@ -281,7 +281,7 @@ The package exposes its supported public surface through the <code>tigrcorn_cont
281
281
 
282
282
  ## Package Graph
283
283
 
284
- [tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
284
+ [tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-quic-cc](https://pypi.org/project/tigrcorn-quic-cc/) | [tigrcorn-quic-cc-reno](https://pypi.org/project/tigrcorn-quic-cc-reno/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
285
285
 
286
286
  ## Best Practices
287
287
 
@@ -88,7 +88,7 @@ The package exposes its supported public surface through the <code>tigrcorn_cont
88
88
 
89
89
  ## Package Graph
90
90
 
91
- [tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
91
+ [tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-quic-cc](https://pypi.org/project/tigrcorn-quic-cc/) | [tigrcorn-quic-cc-reno](https://pypi.org/project/tigrcorn-quic-cc-reno/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
92
92
 
93
93
  ## Best Practices
94
94
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "tigrcorn-contract"
7
- version = "0.3.18.dev1"
7
+ version = "0.3.18.dev3"
8
8
  description = "tigr-asgi-contract adapters and runtime-boundary classification for Tigrcorn ASGI3, WebSocket, and WebTransport surfaces."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10,<3.15"
@@ -29,8 +29,8 @@ classifiers = [
29
29
  "Typing :: Typed",
30
30
  ]
31
31
  dependencies = [
32
- "tigrcorn-core==0.3.18.dev1",
33
- "tigrcorn-asgi==0.3.18.dev1",
32
+ "tigrcorn-core==0.3.18.dev3",
33
+ "tigrcorn-asgi==0.3.18.dev3",
34
34
  "tigr-asgi-contract>=0.3.2",
35
35
  ]
36
36
 
@@ -367,6 +367,8 @@ def webtransport_stream_send(
367
367
  stream_direction: str = "bidi",
368
368
  framing: str | None = None,
369
369
  more: bool = False,
370
+ emit_id: str | None = None,
371
+ completion_level: str | CompletionLevel | None = None,
370
372
  ) -> dict[str, Any]:
371
373
  event = _event(
372
374
  "webtransport.stream.send",
@@ -378,6 +380,12 @@ def webtransport_stream_send(
378
380
  )
379
381
  if framing is not None:
380
382
  event["framing"] = framing
383
+ if emit_id is not None:
384
+ event["emit_id"] = str(emit_id)
385
+ if completion_level is not None:
386
+ event["completion_level"] = CompletionLevel(
387
+ _normalize_completion_level(str(completion_level))
388
+ ).value
381
389
  return event
382
390
 
383
391
 
@@ -388,10 +396,24 @@ def webtransport_datagram_receive(session_id: str, datagram_id: str, data: bytes
388
396
  return event
389
397
 
390
398
 
391
- def webtransport_datagram_send(session_id: str, datagram_id: str, data: bytes, *, framing: str | None = None) -> dict[str, Any]:
399
+ def webtransport_datagram_send(
400
+ session_id: str,
401
+ datagram_id: str,
402
+ data: bytes,
403
+ *,
404
+ framing: str | None = None,
405
+ emit_id: str | None = None,
406
+ completion_level: str | CompletionLevel | None = None,
407
+ ) -> dict[str, Any]:
392
408
  event = _event("webtransport.datagram.send", session_id=session_id, datagram_id=datagram_id, data=data)
393
409
  if framing is not None:
394
410
  event["framing"] = framing
411
+ if emit_id is not None:
412
+ event["emit_id"] = str(emit_id)
413
+ if completion_level is not None:
414
+ event["completion_level"] = CompletionLevel(
415
+ _normalize_completion_level(str(completion_level))
416
+ ).value
395
417
  return event
396
418
 
397
419
 
@@ -401,6 +423,7 @@ def emit_complete(
401
423
  level: str | CompletionLevel = CompletionLevel.FLUSHED_TO_TRANSPORT,
402
424
  status: str | CompletionStatus = CompletionStatus.OK,
403
425
  detail: str | None = None,
426
+ emit_id: str | None = None,
404
427
  ) -> dict[str, Any]:
405
428
  try:
406
429
  completion_level = CompletionLevel(_normalize_completion_level(str(level)))
@@ -410,7 +433,13 @@ def emit_complete(
410
433
  completion_status = CompletionStatus(str(status))
411
434
  except ValueError as exc:
412
435
  raise ProtocolError(f"unsupported completion status: {status!r}") from exc
413
- event = _event("transport.emit.complete", unit_id=_require_unit_id(unit_id), level=completion_level.value, status=completion_status.value)
436
+ event = _event(
437
+ "transport.emit.complete",
438
+ unit_id=_require_unit_id(unit_id),
439
+ emit_id=str(emit_id or unit_id),
440
+ level=completion_level.value,
441
+ status=completion_status.value,
442
+ )
414
443
  if detail:
415
444
  event["detail"] = detail
416
445
  return event
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tigrcorn-contract
3
- Version: 0.3.18.dev1
3
+ Version: 0.3.18.dev3
4
4
  Summary: tigr-asgi-contract adapters and runtime-boundary classification for Tigrcorn ASGI3, WebSocket, and WebTransport surfaces.
5
5
  Author-email: Jacob Stewart <jacob@swarmauri.com>
6
6
  License: Apache License
@@ -186,8 +186,8 @@ Classifier: Typing :: Typed
186
186
  Requires-Python: <3.15,>=3.10
187
187
  Description-Content-Type: text/markdown
188
188
  License-File: LICENSE
189
- Requires-Dist: tigrcorn-core==0.3.18.dev1
190
- Requires-Dist: tigrcorn-asgi==0.3.18.dev1
189
+ Requires-Dist: tigrcorn-core==0.3.18.dev3
190
+ Requires-Dist: tigrcorn-asgi==0.3.18.dev3
191
191
  Requires-Dist: tigr-asgi-contract>=0.3.2
192
192
  Dynamic: license-file
193
193
 
@@ -281,7 +281,7 @@ The package exposes its supported public surface through the <code>tigrcorn_cont
281
281
 
282
282
  ## Package Graph
283
283
 
284
- [tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
284
+ [tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-quic-cc](https://pypi.org/project/tigrcorn-quic-cc/) | [tigrcorn-quic-cc-reno](https://pypi.org/project/tigrcorn-quic-cc-reno/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
285
285
 
286
286
  ## Best Practices
287
287
 
@@ -0,0 +1,3 @@
1
+ tigrcorn-core==0.3.18.dev3
2
+ tigrcorn-asgi==0.3.18.dev3
3
+ tigr-asgi-contract>=0.3.2
@@ -1,3 +0,0 @@
1
- tigrcorn-core==0.3.18.dev1
2
- tigrcorn-asgi==0.3.18.dev1
3
- tigr-asgi-contract>=0.3.2