42 Commits

Author SHA1 Message Date
dfbda351e4 Add Member.display_name property and update docs/tests 2025-06-10 17:52:01 -06:00
534b5b3980
Refactors interaction response handling for flexibility
Simplifies modal response creation by accepting both structured data objects and raw dictionaries, reducing unnecessary type casting and import dependencies.

Improves text input decorator by auto-generating custom IDs from function names when not explicitly provided.

Enhances example code by properly utilizing parsed Guild objects instead of raw data and fixes modal component registration.
2025-06-10 17:33:54 -06:00
b20f1fd292
Load environment variables from .env file in sharded bot example 2025-06-10 16:49:50 -06:00
6d5b92ad69
Fixes component type checking and import issues
Changes component validation to use the more general ComponentModel instead of ActionRowModel, allowing broader component types to be processed correctly.

Makes reply content parameter optional to improve API flexibility.

Adds missing import for Cog class to prevent runtime errors during cog validation.
2025-06-10 16:44:02 -06:00
60a183742a
Updates Python version requirements and refactors hybrid commands
Lowers minimum Python requirement from 3.11 to 3.10 to increase compatibility while updating CI to use Python 3.13 for testing.

Extracts hybrid command functionality into a separate module to improve code organization and reduce complexity in the main commands module.

Updates test timeouts and dependency versions to ensure reliable test execution and modern package compatibility.
2025-06-10 16:39:12 -06:00
35414c3085
Bump version to 0.1.0rc1 in __init__.py and pyproject.toml v0.1.0rc1 2025-06-10 16:18:14 -06:00
db72e604fb
Add tag format validation step to PyPI publish workflow 2025-06-10 16:11:55 -06:00
81ea79a94d
Refactor: Move permission calculation to Channel model
The _compute_permissions helper function has been simplified by delegating the complex permission calculation logic to a new channel.permissions_for(member) method.

This refactoring encapsulates the permission logic within the Channel model, where it belongs. It removes duplicate and complex code from the command decorator, improving maintainability and separation of concerns.

The tests for requires_permissions have been updated to mock the new permissions_for method, resulting in cleaner tests that are no longer concerned with the internal implementation details of how permissions are calculated.
2025-06-10 16:05:33 -06:00
61222e1df7
Fix target ID assignment in Channel permissions and add guild_id to test Channel class 2025-06-10 16:00:24 -06:00
3d0f26f68f
Merge branch 'master' of https://github.com/Slipstreamm/disagreement 2025-06-10 15:58:15 -06:00
d0ccf39cfb
Add guild property to CommandContext for command invocation context 2025-06-10 15:58:13 -06:00
21cdb921a8
Add TextChannel purge support (#12) 2025-06-10 15:57:00 -06:00
3d5966b0e3
Add member name lookup (#16) 2025-06-10 15:56:11 -06:00
feb806cc05
Add delete method to Message (#21) 2025-06-10 15:56:00 -06:00
e9375a5a36
Implement requires_permissions decorator (#22)
* Add permissions check decorator

* Refactor command decorator and add permission computation logic
2025-06-10 15:54:00 -06:00
1ff56106c9
Implement gateway reconnection backoff (#24) 2025-06-10 15:49:11 -06:00
09fae8a489
Add Webhook.from_url utility (#14) 2025-06-10 15:47:34 -06:00
7f0b03fa69
Add file upload support (#13) 2025-06-10 15:45:25 -06:00
06f972851b
feat: emit raw gateway events (#15) 2025-06-10 15:45:14 -06:00
4c203f6792
Add Member.top_role property (#17) 2025-06-10 15:45:08 -06:00
1c2241c9c4
Add AutoShardedClient with automatic shard count (#18) 2025-06-10 15:45:01 -06:00
0eed122f02
Refactor voice client with audio sources (#19) 2025-06-10 15:44:54 -06:00
15f969c7e6
Add member and ban events (#20) 2025-06-10 15:44:45 -06:00
f9a7895ecb
Extend tasks with scheduling options (#23) 2025-06-10 15:44:35 -06:00
484f091897
Implement channel permissions resolution (#11)
* Add channel permission resolution

* Fix target ID handling in permission overwrite retrieval
2025-06-10 15:43:54 -06:00
c6fb120449
feat: measure gateway latency (#10) 2025-06-10 15:40:16 -06:00
84b4e49c6a
Add extension reload helper (#9)
* Add reload_extension helper

* Removes unused message reaction event handling

Eliminates dead code for message reaction events that were not being processed or utilized by the application.

Cleans up the event dispatcher by removing the unused parser method and event mappings for reaction add/remove events.
2025-06-10 15:37:33 -06:00
29439137ef
Add voice channel joining and playback support (#4) 2025-06-10 00:44:24 -06:00
61e5f1f269
Add parsers for message and reaction events (#5) 2025-06-10 00:42:44 -06:00
eb5908682d
Add Webhook model and update helpers (#6) 2025-06-10 00:42:34 -06:00
8be34bdcbf
Add attachment support to send_message (#7) 2025-06-10 00:42:08 -06:00
ad2db52af7
Add reaction event parsing and dispatch (#8) 2025-06-10 00:41:57 -06:00
2d127c26a2
Add convenience utilities (#3) 2025-06-10 00:22:22 -06:00
a580b9b093
chore: bump version to 0.0.2 in __init__.py and pyproject.toml v0.0.2 2025-06-10 00:05:34 -06:00
8998b01615
Merge branch 'master' of https://github.com/Slipstreamm/disagreement 2025-06-10 00:03:52 -06:00
df4d85c33e
feat: initialize __init__.py for the ext module 2025-06-10 00:03:49 -06:00
458a910191
Update README examples (#2) 2025-06-09 23:31:24 -06:00
b5bef75199
docs: add license info and reformat (#1) 2025-06-09 23:01:59 -06:00
d1475a7101
Update mirror.yml
Some checks failed
Python CI / build (push) Has been cancelled
Mirror to Gitea / mirror (push) Has been cancelled
2025-06-09 22:43:53 -06:00
4812e0939f
Create mirror.yml 2025-06-09 22:42:01 -06:00
3ba728ad22
Create pypi.yml
Some checks failed
Publish to PyPI / build-and-publish (push) Has been cancelled
v0.0.1
2025-06-09 22:30:45 -06:00
7c7cb4137c
Initial commit 2025-06-09 22:25:14 -06:00