2.0.0
Woah, is that a new major version bump I smell?
What's New?
- Added a simple CLI, primarily for getting the include directory from
meson-python(pyawaitable --include). - Improved performance with compiler optimizations.
- Moved away from function pointer tables for loading PyAwaitable; everything is now vendored upon installation! This means that PyAwaitable is no longer required as a runtime dependency!
- Completely remastered the documentation!
What's Fixed?
- PyAwaitable objects now support garbage collection.
What's Changed?
- The warning emitted when a PyAwaitable object is not awaited is now a
ResourceWarning(was aRuntimeWarning). PyAwaitable_AddAwaitnow raises aValueErrorif the passed object isNULLor self, and also now raises aTypeErrorif the passed object is not a coroutine.
Breaking Changes in 2.0.0
PyAwaitable_prefixes are now required, and the oldpyawaitable_*functions have been removed.PyAwaitable_Initno longer takes a module object.- Renamed
awaitcallbacktoPyAwaitable_Callback - Renamed
awaitcallback_errtoPyAwaitable_Error - Renamed
defercallbacktoPyAwaitable_Defer - Removed the integer value APIs (
SaveIntValues,LoadIntValues,SetIntValue,GetIntValue). They proved to be maintenance heavy, unintuitive, and most of all replaceable with the arbitrary values API (viamallocing an integer and storing it).