Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/n0tan3rd/pyee2
Nodejs EventEmitter3 for python
https://github.com/n0tan3rd/pyee2
asyncio eventemitter eventemitter3 python-3
Last synced: 6 days ago
JSON representation
Nodejs EventEmitter3 for python
- Host: GitHub
- URL: https://github.com/n0tan3rd/pyee2
- Owner: N0taN3rd
- Created: 2018-08-21T19:33:47.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-04-19T16:47:28.000Z (over 5 years ago)
- Last Synced: 2024-04-24T15:18:58.489Z (8 months ago)
- Topics: asyncio, eventemitter, eventemitter3, python-3
- Language: Python
- Size: 18.6 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
pyee2
==========================================================
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)pyee2 is the [primus/eventemitter3](https://github.com/primus/eventemitter3) EventEmitter implementation ported to python with inspiration from [jfhbrook/pyee](https://github.com/jfhbrook/pyee).
pyee2:
- Does not raise or emit an error event when your listener raises an error and no one is listening for the "error" event.
That is to say pyee2 catches all errors raised by event listeners and only emits an error if there are listeners for the "error" event.
- The only time an exception is raised from an "emit" function is if `EventEmitter.raising_emit` is used to emit the event.
- Does not not emit an event when a new listener is added or removed.
- Only supports function or functions that return awaitables (coroutine, future, task) as event listeners.
The test for awaitableness is done via "inspect.isawaitable"```python3
from pyee2 import EventEmitteree = EventEmitter()
@ee.on("event")
def handler(arg, data=3):
print(f"handler called arg={arg} data={data}")ee.emit("event", 1, data=2)
```