Back to Explore

aio-libs/aiosignal

GitHub
1 watchersOpen source

Last release: 2025-07-03

aiosignal is a Python asyncio helper for managing a list of registered asynchronous callbacks (“signals”). It lets you append callbacks, then freeze the signal to prevent changes, and finally trigger all registered callbacks with await sig.send(data). Useful for coordinating event-style callback behavior in asyncio projects, including examples referenced in aiohttp’s advanced web server documentation.

Project status

  • Maintenance status: Evidence of recent upstream activity (last GitHub push on 2026-06-03), but the most recent tagged update in the provided history is v1.4.0 on 2025-07-03, about 11 months ago, so maintenance looks active in-repo but release cadence is slow.
  • Update cadence: Tagged updates appear irregular, with long gaps (for example, v1.3.2 on 2024-12-13 to v1.4.0 on 2025-07-03), and no new tagged updates since v1.4.0 as of 2026-06-09.

AI summary generated 2026-06-09

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • v1.4.0

    2025-07-03

    Release 1.4.0 adds a decorator-style callback registration mechanism to `Signal`, and improves typing so `Signal` callback parameters can be type checked (via `typing-extensions` for Python < 3.13). The release notes also mention removing the `sphinxcontrib-asyncio` documentation dependency.

    Features
  • v1.3.2

    2024-12-13

    Release v1.3.2 is primarily a support-policy update and a broad modernization of CI and packaging/build tooling. The only runtime code change is the version bump in aiosignal/__init__.py, while most other diffs are documentation, build metadata, and CI dependency/tooling updates.

    Breaking
  • v1.3.1

    2022-11-08

    Release 1.3.1 is described as a PyPI packaging bugfix: removing a stray quote and comma from setup.cfg that prevented publishing. The actual diff from v1.2.0a0 to v1.3.1 shows a broader packaging and CI/tooling modernization beyond that single fix.

    Breaking
  • v1.2.0

    2021-10-16

    Release v1.2.0 updates aiosignal to version 1.2.0 and adds CI and packaging support for Python 3.10. The release notes mention Python 3.10 support and marking the project as Python 3 only, and the code diff shows those changes are primarily packaging metadata and test matrix updates.

    Features
  • v1.2.0a0

    2021-10-16

    Release v1.2.0a0 primarily adds Python 3.10 classifier support and updates CI to include Python 3.10 in the test matrix. The version is bumped to 1.2.0a0 in aiosignal/__init__.py, and changelog metadata is updated accordingly.

    Features
  • v1.1.1

    2020-11-27

    Release v1.1.1 updates aiosignal to advertise the package as typed via addition of the py.typed marker. The release notes only mention type hint support, but the diff also includes multiple CI and documentation configuration changes plus some dependency version bumps in requirements files.

    Features
  • v1.1.0

    2020-11-27

    Release v1.1.0 primarily announces added support for Python 3.8 and 3.9. The diff shows this release also updates package metadata and makes substantial CI and tooling dependency changes. No runtime API changes to aiosignal itself are visible in the provided diff beyond dependency and version constraints.

    Features
  • v1.0.0

    2019-11-11

    This release primarily moves aiosignal from an alpha (1.0.0a0) to a stable 1.0.0 while tightening runtime requirements. The diff shows the supported Python baseline increased and the minimum frozenlist dependency changed accordingly.

    Breaking
  • v1.0.0a0

    2019-08-28

    This is the initial release of the new aiosignal project, published as v1.0.0a0. The release notes indicate the project was extracted from aiohttp, so developers should expect APIs and behavior to reflect aiohttp's prior internal signal implementation.