Version 1.9.0
-------------
Released 2024-11-08
- Drop support for Python 3.8. :pr:`175`
- Remove previously deprecated ``__version__``, ``receiver_connected``,
``Signal.temporarily_connected_to`` and ``WeakNamespace``. :pr:`172`
- Skip weakref signal cleanup if the interpreter is shutting down.
:issue:`173`
Version 1.8.2
-------------
Released 2024-05-06
- Simplify type for ``_async_wrapper`` and ``_sync_wrapper`` arguments.
:pr:`156`
Version 1.8.1
-------------
Released 2024-04-28
- Restore identity handling for ``str`` and ``int`` senders. :pr:`148`
- Fix deprecated ``blinker.base.WeakNamespace`` import. :pr:`149`
- Fix deprecated ``blinker.base.receiver_connected import``. :pr:`153`
- Use types from ``collections.abc`` instead of ``typing``. :pr:`150`
- Fully specify exported types as reported by pyright. :pr:`152`
Version 1.8.0
-------------
Released 2024-04-27
- Deprecate the ``__version__`` attribute. Use feature detection, or
``importlib.metadata.version("blinker")``, instead. :issue:`128`
- Specify that the deprecated ``temporarily_connected_to`` will be removed in
the next version.
- Show a deprecation warning for the deprecated global ``receiver_connected``
signal and specify that it will be removed in the next version.
- Show a deprecation warning for the deprecated ``WeakNamespace`` and specify
that it will be removed in the next version.
- Greatly simplify how the library uses weakrefs. This is a significant change
internally but should not affect any public API. :pr:`144`
- Expose the namespace used by ``signal()`` as ``default_namespace``.
:pr:`145`
Version 1.7.0
-------------
Released 2023-11-01
- Fixed messages printed to standard error about unraisable exceptions during
signal cleanup, typically during interpreter shutdown. :pr:`123`
- Allow the Signal ``set_class`` to be customised, to allow calling of
receivers in registration order. :pr:`116`.
- Drop Python 3.7 and support Python 3.12. :pr:`126`
Version 1.6.3
-------------
Released 2023-09-23
- Fix ``SyncWrapperType`` and ``AsyncWrapperType`` :pr:`108`
- Fixed issue where ``connected_to`` would not disconnect the receiver if an
instance of ``BaseException`` was raised. :pr:`114`
Version 1.6.2
-------------
Released 2023-04-12
- Type annotations are not evaluated at runtime. typing-extensions is not a
runtime dependency. :pr:`94`
Version 1.6.1
-------------
Released 2023-04-09
- Ensure that ``py.typed`` is present in the distributions (to enable other
projects to use Blinker's typing).
- Require typing-extensions > 4.2 to ensure it includes ``ParamSpec``.
:issue:`90`
Version 1.6
-----------
Released 2023-04-02
- Add a ``muted`` context manager to temporarily turn off a signal. :pr:`84`
- ``int`` instances with the same value will be treated as the same sender,
the same as ``str`` instances. :pr:`83`
- Add a ``send_async`` method to allow signals to send to coroutine receivers.
:pr:`76`
- Update and modernise the project structure to match that used by the Pallets
projects. :pr:`77`
- Add an initial set of type hints for the project.
Version 1.5
-----------
Released 2022-07-17
- Support Python >= 3.7 and PyPy. Python 2, Python < 3.7, and Jython
may continue to work, but the next release will make incompatible
changes.
Version 1.4
-----------
Released 2015-07-23
- Verified Python 3.4 support, no changes needed.
- Additional bookkeeping cleanup for non-``ANY`` connections at
disconnect time.
- Added ``Signal._cleanup_bookeeping()`` to prune stale bookkeeping on
demand.
Version 1.3
-----------
Released 2013-07-03
- The global signal stash behind ``signal()`` is now backed by a
regular name-to-``Signal`` dictionary. Previously, weak references
were held in the mapping and ephermal usage in code like
``signal('foo').connect(...)`` could have surprising program
behavior depending on import order of modules.
- ``Namespace`` is now built on a regular dict. Use ``WeakNamespace``
for the older, weak-referencing behavior.
- ``Signal.connect('text-sender')`` uses an alterate hashing strategy
to avoid sharp edges in text identity.
Version 1.2
-----------
Released 2011-10-26
- Added ``Signal.receiver_connected`` and
``Signal.receiver_disconnected`` per-``Signal`` signals.
- Deprecated the global ``receiver_connected`` signal.
- Verified Python 3.2 support, no changes needed.
Version 1.1
-----------
Released 2010-07-21
- Added ``@signal.connect_via(sender)`` decorator
- Added ``signal.connected_to`` shorthand name for the
``temporarily_connected_to`` context manager.
Version 1.0
-----------
Released 2010-03-28
- Python 3.0 and 3.1 compatibility.
Version 0.9
-----------
Released 2010-02-26
- Added ``Signal.temporarily_connected_to`` context manager.
- Docs! Sphinx docs, project web site.
Version 0.8
-----------
Released 2010-02-14
- Initial release.
- Extracted from ``flatland.util.signals``.
- Added Python 2.4 compatibility.
- Added nearly functional Python 3.1 compatibility. Everything except
connecting to instance methods seems to work.
Generated by dwww version 1.16 on Tue Dec 16 05:20:19 CET 2025.