skillfed

aiosignal

aiosignal: a list of registered asynchronous callbacks

aiosignal Permissive license Apache 2.0 Active 165 v1.4.0 released

Install

aiosignal on PyPI

pip

pip install aiosignal

uv

uv add aiosignal

poetry

poetry add aiosignal

Package facts

License Apache 2.0 (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 2 — frozenlist, typing-extensions
Maintenance actively maintained — 406 days since the last release
Last repo commit
First released
Popularity one of the 100 most-downloaded packages on PyPI (30-day window, as of 2026-08-13)
Known vulnerabilities none known (OSV.dev, checked 2026-08-13)

Evidence: aiosignal-1.4.0-py3-none-any.whl

Development Status :: 5 - Production/StableFramework :: AsyncIOIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: Only

About aiosignal

from the package's own PyPI description — quoted content, verbatim

========= aiosignal =========

.. image:: https://github.com/aio-libs/aiosignal/workflows/CI/badge.svg :target: https://github.com/aio-libs/aiosignal/actions?query=workflow%3ACI :alt: GitHub status for master branch

.. image:: https://codecov.io/gh/aio-libs/aiosignal/branch/master/graph/badge.svg?flag=pytest :target: https://codecov.io/gh/aio-libs/aiosignal?flags[0]=pytest :alt: codecov.io status for master branch

.. image:: https://badge.fury.io/py/aiosignal.svg :target: https://pypi.org/project/aiosignal :alt: Latest PyPI package version

.. image:: https://readthedocs.org/projects/aiosignal/badge/?version=latest :target: https://aiosignal.readthedocs.io/ :alt: Latest Read The Docs

.. image:: https://img.shields.io/discourse/topics?server=https%3A%2F%2Faio-libs.discourse.group%2F :target: https://aio-libs.discourse.group/ :alt: Discourse group for io-libs

.. image:: https://badges.gitter.im/Join%20Chat.svg :target: https://gitter.im/aio-libs/Lobby :alt: Chat on Gitter

Introduction

A project to manage callbacks in asyncio projects.

Signal is a list of registered asynchronous callbacks.

The signal's life-cycle has...

Read as markdown · JSON record · Source repository · Homepage · Docs

AI interpretation — verify before relying

AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page

Provides a signal/callback system for asyncio applications, allowing you to register and invoke asynchronous callbacks in a managed, freezable list.

Minimal friction: pure Python wheel with only two lightweight runtime dependencies (frozenlist and typing-extensions), active maintenance with a recent release in July 2025.

Apache 2.0 permissive license allows commercial and private use with minimal restrictions; you must retain license notices in distributions.

Usage

pip install aiosignal

import asyncio
from aiosignal import Signal

async def callback(data):
    print(f"Received: {data}")

async def main():
    sig = Signal()
    sig.append(callback)
    sig.freeze()
    await sig.send("hello")

asyncio.run(main())

Requires Python 3.9 or later.

Verdict: A stable, well-maintained asyncio signal library with no known vulnerabilities, low install friction, and permissive licensing. Suitable for projects needing managed callback dispatch in async contexts.

Needs verification

  • Whether the package is actively used in production systems beyond the aio-libs ecosystem.
  • Performance characteristics under high callback volume or concurrent signal sends.
asyncio callback managementasync signal dispatcherasyncio event systemasync callback registryasyncio signal handlingasync event emitterasyncio observer pattern

Similar packages