1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- =============
- ABC-Backports
- =============
- Usage:
- .. code-block:: python
- try:
- # ABCs live in "collections.abc" in Python >= 3.3
- from collections.abc import Coroutine, Generator
- except ImportError:
- # fall back to import from "backports_abc"
- from backports_abc import Coroutine, Generator
- You can also install the ABCs into the stdlib by calling the ``patch()``
- function:
- .. code-block:: python
- import backports_abc
- backports_abc.patch()
- try:
- # ABCs live in "collections.abc" in Python >= 3.3
- from collections.abc import Coroutine, Generator
- except ImportError:
- # fall back to import from "collections" in Python <= 3.2
- from backports_abc import Coroutine, Generator
- Currently, ``patch()`` provides the following names if missing:
- * ``collections.abc.Generator``
- * ``collections.abc.Awaitable``
- * ``collections.abc.Coroutine``
- * ``inspect.isawaitable(obj)``
- All of them are also available directly from the ``backports_abc``
- module namespace.
- In Python 2.x and Python 3.2, it patches the ``collections`` module
- instead of the ``collections.abc`` module. Any names that are already
- available when importing this module will not be overwritten.
- The names that were previously patched by ``patch()`` can be queried
- through the mapping in ``backports_abc.PATCHED``.
- Changelog
- =========
- 0.5 (2016-11-12)
- ----------------
- * support old-style (mro-missing) classes
- 0.4 (2015-09-14)
- ----------------
- * direct wheel building support
- * make all names available at the module level instead of requiring patching
- 0.3 (2015-07-03)
- ----------------
- * removed patching of ``inspect.iscoroutine()`` as it is not ABC based
- 0.2 (2015-07-03)
- ----------------
- * require explicit ``backports_abc.patch()`` call to do the patching
- (avoids side-effects on import and allows future configuration)
- * provide access to patched names through global ``PATCHED`` dict
- * add ABC based implementations of inspect.iscoroutine() and
- inspect.isawaitable()
- 0.1 (2015-06-24)
- ----------------
- * initial public release
- * provided ABCs: Generator, Coroutine, Awaitable
|