b24api 2.5.0__tar.gz → 2.5.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.
Files changed (132) hide show
  1. {b24api-2.5.0/b24api.egg-info → b24api-2.5.1}/PKG-INFO +1 -1
  2. {b24api-2.5.0 → b24api-2.5.1}/b24api/testing/transport.py +9 -1
  3. {b24api-2.5.0 → b24api-2.5.1/b24api.egg-info}/PKG-INFO +1 -1
  4. {b24api-2.5.0 → b24api-2.5.1}/LICENSE +0 -0
  5. {b24api-2.5.0 → b24api-2.5.1}/MANIFEST.in +0 -0
  6. {b24api-2.5.0 → b24api-2.5.1}/README.md +0 -0
  7. {b24api-2.5.0 → b24api-2.5.1}/b24api/__init__.py +0 -0
  8. {b24api-2.5.0 → b24api-2.5.1}/b24api/_client_traversal.py +0 -0
  9. {b24api-2.5.0 → b24api-2.5.1}/b24api/_diagnostics.py +0 -0
  10. {b24api-2.5.0 → b24api-2.5.1}/b24api/_error_types.py +0 -0
  11. {b24api-2.5.0 → b24api-2.5.1}/b24api/_sources.py +0 -0
  12. {b24api-2.5.0 → b24api-2.5.1}/b24api/batch/__init__.py +0 -0
  13. {b24api-2.5.0 → b24api-2.5.1}/b24api/batch/engine.py +0 -0
  14. {b24api-2.5.0 → b24api-2.5.1}/b24api/batch/facade.py +0 -0
  15. {b24api-2.5.0 → b24api-2.5.1}/b24api/batch/logical.py +0 -0
  16. {b24api-2.5.0 → b24api-2.5.1}/b24api/batch/outcome.py +0 -0
  17. {b24api-2.5.0 → b24api-2.5.1}/b24api/batch/stream.py +0 -0
  18. {b24api-2.5.0 → b24api-2.5.1}/b24api/cli.py +0 -0
  19. {b24api-2.5.0 → b24api-2.5.1}/b24api/cli_contract.py +0 -0
  20. {b24api-2.5.0 → b24api-2.5.1}/b24api/client.py +0 -0
  21. {b24api-2.5.0 → b24api-2.5.1}/b24api/completion/__init__.py +0 -0
  22. {b24api-2.5.0 → b24api-2.5.1}/b24api/completion/closure.py +0 -0
  23. {b24api-2.5.0 → b24api-2.5.1}/b24api/completion/fast_recorder.py +0 -0
  24. {b24api-2.5.0 → b24api-2.5.1}/b24api/completion/gate.py +0 -0
  25. {b24api-2.5.0 → b24api-2.5.1}/b24api/completion/operation_stream.py +0 -0
  26. {b24api-2.5.0 → b24api-2.5.1}/b24api/completion/recorder.py +0 -0
  27. {b24api-2.5.0 → b24api-2.5.1}/b24api/completion/reference_recorder.py +0 -0
  28. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/__init__.py +0 -0
  29. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/bounded_range.py +0 -0
  30. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/command.py +0 -0
  31. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/completion.py +0 -0
  32. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/dispatch.py +0 -0
  33. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/error_base.py +0 -0
  34. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/evidence.py +0 -0
  35. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/identity_store.py +0 -0
  36. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/json.py +0 -0
  37. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/keyset_capability.py +0 -0
  38. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/keyset_execution.py +0 -0
  39. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/page.py +0 -0
  40. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/page_stop.py +0 -0
  41. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/policy.py +0 -0
  42. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/positional.py +0 -0
  43. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/reference.py +0 -0
  44. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/report.py +0 -0
  45. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/request.py +0 -0
  46. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/request_summary.py +0 -0
  47. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/response.py +0 -0
  48. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/stream.py +0 -0
  49. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/traversal.py +0 -0
  50. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/v3_codes.py +0 -0
  51. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/violation.py +0 -0
  52. {b24api-2.5.0 → b24api-2.5.1}/b24api/contracts/wire.py +0 -0
  53. {b24api-2.5.0 → b24api-2.5.1}/b24api/encoding.py +0 -0
  54. {b24api-2.5.0 → b24api-2.5.1}/b24api/errors.py +0 -0
  55. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/__init__.py +0 -0
  56. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/boundary.py +0 -0
  57. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/cleanup.py +0 -0
  58. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/context.py +0 -0
  59. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/executor.py +0 -0
  60. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/failure.py +0 -0
  61. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/lifecycle.py +0 -0
  62. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/rate.py +0 -0
  63. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/snapshot.py +0 -0
  64. {b24api-2.5.0 → b24api-2.5.1}/b24api/execution/throttle.py +0 -0
  65. {b24api-2.5.0 → b24api-2.5.1}/b24api/migration.py +0 -0
  66. {b24api-2.5.0 → b24api-2.5.1}/b24api/py.typed +0 -0
  67. {b24api-2.5.0 → b24api-2.5.1}/b24api/redaction.py +0 -0
  68. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/__init__.py +0 -0
  69. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/binding.py +0 -0
  70. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/dispatch.py +0 -0
  71. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/dispatch_plan.py +0 -0
  72. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/facade.py +0 -0
  73. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/fanout.py +0 -0
  74. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/outcome.py +0 -0
  75. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/scheduler.py +0 -0
  76. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/stream.py +0 -0
  77. {b24api-2.5.0 → b24api-2.5.1}/b24api/references/support.py +0 -0
  78. {b24api-2.5.0 → b24api-2.5.1}/b24api/settings.py +0 -0
  79. {b24api-2.5.0 → b24api-2.5.1}/b24api/testing/__init__.py +0 -0
  80. {b24api-2.5.0 → b24api-2.5.1}/b24api/testing/_isolation.py +0 -0
  81. {b24api-2.5.0 → b24api-2.5.1}/b24api/testing/scripted.py +0 -0
  82. {b24api-2.5.0 → b24api-2.5.1}/b24api/transport/__init__.py +0 -0
  83. {b24api-2.5.0 → b24api-2.5.1}/b24api/transport/base.py +0 -0
  84. {b24api-2.5.0 → b24api-2.5.1}/b24api/transport/decoding.py +0 -0
  85. {b24api-2.5.0 → b24api-2.5.1}/b24api/transport/httpx.py +0 -0
  86. {b24api-2.5.0 → b24api-2.5.1}/b24api/transport/log_records.py +0 -0
  87. {b24api-2.5.0 → b24api-2.5.1}/b24api/transport/logging_shield.py +0 -0
  88. {b24api-2.5.0 → b24api-2.5.1}/b24api/transport/protocol.py +0 -0
  89. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/__init__.py +0 -0
  90. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/control_preflight.py +0 -0
  91. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/counted.py +0 -0
  92. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/counted_batch.py +0 -0
  93. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/counted_rules.py +0 -0
  94. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/cursor.py +0 -0
  95. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/cursor_domain.py +0 -0
  96. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/driver.py +0 -0
  97. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/facade.py +0 -0
  98. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/facade_support.py +0 -0
  99. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/identity.py +0 -0
  100. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/identity_ledger.py +0 -0
  101. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset.py +0 -0
  102. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_auto.py +0 -0
  103. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_capability.py +0 -0
  104. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_eligibility.py +0 -0
  105. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_fast_plan.py +0 -0
  106. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_fast_stream.py +0 -0
  107. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_geometry.py +0 -0
  108. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_observation.py +0 -0
  109. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_ordered_admission.py +0 -0
  110. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_page_validation.py +0 -0
  111. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_plan.py +0 -0
  112. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_reporting.py +0 -0
  113. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_runtime.py +0 -0
  114. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_step.py +0 -0
  115. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_transaction_contract.py +0 -0
  116. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_transactions.py +0 -0
  117. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/keyset_verifier.py +0 -0
  118. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/offset_rules.py +0 -0
  119. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/page_adaptation.py +0 -0
  120. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/plans.py +0 -0
  121. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/sequential.py +0 -0
  122. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/sparse.py +0 -0
  123. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/strategy_context.py +0 -0
  124. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/stream.py +0 -0
  125. {b24api-2.5.0 → b24api-2.5.1}/b24api/traversal/values.py +0 -0
  126. {b24api-2.5.0 → b24api-2.5.1}/b24api.egg-info/SOURCES.txt +0 -0
  127. {b24api-2.5.0 → b24api-2.5.1}/b24api.egg-info/dependency_links.txt +0 -0
  128. {b24api-2.5.0 → b24api-2.5.1}/b24api.egg-info/entry_points.txt +0 -0
  129. {b24api-2.5.0 → b24api-2.5.1}/b24api.egg-info/requires.txt +0 -0
  130. {b24api-2.5.0 → b24api-2.5.1}/b24api.egg-info/top_level.txt +0 -0
  131. {b24api-2.5.0 → b24api-2.5.1}/pyproject.toml +0 -0
  132. {b24api-2.5.0 → b24api-2.5.1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: b24api
3
- Version: 2.5.0
3
+ Version: 2.5.1
4
4
  Summary: Bitrix24 API
5
5
  Author-email: Shkarupa Alex <shkarupa.alex@gmail.com>
6
6
  License-Expression: MIT
@@ -242,7 +242,7 @@ def _failure_detail(error: BaseException | None) -> str | None:
242
242
 
243
243
  async def _await_bounded[T](awaitable: Awaitable[T], *, seconds: float, detail: str) -> T:
244
244
  """Await extension code without waiting indefinitely for cancellation cooperation."""
245
- task = asyncio.ensure_future(awaitable)
245
+ task = asyncio.ensure_future(_contain_process_aborts(awaitable))
246
246
  try:
247
247
  done, _ = await asyncio.wait({task}, timeout=seconds)
248
248
  except asyncio.CancelledError:
@@ -256,6 +256,14 @@ async def _await_bounded[T](awaitable: Awaitable[T], *, seconds: float, detail:
256
256
  raise IsolationDeadlineError(detail)
257
257
 
258
258
 
259
+ async def _contain_process_aborts[T](awaitable: Awaitable[T]) -> T:
260
+ """Convert process aborts before Task re-raises them into and stops the isolated loop."""
261
+ try:
262
+ return await awaitable
263
+ except (KeyboardInterrupt, SystemExit) as error:
264
+ raise IsolationAbortError(type(error).__name__) from None
265
+
266
+
259
267
  def _consume_detached_task[T](task: asyncio.Future[T]) -> None:
260
268
  """Retrieve any eventual exception from cancellation-resistant extension code."""
261
269
  if not task.done():
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: b24api
3
- Version: 2.5.0
3
+ Version: 2.5.1
4
4
  Summary: Bitrix24 API
5
5
  Author-email: Shkarupa Alex <shkarupa.alex@gmail.com>
6
6
  License-Expression: MIT
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