Name | buspy JSON |
Version |
0.1.0
JSON |
| download |
home_page | None |
Summary | The BusPy Python Library provides a structured way to work with events within your application. |
upload_time | 2024-08-21 19:14:38 |
maintainer | None |
docs_url | None |
author | Your Name |
requires_python | >=3.8.0 |
license | MIT |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# BusPy Python Library
## Overview
The BusPy Python Library provides a structured way to work with events within your application. It consists of three main components:
1. **EventBus**: Manages event emission and listener registration.
2. **Event**: Represents an event with data and metadata.
3. **EventsCollector**: Collects and manages a list of events.
## Table of Contents
- [Installation](#installation)
- [Usage](#usage)
- [Creating an Event](#creating-an-event)
- [Using EventBus](#using-eventbus)
- [Collecting Events](#collecting-events)
- [Contributing](#contributing)
- [License](#license)
## Installation
You can install this library using pip:
```bash
pip install buspy
```
You can also use [poetry](https://python-poetry.org/):
```bash
poetry add buspy
```
## Usage
### Creating an Event
First, you need to import the `Event` class and create an event instance:
The Event class can be instantiated or inherited, but it does not support code extension within the same class.
```python
from buspy import Event
#create a generic event
event = Event(data={"key": "value"}, metadata={"source": "example"})
#define a custom event
class UserEvent(Event):
pass
#define a custom event
class CreatedUserEvent(UserEvent):
pass
user_event = UserEvent(data={"id": "123456"})
created_user_event = CreatedUserEvent(data={"id": "123456"})
print(event)
print(user_event)
print(created_user_event)
```
Result:
```bash
Event:
data = {'key': 'value'}
event_id = f9fa5ee8-d4f9-4240-b73b-031dae0092bc
created_at = 2024-08-12T18:57:16.642223+00:00
metadata = {'source': 'example'}
source = file.py:4
Event.UserEvent:
data = {'id': '123456'}
event_id = 36a28674-46e4-4aab-8e13-8106d79ae865
created_at = 2024-08-12T18:57:16.642451+00:00
metadata = None
source = file.py:15
Event.UserEvent.CreatedUserEvent:
data = {'id': '123456'}
event_id = 1ddd0af3-9fcb-4eb0-98fb-b42b118d35f3
created_at = 2024-08-12T18:57:16.642479+00:00
metadata = None
source = file.py:16
```
to_dict() and to_json() are also supported for passing events.
```python
from buspy import Event
#define a custom event "UserEvent"
class UserEvent(Event):
pass
#define a custom event "CreatedUserEvent"
class CreatedUserEvent(UserEvent):
pass
created_user_event = CreatedUserEvent(data={"id": "123456"})
print("dict:")
print(created_user_event.to_dict())
print()
print("json:")
print(created_user_event.to_json())
```
Result:
```bash
dict:
{'event_name': 'Event.UserEvent.CreatedUserEvent', 'data': {'id': '123456'}, 'event_id': '742c38fa-51e1-4eb8-879b-9dfe4d07de0a', 'created_at': '2024-08-12T19:02:13.542163+00:00', 'metadata': None}
json:
{
"event_name": "Event.UserEvent.CreatedUserEvent",
"data": {
"id": "123456"
},
"event_id": "742c38fa-51e1-4eb8-879b-9dfe4d07de0a",
"created_at": "2024-08-12T19:02:13.542163+00:00",
"metadata": null
}
```
### Collecting Events
To collect and manage events, use the `EventsCollector` class:
```python
from buspy import EventsCollector, Event, EventBus
# Initialize EventsCollector
collector = EventsCollector()
#define a custom event "UserEvent"
class UserEvent(Event):
pass
#define a custom event "CreatedUserEvent"
class CreatedUserEvent(UserEvent):
pass
# Create an event
user_event = UserEvent(data={"key": "value"}, metadata={"source": "example"})
created_user_event1 = CreatedUserEvent(data={"id": 123456}, metadata={"source": "example"})
created_user_event2 = CreatedUserEvent(data={"id": 789123}, metadata={"source": "example"})
# Add event to collector
collector.add_event(user_event)
collector.add_event(created_user_event1)
collector.add_event(created_user_event2)
# Retrieve all events
events = collector.pull_all_events()
print("First print:")
print(events)
print()
print("Second print:")
for event in collector:
print(event)
print()
print("Therty print:")
print(collector[0])
```
Result:
```bash
First print:
[UserEvent(data = {'key': 'value'}, metadata = {'source': 'example'}), CreatedUserEvent(data = {'id': 123456}, metadata = {'source': 'example'}), CreatedUserEvent(data = {'id': 789123}, metadata = {'source': 'example'})]
Second print:
Event.UserEvent:
data = {'key': 'value'}
event_id = af4e1637-b145-4da7-a92b-53d8306ec22d
created_at = 2024-08-12T19:09:44.386102+00:00
metadata = {'source': 'example'}
source = prueba.py:15
Event.UserEvent.CreatedUserEvent:
data = {'id': 123456}
event_id = 65dc0b38-4990-4b96-b532-8d46bdc472d5
created_at = 2024-08-12T19:09:44.386322+00:00
metadata = {'source': 'example'}
source = prueba.py:17
Event.UserEvent.CreatedUserEvent:
data = {'id': 789123}
event_id = 283a4b51-4894-42ec-95d7-2365ee67e06e
created_at = 2024-08-12T19:09:44.386351+00:00
metadata = {'source': 'example'}
source = prueba.py:19
Therty print:
Event.UserEvent:
data = {'key': 'value'}
event_id = af4e1637-b145-4da7-a92b-53d8306ec22d
created_at = 2024-08-12T19:09:44.386102+00:00
metadata = {'source': 'example'}
source = prueba.py:15
```
### Using EventBus
To manage and emit events, use the `EventBus` class:
```python
from buspy import EventBus, EventsCollector, Event
class UserEvent(Event):
pass
class CreatedUserEvent(UserEvent):
pass
event_bus = EventBus()
def handler_all_event(event: Event) -> None:
print("Print from handler_all_event")
print(event)
def handler_user_event(event: Event) -> None:
print("Print from handler_user_event")
print(event)
def handler_created_user_event(event: Event) -> None:
print("Print from handler_created_user_event")
print(event)
event_bus.add_listener(handler=handler_all_event, event=Event())
event_bus.add_listener(handler=handler_user_event, event=UserEvent())
event_bus.add_listener(handler=handler_created_user_event, event=CreatedUserEvent())
print()
print("Print Emit Event")
event_bus.emit(Event(data={"demo_event": 1}))
event_bus.emit(UserEvent(data={"demo_user_event": 1}))
event_bus.emit(CreatedUserEvent(data={"demo_created_user_event": 1}))
collector = EventsCollector()
collector.add_event(Event(data={"demo_event": 1}))
collector.add_event(UserEvent(data={"demo_user_event": 1}))
collector.add_event(CreatedUserEvent(data={"demo_created_user_event": 1}))
print()
print("Print Emit Collector")
event_bus.emit(collector)
print()
print("Print Event Names")
print(event_bus.event_names())
print()
print("Print Listeners")
print(event_bus.listeners(event=CreatedUserEvent()))
print()
print("Print Summary")
print(event_bus.summary())
```
Result:
```bash
Print Emit Event
Print from handler_all_event
Event:
data = {'demo_event': 1}
event_id = 9f260a1e-b999-484d-b1ec-6b77a7136128
created_at = 2024-08-12T19:30:40.492722+00:00
metadata = None
source = file.py:29
Print from handler_all_event
Event.UserEvent:
data = {'demo_user_event': 1}
event_id = 926679fd-e19a-4b8a-8baf-92b0291c71e2
created_at = 2024-08-12T19:30:40.492770+00:00
metadata = None
source = file.py:30
Print from handler_user_event
Event.UserEvent:
data = {'demo_user_event': 1}
event_id = 926679fd-e19a-4b8a-8baf-92b0291c71e2
created_at = 2024-08-12T19:30:40.492770+00:00
metadata = None
source = file.py:30
Print from handler_all_event
Event.UserEvent.CreatedUserEvent:
data = {'demo_created_user_event': 1}
event_id = 931e4b6a-17da-4dc3-aff0-05b97362639f
created_at = 2024-08-12T19:30:40.492826+00:00
metadata = None
source = file.py:31
Print from handler_user_event
Event.UserEvent.CreatedUserEvent:
data = {'demo_created_user_event': 1}
event_id = 931e4b6a-17da-4dc3-aff0-05b97362639f
created_at = 2024-08-12T19:30:40.492826+00:00
metadata = None
source = file.py:31
Print from handler_created_user_event
Event.UserEvent.CreatedUserEvent:
data = {'demo_created_user_event': 1}
event_id = 931e4b6a-17da-4dc3-aff0-05b97362639f
created_at = 2024-08-12T19:30:40.492826+00:00
metadata = None
source = file.py:31
Print Emit Collector
Print from handler_all_event
Event:
data = {'demo_event': 1}
event_id = 157dfcb9-fd84-4491-b2f4-a055ebd6e687
created_at = 2024-08-12T19:30:40.492893+00:00
metadata = None
source = file.py:34
Print from handler_all_event
Event.UserEvent:
data = {'demo_user_event': 1}
event_id = bf40106c-922f-4de1-9632-f02c2baa6809
created_at = 2024-08-12T19:30:40.492911+00:00
metadata = None
source = file.py:35
Print from handler_user_event
Event.UserEvent:
data = {'demo_user_event': 1}
event_id = bf40106c-922f-4de1-9632-f02c2baa6809
created_at = 2024-08-12T19:30:40.492911+00:00
metadata = None
source = file.py:35
Print from handler_all_event
Event.UserEvent.CreatedUserEvent:
data = {'demo_created_user_event': 1}
event_id = 5a4ed322-3d35-48bb-bc84-cb3837bc1fae
created_at = 2024-08-12T19:30:40.492928+00:00
metadata = None
source = file.py:36
Print from handler_user_event
Event.UserEvent.CreatedUserEvent:
data = {'demo_created_user_event': 1}
event_id = 5a4ed322-3d35-48bb-bc84-cb3837bc1fae
created_at = 2024-08-12T19:30:40.492928+00:00
metadata = None
source = file.py:36
Print from handler_created_user_event
Event.UserEvent.CreatedUserEvent:
data = {'demo_created_user_event': 1}
event_id = 5a4ed322-3d35-48bb-bc84-cb3837bc1fae
created_at = 2024-08-12T19:30:40.492928+00:00
metadata = None
source = file.py:36
Print Event Names
{'Event.UserEvent', 'Event.UserEvent.CreatedUserEvent', 'Event'}
Print Listeners
{'Event.UserEvent.CreatedUserEvent': ['handler_created_user_event: file.py:19']}
Print Summary
[
{
"Event.UserEvent": [
"handler_user_event: file.py:15"
]
},
{
"Event.UserEvent.CreatedUserEvent": [
"handler_created_user_event: file.py:19"
]
},
{
"Event": [
"handler_all_event: file.py:11"
]
}
]
```
## Contributing
Contributions are welcome! Please open an issue or submit a pull request to improve the library.
Raw data
{
"_id": null,
"home_page": null,
"name": "buspy",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8.0",
"maintainer_email": null,
"keywords": null,
"author": "Your Name",
"author_email": "you@example.com",
"download_url": "https://files.pythonhosted.org/packages/24/80/0de1b1cee734fa4df0d3b43ff386d58e16e934efc5a407db205c2add1a68/buspy-0.1.0.tar.gz",
"platform": null,
"description": "# BusPy Python Library\n\n## Overview\nThe BusPy Python Library provides a structured way to work with events within your application. It consists of three main components:\n\n1. **EventBus**: Manages event emission and listener registration.\n2. **Event**: Represents an event with data and metadata.\n3. **EventsCollector**: Collects and manages a list of events.\n\n## Table of Contents\n- [Installation](#installation)\n- [Usage](#usage)\n - [Creating an Event](#creating-an-event)\n - [Using EventBus](#using-eventbus)\n - [Collecting Events](#collecting-events)\n- [Contributing](#contributing)\n- [License](#license)\n\n## Installation\nYou can install this library using pip:\n```bash\npip install buspy\n```\nYou can also use [poetry](https://python-poetry.org/):\n```bash\npoetry add buspy\n```\n\n## Usage\n\n### Creating an Event\n\nFirst, you need to import the `Event` class and create an event instance:\nThe Event class can be instantiated or inherited, but it does not support code extension within the same class.\n\n```python\nfrom buspy import Event\n\n#create a generic event\nevent = Event(data={\"key\": \"value\"}, metadata={\"source\": \"example\"})\n\n#define a custom event\nclass UserEvent(Event):\n pass\n\n#define a custom event\nclass CreatedUserEvent(UserEvent):\n pass\n\nuser_event = UserEvent(data={\"id\": \"123456\"})\ncreated_user_event = CreatedUserEvent(data={\"id\": \"123456\"})\n\nprint(event)\nprint(user_event)\nprint(created_user_event)\n```\nResult:\n```bash\nEvent:\n data = {'key': 'value'}\n event_id = f9fa5ee8-d4f9-4240-b73b-031dae0092bc\n created_at = 2024-08-12T18:57:16.642223+00:00\n metadata = {'source': 'example'}\n source = file.py:4\n\nEvent.UserEvent:\n data = {'id': '123456'}\n event_id = 36a28674-46e4-4aab-8e13-8106d79ae865\n created_at = 2024-08-12T18:57:16.642451+00:00\n metadata = None\n source = file.py:15\n\nEvent.UserEvent.CreatedUserEvent:\n data = {'id': '123456'}\n event_id = 1ddd0af3-9fcb-4eb0-98fb-b42b118d35f3\n created_at = 2024-08-12T18:57:16.642479+00:00\n metadata = None\n source = file.py:16\n\n```\n\nto_dict() and to_json() are also supported for passing events.\n\n```python\nfrom buspy import Event\n\n#define a custom event \"UserEvent\"\nclass UserEvent(Event):\n pass\n\n#define a custom event \"CreatedUserEvent\"\nclass CreatedUserEvent(UserEvent):\n pass\n\ncreated_user_event = CreatedUserEvent(data={\"id\": \"123456\"})\n\nprint(\"dict:\")\nprint(created_user_event.to_dict())\nprint()\nprint(\"json:\")\nprint(created_user_event.to_json())\n```\nResult:\n```bash\ndict:\n{'event_name': 'Event.UserEvent.CreatedUserEvent', 'data': {'id': '123456'}, 'event_id': '742c38fa-51e1-4eb8-879b-9dfe4d07de0a', 'created_at': '2024-08-12T19:02:13.542163+00:00', 'metadata': None}\n\njson:\n{\n \"event_name\": \"Event.UserEvent.CreatedUserEvent\",\n \"data\": {\n \"id\": \"123456\"\n },\n \"event_id\": \"742c38fa-51e1-4eb8-879b-9dfe4d07de0a\",\n \"created_at\": \"2024-08-12T19:02:13.542163+00:00\",\n \"metadata\": null\n}\n```\n\n### Collecting Events\n\nTo collect and manage events, use the `EventsCollector` class:\n```python\nfrom buspy import EventsCollector, Event, EventBus\n\n# Initialize EventsCollector\ncollector = EventsCollector()\n\n#define a custom event \"UserEvent\"\nclass UserEvent(Event):\n pass\n\n#define a custom event \"CreatedUserEvent\"\nclass CreatedUserEvent(UserEvent):\n pass\n\n# Create an event\nuser_event = UserEvent(data={\"key\": \"value\"}, metadata={\"source\": \"example\"})\n\ncreated_user_event1 = CreatedUserEvent(data={\"id\": 123456}, metadata={\"source\": \"example\"})\n\ncreated_user_event2 = CreatedUserEvent(data={\"id\": 789123}, metadata={\"source\": \"example\"})\n\n\n# Add event to collector\ncollector.add_event(user_event)\ncollector.add_event(created_user_event1)\ncollector.add_event(created_user_event2)\n\n# Retrieve all events\nevents = collector.pull_all_events()\nprint(\"First print:\")\nprint(events)\n\nprint()\nprint(\"Second print:\")\nfor event in collector:\n print(event)\n\nprint()\nprint(\"Therty print:\")\nprint(collector[0])\n```\nResult:\n```bash\nFirst print:\n[UserEvent(data = {'key': 'value'}, metadata = {'source': 'example'}), CreatedUserEvent(data = {'id': 123456}, metadata = {'source': 'example'}), CreatedUserEvent(data = {'id': 789123}, metadata = {'source': 'example'})]\n\nSecond print:\nEvent.UserEvent:\n data = {'key': 'value'}\n event_id = af4e1637-b145-4da7-a92b-53d8306ec22d\n created_at = 2024-08-12T19:09:44.386102+00:00\n metadata = {'source': 'example'}\n source = prueba.py:15\n\nEvent.UserEvent.CreatedUserEvent:\n data = {'id': 123456}\n event_id = 65dc0b38-4990-4b96-b532-8d46bdc472d5\n created_at = 2024-08-12T19:09:44.386322+00:00\n metadata = {'source': 'example'}\n source = prueba.py:17\n\nEvent.UserEvent.CreatedUserEvent:\n data = {'id': 789123}\n event_id = 283a4b51-4894-42ec-95d7-2365ee67e06e\n created_at = 2024-08-12T19:09:44.386351+00:00\n metadata = {'source': 'example'}\n source = prueba.py:19\n\n\nTherty print:\nEvent.UserEvent:\n data = {'key': 'value'}\n event_id = af4e1637-b145-4da7-a92b-53d8306ec22d\n created_at = 2024-08-12T19:09:44.386102+00:00\n metadata = {'source': 'example'}\n source = prueba.py:15\n```\n\n### Using EventBus\n\nTo manage and emit events, use the `EventBus` class:\n\n```python\nfrom buspy import EventBus, EventsCollector, Event\n\nclass UserEvent(Event):\n pass\n\nclass CreatedUserEvent(UserEvent):\n pass\n\nevent_bus = EventBus()\n\ndef handler_all_event(event: Event) -> None:\n print(\"Print from handler_all_event\")\n print(event)\n\ndef handler_user_event(event: Event) -> None:\n print(\"Print from handler_user_event\")\n print(event)\n\ndef handler_created_user_event(event: Event) -> None:\n print(\"Print from handler_created_user_event\")\n print(event)\n\nevent_bus.add_listener(handler=handler_all_event, event=Event())\nevent_bus.add_listener(handler=handler_user_event, event=UserEvent())\nevent_bus.add_listener(handler=handler_created_user_event, event=CreatedUserEvent())\n\nprint()\nprint(\"Print Emit Event\")\nevent_bus.emit(Event(data={\"demo_event\": 1}))\nevent_bus.emit(UserEvent(data={\"demo_user_event\": 1}))\nevent_bus.emit(CreatedUserEvent(data={\"demo_created_user_event\": 1}))\n\ncollector = EventsCollector()\ncollector.add_event(Event(data={\"demo_event\": 1}))\ncollector.add_event(UserEvent(data={\"demo_user_event\": 1}))\ncollector.add_event(CreatedUserEvent(data={\"demo_created_user_event\": 1}))\n\nprint()\nprint(\"Print Emit Collector\")\nevent_bus.emit(collector)\n\nprint()\nprint(\"Print Event Names\")\nprint(event_bus.event_names())\n\nprint()\nprint(\"Print Listeners\")\nprint(event_bus.listeners(event=CreatedUserEvent()))\n\nprint()\nprint(\"Print Summary\")\nprint(event_bus.summary())\n```\nResult:\n```bash\nPrint Emit Event\nPrint from handler_all_event\nEvent:\n data = {'demo_event': 1}\n event_id = 9f260a1e-b999-484d-b1ec-6b77a7136128\n created_at = 2024-08-12T19:30:40.492722+00:00\n metadata = None\n source = file.py:29\n\nPrint from handler_all_event\nEvent.UserEvent:\n data = {'demo_user_event': 1}\n event_id = 926679fd-e19a-4b8a-8baf-92b0291c71e2\n created_at = 2024-08-12T19:30:40.492770+00:00\n metadata = None\n source = file.py:30\n\nPrint from handler_user_event\nEvent.UserEvent:\n data = {'demo_user_event': 1}\n event_id = 926679fd-e19a-4b8a-8baf-92b0291c71e2\n created_at = 2024-08-12T19:30:40.492770+00:00\n metadata = None\n source = file.py:30\n\nPrint from handler_all_event\nEvent.UserEvent.CreatedUserEvent:\n data = {'demo_created_user_event': 1}\n event_id = 931e4b6a-17da-4dc3-aff0-05b97362639f\n created_at = 2024-08-12T19:30:40.492826+00:00\n metadata = None\n source = file.py:31\n\nPrint from handler_user_event\nEvent.UserEvent.CreatedUserEvent:\n data = {'demo_created_user_event': 1}\n event_id = 931e4b6a-17da-4dc3-aff0-05b97362639f\n created_at = 2024-08-12T19:30:40.492826+00:00\n metadata = None\n source = file.py:31\n\nPrint from handler_created_user_event\nEvent.UserEvent.CreatedUserEvent:\n data = {'demo_created_user_event': 1}\n event_id = 931e4b6a-17da-4dc3-aff0-05b97362639f\n created_at = 2024-08-12T19:30:40.492826+00:00\n metadata = None\n source = file.py:31\n\n\nPrint Emit Collector\nPrint from handler_all_event\nEvent:\n data = {'demo_event': 1}\n event_id = 157dfcb9-fd84-4491-b2f4-a055ebd6e687\n created_at = 2024-08-12T19:30:40.492893+00:00\n metadata = None\n source = file.py:34\n\nPrint from handler_all_event\nEvent.UserEvent:\n data = {'demo_user_event': 1}\n event_id = bf40106c-922f-4de1-9632-f02c2baa6809\n created_at = 2024-08-12T19:30:40.492911+00:00\n metadata = None\n source = file.py:35\n\nPrint from handler_user_event\nEvent.UserEvent:\n data = {'demo_user_event': 1}\n event_id = bf40106c-922f-4de1-9632-f02c2baa6809\n created_at = 2024-08-12T19:30:40.492911+00:00\n metadata = None\n source = file.py:35\n\nPrint from handler_all_event\nEvent.UserEvent.CreatedUserEvent:\n data = {'demo_created_user_event': 1}\n event_id = 5a4ed322-3d35-48bb-bc84-cb3837bc1fae\n created_at = 2024-08-12T19:30:40.492928+00:00\n metadata = None\n source = file.py:36\n\nPrint from handler_user_event\nEvent.UserEvent.CreatedUserEvent:\n data = {'demo_created_user_event': 1}\n event_id = 5a4ed322-3d35-48bb-bc84-cb3837bc1fae\n created_at = 2024-08-12T19:30:40.492928+00:00\n metadata = None\n source = file.py:36\n\nPrint from handler_created_user_event\nEvent.UserEvent.CreatedUserEvent:\n data = {'demo_created_user_event': 1}\n event_id = 5a4ed322-3d35-48bb-bc84-cb3837bc1fae\n created_at = 2024-08-12T19:30:40.492928+00:00\n metadata = None\n source = file.py:36\n\n\nPrint Event Names\n{'Event.UserEvent', 'Event.UserEvent.CreatedUserEvent', 'Event'}\n\nPrint Listeners\n{'Event.UserEvent.CreatedUserEvent': ['handler_created_user_event: file.py:19']}\n\nPrint Summary\n[\n {\n \"Event.UserEvent\": [\n \"handler_user_event: file.py:15\"\n ]\n },\n {\n \"Event.UserEvent.CreatedUserEvent\": [\n \"handler_created_user_event: file.py:19\"\n ]\n },\n {\n \"Event\": [\n \"handler_all_event: file.py:11\"\n ]\n }\n]\n```\n\n## Contributing\nContributions are welcome! Please open an issue or submit a pull request to improve the library.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "The BusPy Python Library provides a structured way to work with events within your application.",
"version": "0.1.0",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c7d55710b83590f881e5d3b8adb05814c2911294463be3bd38cdb90708e91f76",
"md5": "7363340caf3ffa676c4c7281b6857641",
"sha256": "e49e5299367c9f5539ef33733f95a5430b751bba42f979c6d99071c8be18ec7f"
},
"downloads": -1,
"filename": "buspy-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7363340caf3ffa676c4c7281b6857641",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8.0",
"size": 9054,
"upload_time": "2024-08-21T19:14:37",
"upload_time_iso_8601": "2024-08-21T19:14:37.185866Z",
"url": "https://files.pythonhosted.org/packages/c7/d5/5710b83590f881e5d3b8adb05814c2911294463be3bd38cdb90708e91f76/buspy-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "24800de1b1cee734fa4df0d3b43ff386d58e16e934efc5a407db205c2add1a68",
"md5": "768cfd78f9e483053a15cfa266ffcfd3",
"sha256": "95591ad24c863ab8ba425ad41eda44abae4898fb03e4f3b681bed55609f16262"
},
"downloads": -1,
"filename": "buspy-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "768cfd78f9e483053a15cfa266ffcfd3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8.0",
"size": 9365,
"upload_time": "2024-08-21T19:14:38",
"upload_time_iso_8601": "2024-08-21T19:14:38.327866Z",
"url": "https://files.pythonhosted.org/packages/24/80/0de1b1cee734fa4df0d3b43ff386d58e16e934efc5a407db205c2add1a68/buspy-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-21 19:14:38",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "buspy"
}