ez-a-sync 0.32.26__cp310-cp310-win32.whl → 0.32.28__cp310-cp310-win32.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.

Potentially problematic release.


This version of ez-a-sync might be problematic. Click here for more details.

Files changed (71) hide show
  1. a_sync/_smart.c +63 -43
  2. a_sync/_smart.cp310-win32.pyd +0 -0
  3. a_sync/a_sync/_descriptor.c +78 -58
  4. a_sync/a_sync/_descriptor.cp310-win32.pyd +0 -0
  5. a_sync/a_sync/_flags.c +13 -10
  6. a_sync/a_sync/_flags.cp310-win32.pyd +0 -0
  7. a_sync/a_sync/_helpers.c +76 -56
  8. a_sync/a_sync/_helpers.cp310-win32.pyd +0 -0
  9. a_sync/a_sync/_kwargs.c +45 -25
  10. a_sync/a_sync/_kwargs.cp310-win32.pyd +0 -0
  11. a_sync/a_sync/abstract.c +54 -24
  12. a_sync/a_sync/abstract.cp310-win32.pyd +0 -0
  13. a_sync/a_sync/abstract.pyi +2 -2
  14. a_sync/a_sync/base.c +186 -162
  15. a_sync/a_sync/base.cp310-win32.pyd +0 -0
  16. a_sync/a_sync/flags.c +13 -10
  17. a_sync/a_sync/flags.cp310-win32.pyd +0 -0
  18. a_sync/a_sync/function.c +106 -77
  19. a_sync/a_sync/function.cp310-win32.pyd +0 -0
  20. a_sync/a_sync/method.c +151 -119
  21. a_sync/a_sync/method.cp310-win32.pyd +0 -0
  22. a_sync/a_sync/method.pyi +2 -1
  23. a_sync/a_sync/modifiers/manager.c +60 -40
  24. a_sync/a_sync/modifiers/manager.cp310-win32.pyd +0 -0
  25. a_sync/a_sync/property.c +104 -78
  26. a_sync/a_sync/property.cp310-win32.pyd +0 -0
  27. a_sync/async_property/cached.c +71 -51
  28. a_sync/async_property/cached.cp310-win32.pyd +0 -0
  29. a_sync/async_property/proxy.c +37 -17
  30. a_sync/async_property/proxy.cp310-win32.pyd +0 -0
  31. a_sync/asyncio/as_completed.c +33 -13
  32. a_sync/asyncio/as_completed.cp310-win32.pyd +0 -0
  33. a_sync/asyncio/create_task.c +59 -21
  34. a_sync/asyncio/create_task.cp310-win32.pyd +0 -0
  35. a_sync/asyncio/gather.c +42 -22
  36. a_sync/asyncio/gather.cp310-win32.pyd +0 -0
  37. a_sync/asyncio/igather.c +42 -18
  38. a_sync/asyncio/igather.cp310-win32.pyd +0 -0
  39. a_sync/asyncio/sleep.c +24 -4
  40. a_sync/asyncio/sleep.cp310-win32.pyd +0 -0
  41. a_sync/debugging.c +52 -32
  42. a_sync/debugging.cp310-win32.pyd +0 -0
  43. a_sync/exceptions.c +36 -20
  44. a_sync/exceptions.cp310-win32.pyd +0 -0
  45. a_sync/executor.py +44 -0
  46. a_sync/functools.c +36 -16
  47. a_sync/functools.cp310-win32.pyd +0 -0
  48. a_sync/iter.c +167 -97
  49. a_sync/iter.cp310-win32.pyd +0 -0
  50. a_sync/primitives/_debug.c +69 -49
  51. a_sync/primitives/_debug.cp310-win32.pyd +0 -0
  52. a_sync/primitives/_loggable.c +48 -22
  53. a_sync/primitives/_loggable.cp310-win32.pyd +0 -0
  54. a_sync/primitives/locks/counter.c +93 -63
  55. a_sync/primitives/locks/counter.cp310-win32.pyd +0 -0
  56. a_sync/primitives/locks/event.c +70 -49
  57. a_sync/primitives/locks/event.cp310-win32.pyd +0 -0
  58. a_sync/primitives/locks/prio_semaphore.c +120 -80
  59. a_sync/primitives/locks/prio_semaphore.cp310-win32.pyd +0 -0
  60. a_sync/primitives/locks/prio_semaphore.pyi +2 -2
  61. a_sync/primitives/locks/semaphore.c +96 -69
  62. a_sync/primitives/locks/semaphore.cp310-win32.pyd +0 -0
  63. a_sync/primitives/locks/semaphore.pyi +10 -9
  64. a_sync/primitives/queue.py +5 -1
  65. a_sync/utils/repr.c +55 -35
  66. a_sync/utils/repr.cp310-win32.pyd +0 -0
  67. {ez_a_sync-0.32.26.dist-info → ez_a_sync-0.32.28.dist-info}/METADATA +1 -1
  68. {ez_a_sync-0.32.26.dist-info → ez_a_sync-0.32.28.dist-info}/RECORD +71 -71
  69. {ez_a_sync-0.32.26.dist-info → ez_a_sync-0.32.28.dist-info}/WHEEL +0 -0
  70. {ez_a_sync-0.32.26.dist-info → ez_a_sync-0.32.28.dist-info}/licenses/LICENSE.txt +0 -0
  71. {ez_a_sync-0.32.26.dist-info → ez_a_sync-0.32.28.dist-info}/top_level.txt +0 -0
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.1.2 */
1
+ /* Generated by Cython 3.1.4 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -30,8 +30,8 @@ END: Cython Metadata */
30
30
  #elif PY_VERSION_HEX < 0x03080000
31
31
  #error Cython requires Python 3.8+.
32
32
  #else
33
- #define __PYX_ABI_VERSION "3_1_2"
34
- #define CYTHON_HEX_VERSION 0x030102F0
33
+ #define __PYX_ABI_VERSION "3_1_4"
34
+ #define CYTHON_HEX_VERSION 0x030104F0
35
35
  #define CYTHON_FUTURE_DIVISION 1
36
36
  /* CModulePreamble */
37
37
  #include <stddef.h>
@@ -394,6 +394,9 @@ END: Cython Metadata */
394
394
  enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) };
395
395
  #endif
396
396
  #endif
397
+ #ifndef CYTHON_LOCK_AND_GIL_DEADLOCK_AVOIDANCE_TIME
398
+ #define CYTHON_LOCK_AND_GIL_DEADLOCK_AVOIDANCE_TIME 100
399
+ #endif
397
400
  #ifndef __has_attribute
398
401
  #define __has_attribute(x) 0
399
402
  #endif
@@ -2019,18 +2022,18 @@ static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds);
2019
2022
  if (!__Pyx_PyThreadState_Current->tracing) {\
2020
2023
  if (likely(__pyx_frame_code)) Py_INCREF(__pyx_frame_code);\
2021
2024
  else __pyx_frame_code = (PyObject*) __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno);\
2022
- if (unlikely(!__pyx_frame_code)) goto_error;\
2023
- ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\
2024
- }\
2025
+ if (unlikely(!__pyx_frame_code)) ret = -1;\
2026
+ else ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\
2027
+ } else __pyx_frame_code = NULL;\
2025
2028
  PyGILState_Release(state);\
2026
- }\
2029
+ } else __pyx_frame_code = NULL;\
2027
2030
  } else {\
2028
2031
  if (!__Pyx_PyThreadState_Current->tracing) {\
2029
2032
  if (likely(__pyx_frame_code)) Py_INCREF(__pyx_frame_code);\
2030
2033
  else __pyx_frame_code = (PyObject*) __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno);\
2031
- if (unlikely(!__pyx_frame_code)) goto_error;\
2032
- ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\
2033
- }\
2034
+ if (unlikely(!__pyx_frame_code)) ret = -1;\
2035
+ else ret = __Pyx__TraceStartFunc(__pyx_pymonitoring_state, __pyx_frame_code, offset, skip_event);\
2036
+ } else __pyx_frame_code = NULL;\
2034
2037
  }\
2035
2038
  if (unlikely(ret == -1)) goto_error;\
2036
2039
  }
@@ -2848,22 +2851,22 @@ static int __Pyx_call_next_tp_traverse(PyObject* obj, visitproc v, void *a, trav
2848
2851
  static void __Pyx_call_next_tp_clear(PyObject* obj, inquiry current_tp_clear);
2849
2852
 
2850
2853
  /* TypeImport.proto */
2851
- #ifndef __PYX_HAVE_RT_ImportType_proto_3_1_2
2852
- #define __PYX_HAVE_RT_ImportType_proto_3_1_2
2854
+ #ifndef __PYX_HAVE_RT_ImportType_proto_3_1_4
2855
+ #define __PYX_HAVE_RT_ImportType_proto_3_1_4
2853
2856
  #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
2854
2857
  #include <stdalign.h>
2855
2858
  #endif
2856
2859
  #if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L
2857
- #define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) alignof(s)
2860
+ #define __PYX_GET_STRUCT_ALIGNMENT_3_1_4(s) alignof(s)
2858
2861
  #else
2859
- #define __PYX_GET_STRUCT_ALIGNMENT_3_1_2(s) sizeof(void*)
2862
+ #define __PYX_GET_STRUCT_ALIGNMENT_3_1_4(s) sizeof(void*)
2860
2863
  #endif
2861
- enum __Pyx_ImportType_CheckSize_3_1_2 {
2862
- __Pyx_ImportType_CheckSize_Error_3_1_2 = 0,
2863
- __Pyx_ImportType_CheckSize_Warn_3_1_2 = 1,
2864
- __Pyx_ImportType_CheckSize_Ignore_3_1_2 = 2
2864
+ enum __Pyx_ImportType_CheckSize_3_1_4 {
2865
+ __Pyx_ImportType_CheckSize_Error_3_1_4 = 0,
2866
+ __Pyx_ImportType_CheckSize_Warn_3_1_4 = 1,
2867
+ __Pyx_ImportType_CheckSize_Ignore_3_1_4 = 2
2865
2868
  };
2866
- static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size);
2869
+ static PyTypeObject *__Pyx_ImportType_3_1_4(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_4 check_size);
2867
2870
  #endif
2868
2871
 
2869
2872
  /* GetVTable.proto */
@@ -4566,9 +4569,10 @@ static PyObject *__pyx_pf_6a_sync_10primitives_5locks_5event_11CythonEvent_6__re
4566
4569
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4567
4570
  __pyx_t_1 = PyLong_FromSsize_t(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 93, __pyx_L1_error)
4568
4571
  __Pyx_GOTREF(__pyx_t_1);
4572
+ __Pyx_INCREF(__pyx_t_1);
4569
4573
  __pyx_v_len_waiters = __pyx_t_1;
4570
- __pyx_t_1 = 0;
4571
- __pyx_t_2 = (__pyx_t_6 != 0);
4574
+ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 93, __pyx_L1_error)
4575
+ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4572
4576
  if (__pyx_t_2) {
4573
4577
 
4574
4578
  /* "a_sync/primitives/locks/event.pyx":94
@@ -6539,11 +6543,11 @@ static PyObject *__pyx_gb_6a_sync_10primitives_5locks_5event_11CythonEvent_21gen
6539
6543
  __Pyx_GOTREF(__pyx_t_1);
6540
6544
  }
6541
6545
  if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_6a_sync_10primitives_5locks_5event_CythonEvent))))) __PYX_ERR(0, 173, __pyx_L1_error)
6546
+ __Pyx_INCREF(__pyx_t_1);
6542
6547
  __Pyx_XGOTREF((PyObject *)__pyx_cur_scope->__pyx_v_self);
6543
6548
  __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_self, ((struct __pyx_obj_6a_sync_10primitives_5locks_5event_CythonEvent *)__pyx_t_1));
6544
6549
  __Pyx_GIVEREF(__pyx_t_1);
6545
- __Pyx_INCREF(__pyx_t_1);
6546
- __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 173, __pyx_L1_error)
6550
+ __pyx_t_7 = __Pyx_PyObject_IsTrue(((PyObject *)__pyx_t_1)); if (unlikely((__pyx_t_7 < 0))) __PYX_ERR(0, 173, __pyx_L1_error)
6547
6551
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6548
6552
  if (__pyx_t_7) {
6549
6553
  } else {
@@ -7889,15 +7893,15 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) {
7889
7893
  /*--- Type init code ---*/
7890
7894
  __pyx_t_1 = PyImport_ImportModule("a_sync.primitives._debug"); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error)
7891
7895
  __Pyx_GOTREF(__pyx_t_1);
7892
- __pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__DebugDaemonMixin = __Pyx_ImportType_3_1_2(__pyx_t_1, "a_sync.primitives._debug", "_DebugDaemonMixin",
7896
+ __pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__DebugDaemonMixin = __Pyx_ImportType_3_1_4(__pyx_t_1, "a_sync.primitives._debug", "_DebugDaemonMixin",
7893
7897
  #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
7894
- sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin),
7898
+ sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_4(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin),
7895
7899
  #elif CYTHON_COMPILING_IN_LIMITED_API
7896
- sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin),
7900
+ sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_4(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin),
7897
7901
  #else
7898
- sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin),
7902
+ sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_4(struct __pyx_obj_6a_sync_10primitives_6_debug__DebugDaemonMixin),
7899
7903
  #endif
7900
- __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__DebugDaemonMixin) __PYX_ERR(0, 1, __pyx_L1_error)
7904
+ __Pyx_ImportType_CheckSize_Warn_3_1_4); if (!__pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__DebugDaemonMixin) __PYX_ERR(0, 1, __pyx_L1_error)
7901
7905
  __pyx_vtabptr_6a_sync_10primitives_6_debug__DebugDaemonMixin = (struct __pyx_vtabstruct_6a_sync_10primitives_6_debug__DebugDaemonMixin*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__DebugDaemonMixin); if (unlikely(!__pyx_vtabptr_6a_sync_10primitives_6_debug__DebugDaemonMixin)) __PYX_ERR(0, 1, __pyx_L1_error)
7902
7906
  __pyx_vtabptr_6a_sync_10primitives_5locks_5event_CythonEvent = &__pyx_vtable_6a_sync_10primitives_5locks_5event_CythonEvent;
7903
7907
  __pyx_vtable_6a_sync_10primitives_5locks_5event_CythonEvent.__pyx_base = *__pyx_vtabptr_6a_sync_10primitives_6_debug__DebugDaemonMixin;
@@ -8010,28 +8014,28 @@ static int __Pyx_modinit_type_import_code(__pyx_mstatetype *__pyx_mstate) {
8010
8014
  /*--- Type import code ---*/
8011
8015
  __pyx_t_1 = PyImport_ImportModule("a_sync.primitives._loggable"); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1, __pyx_L1_error)
8012
8016
  __Pyx_GOTREF(__pyx_t_1);
8013
- __pyx_mstate->__pyx_ptype_6a_sync_10primitives_9_loggable__LoggerMixin = __Pyx_ImportType_3_1_2(__pyx_t_1, "a_sync.primitives._loggable", "_LoggerMixin",
8017
+ __pyx_mstate->__pyx_ptype_6a_sync_10primitives_9_loggable__LoggerMixin = __Pyx_ImportType_3_1_4(__pyx_t_1, "a_sync.primitives._loggable", "_LoggerMixin",
8014
8018
  #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
8015
- sizeof(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin),
8019
+ sizeof(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_4(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin),
8016
8020
  #elif CYTHON_COMPILING_IN_LIMITED_API
8017
- sizeof(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin),
8021
+ sizeof(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_4(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin),
8018
8022
  #else
8019
- sizeof(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin),
8023
+ sizeof(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_4(struct __pyx_obj_6a_sync_10primitives_9_loggable__LoggerMixin),
8020
8024
  #endif
8021
- __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6a_sync_10primitives_9_loggable__LoggerMixin) __PYX_ERR(2, 1, __pyx_L1_error)
8025
+ __Pyx_ImportType_CheckSize_Warn_3_1_4); if (!__pyx_mstate->__pyx_ptype_6a_sync_10primitives_9_loggable__LoggerMixin) __PYX_ERR(2, 1, __pyx_L1_error)
8022
8026
  __pyx_vtabptr_6a_sync_10primitives_9_loggable__LoggerMixin = (struct __pyx_vtabstruct_6a_sync_10primitives_9_loggable__LoggerMixin*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6a_sync_10primitives_9_loggable__LoggerMixin); if (unlikely(!__pyx_vtabptr_6a_sync_10primitives_9_loggable__LoggerMixin)) __PYX_ERR(2, 1, __pyx_L1_error)
8023
8027
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
8024
8028
  __pyx_t_1 = PyImport_ImportModule("a_sync.primitives._debug"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 3, __pyx_L1_error)
8025
8029
  __Pyx_GOTREF(__pyx_t_1);
8026
- __pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__LoopBoundMixin = __Pyx_ImportType_3_1_2(__pyx_t_1, "a_sync.primitives._debug", "_LoopBoundMixin",
8030
+ __pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__LoopBoundMixin = __Pyx_ImportType_3_1_4(__pyx_t_1, "a_sync.primitives._debug", "_LoopBoundMixin",
8027
8031
  #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
8028
- sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin),
8032
+ sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_4(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin),
8029
8033
  #elif CYTHON_COMPILING_IN_LIMITED_API
8030
- sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin),
8034
+ sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_4(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin),
8031
8035
  #else
8032
- sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_2(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin),
8036
+ sizeof(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin), __PYX_GET_STRUCT_ALIGNMENT_3_1_4(struct __pyx_obj_6a_sync_10primitives_6_debug__LoopBoundMixin),
8033
8037
  #endif
8034
- __Pyx_ImportType_CheckSize_Warn_3_1_2); if (!__pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__LoopBoundMixin) __PYX_ERR(3, 3, __pyx_L1_error)
8038
+ __Pyx_ImportType_CheckSize_Warn_3_1_4); if (!__pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__LoopBoundMixin) __PYX_ERR(3, 3, __pyx_L1_error)
8035
8039
  __pyx_vtabptr_6a_sync_10primitives_6_debug__LoopBoundMixin = (struct __pyx_vtabstruct_6a_sync_10primitives_6_debug__LoopBoundMixin*)__Pyx_GetVtable(__pyx_mstate->__pyx_ptype_6a_sync_10primitives_6_debug__LoopBoundMixin); if (unlikely(!__pyx_vtabptr_6a_sync_10primitives_6_debug__LoopBoundMixin)) __PYX_ERR(3, 3, __pyx_L1_error)
8036
8040
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
8037
8041
  __Pyx_RefNannyFinishContext();
@@ -11020,6 +11024,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject
11020
11024
  changed = 1;
11021
11025
  }
11022
11026
  #endif // CYTHON_METH_FASTCALL
11027
+ #if !CYTHON_COMPILING_IN_PYPY
11023
11028
  else if (strcmp(memb->name, "__module__") == 0) {
11024
11029
  PyObject *descr;
11025
11030
  assert(memb->type == T_OBJECT);
@@ -11034,11 +11039,13 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject
11034
11039
  }
11035
11040
  changed = 1;
11036
11041
  }
11042
+ #endif // !CYTHON_COMPILING_IN_PYPY
11037
11043
  }
11038
11044
  memb++;
11039
11045
  }
11040
11046
  }
11041
11047
  #endif // !CYTHON_COMPILING_IN_LIMITED_API
11048
+ #if !CYTHON_COMPILING_IN_PYPY
11042
11049
  slot = spec->slots;
11043
11050
  while (slot && slot->slot && slot->slot != Py_tp_getset)
11044
11051
  slot++;
@@ -11070,6 +11077,7 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject
11070
11077
  ++getset;
11071
11078
  }
11072
11079
  }
11080
+ #endif // !CYTHON_COMPILING_IN_PYPY
11073
11081
  if (changed)
11074
11082
  PyType_Modified(type);
11075
11083
  #endif // PY_VERSION_HEX > 0x030900B1
@@ -11202,7 +11210,7 @@ bad:
11202
11210
  }
11203
11211
 
11204
11212
  /* CommonTypesMetaclass */
11205
- PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) {
11213
+ static PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED void* context) {
11206
11214
  return PyUnicode_FromString(__PYX_ABI_MODULE_NAME);
11207
11215
  }
11208
11216
  static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = {
@@ -11231,6 +11239,7 @@ static int __pyx_CommonTypesMetaclass_init(PyObject *module) {
11231
11239
  return -1;
11232
11240
  }
11233
11241
  mstate->__pyx_CommonTypesMetaclassType = __Pyx_FetchCommonTypeFromSpec(NULL, module, &__pyx_CommonTypesMetaclass_spec, bases);
11242
+ Py_DECREF(bases);
11234
11243
  if (unlikely(mstate->__pyx_CommonTypesMetaclassType == NULL)) {
11235
11244
  return -1;
11236
11245
  }
@@ -11518,7 +11527,7 @@ try_unpack:
11518
11527
  }
11519
11528
 
11520
11529
  /* PyObjectCallMethod1 */
11521
- #if !(CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000)
11530
+ #if !(CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000)))
11522
11531
  static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) {
11523
11532
  PyObject *result = __Pyx_PyObject_CallOneArg(method, arg);
11524
11533
  Py_DECREF(method);
@@ -11526,7 +11535,7 @@ static PyObject* __Pyx__PyObject_CallMethod1(PyObject* method, PyObject* arg) {
11526
11535
  }
11527
11536
  #endif
11528
11537
  static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) {
11529
- #if CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
11538
+ #if CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000))
11530
11539
  PyObject *args[2] = {obj, arg};
11531
11540
  (void) __Pyx_PyObject_GetMethod;
11532
11541
  (void) __Pyx_PyObject_CallOneArg;
@@ -13000,15 +13009,15 @@ static CYTHON_INLINE __Pyx_PySendResult __Pyx_Coroutine_Yield_From(__pyx_Corouti
13000
13009
  }
13001
13010
 
13002
13011
  /* TypeImport */
13003
- #ifndef __PYX_HAVE_RT_ImportType_3_1_2
13004
- #define __PYX_HAVE_RT_ImportType_3_1_2
13005
- static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module_name, const char *class_name,
13006
- size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_2 check_size)
13012
+ #ifndef __PYX_HAVE_RT_ImportType_3_1_4
13013
+ #define __PYX_HAVE_RT_ImportType_3_1_4
13014
+ static PyTypeObject *__Pyx_ImportType_3_1_4(PyObject *module, const char *module_name, const char *class_name,
13015
+ size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_1_4 check_size)
13007
13016
  {
13008
13017
  PyObject *result = 0;
13009
13018
  Py_ssize_t basicsize;
13010
13019
  Py_ssize_t itemsize;
13011
- #if CYTHON_COMPILING_IN_LIMITED_API
13020
+ #ifdef Py_LIMITED_API
13012
13021
  PyObject *py_basicsize;
13013
13022
  PyObject *py_itemsize;
13014
13023
  #endif
@@ -13021,7 +13030,7 @@ static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module
13021
13030
  module_name, class_name);
13022
13031
  goto bad;
13023
13032
  }
13024
- #if !CYTHON_COMPILING_IN_LIMITED_API
13033
+ #ifndef Py_LIMITED_API
13025
13034
  basicsize = ((PyTypeObject *)result)->tp_basicsize;
13026
13035
  itemsize = ((PyTypeObject *)result)->tp_itemsize;
13027
13036
  #else
@@ -13059,7 +13068,7 @@ static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module
13059
13068
  module_name, class_name, size, basicsize+itemsize);
13060
13069
  goto bad;
13061
13070
  }
13062
- if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_2 &&
13071
+ if (check_size == __Pyx_ImportType_CheckSize_Error_3_1_4 &&
13063
13072
  ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) {
13064
13073
  PyErr_Format(PyExc_ValueError,
13065
13074
  "%.200s.%.200s size changed, may indicate binary incompatibility. "
@@ -13067,7 +13076,7 @@ static PyTypeObject *__Pyx_ImportType_3_1_2(PyObject *module, const char *module
13067
13076
  module_name, class_name, size, basicsize, basicsize+itemsize);
13068
13077
  goto bad;
13069
13078
  }
13070
- else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_2 && (size_t)basicsize > size) {
13079
+ else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_1_4 && (size_t)basicsize > size) {
13071
13080
  if (PyErr_WarnFormat(NULL, 0,
13072
13081
  "%.200s.%.200s size changed, may indicate binary incompatibility. "
13073
13082
  "Expected %zd from C header, got %zd from PyObject",
@@ -13104,6 +13113,13 @@ bad:
13104
13113
 
13105
13114
  /* PyObjectCallMethod0 */
13106
13115
  static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name) {
13116
+ #if CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x03090000))
13117
+ PyObject *args[1] = {obj};
13118
+ (void) __Pyx_PyObject_GetMethod;
13119
+ (void) __Pyx_PyObject_CallOneArg;
13120
+ (void) __Pyx_PyObject_CallNoArg;
13121
+ return PyObject_VectorcallMethod(method_name, args, 1 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
13122
+ #else
13107
13123
  PyObject *method = NULL, *result = NULL;
13108
13124
  int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method);
13109
13125
  if (likely(is_method)) {
@@ -13116,6 +13132,7 @@ bad:
13116
13132
  Py_DECREF(method);
13117
13133
  bad:
13118
13134
  return result;
13135
+ #endif
13119
13136
  }
13120
13137
 
13121
13138
  /* ValidateBasesTuple */
@@ -16340,6 +16357,10 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj
16340
16357
  PyCode_NewWithPosOnlyArgs
16341
16358
  #endif
16342
16359
  (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, __pyx_mstate_global->__pyx_empty_bytes);
16360
+ #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030c00A1
16361
+ if (likely(result))
16362
+ result->_co_firsttraceable = 0;
16363
+ #endif
16343
16364
  return result;
16344
16365
  }
16345
16366
  #elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY