144 Commits

Author SHA1 Message Date
dbdab08c7a
Update pyproject.toml v0.4.2 2025-06-12 21:28:42 -06:00
a3568f1287
Update __init__.py 2025-06-12 21:28:29 -06:00
c146b01cec
fix: declare public exports (#75) 2025-06-12 21:27:37 -06:00
c87bcefd41
Add moderation bot example (#74) 2025-06-12 13:39:13 -06:00
8e48da3bee
Add async context manager to VoiceClient (#67)
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
2025-06-11 18:24:22 -06:00
def2ff0183
Add Message.jump_url helper (#68)
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
2025-06-11 18:24:20 -06:00
7c7bebc95a
Add listener helpers (#69)
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
2025-06-11 18:24:18 -06:00
e693f00abe
Add VoiceStateUpdate event (#70)
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
2025-06-11 18:24:16 -06:00
c099466024
Add guild listing methods (#71)
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
2025-06-11 18:24:14 -06:00
235ea8fc69
Add get_or_fetch cache helper and tests (#72) 2025-06-11 18:24:11 -06:00
0a3f680e7f
Add AllowedMentions helpers and update docs (#73)
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
2025-06-11 18:24:09 -06:00
96cd3f1714
Add HybridContext and RateLimiter docs to mkdocs nav (#66)
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
2025-06-11 17:35:54 -06:00
d437a315ef
bump version to 0.4.1 in __init__.py and pyproject.toml v0.4.1 2025-06-11 17:35:15 -06:00
286862ebaf
docs: add Documentation URL to project metadata 2025-06-11 17:33:36 -06:00
e39f701f33
bump version to 0.4.0 in __init__.py and pyproject.toml v0.4.0 2025-06-11 17:30:34 -06:00
c4c27bc0d3
Update and fix docs.yml workflow 2025-06-11 17:23:41 -06:00
a13cf1e4f8
docs: sync with codebase (#65)
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
2025-06-11 17:09:23 -06:00
ce670245c4
chore: remove unnecessary comments (#64) 2025-06-11 16:51:15 -06:00
e199d5494b
Update typing command response for clarity in typing indicator example 2025-06-11 16:23:56 -06:00
b97d52a365
Rename typing command from 'typing_test' to 'typing' for clarity 2025-06-11 16:16:28 -06:00
9dd9cc7e2b
Add typing indicator example bot using Disagreement library 2025-06-11 16:15:59 -06:00
5db4d40076
ci: run Python workflow only when relevant files change
Limit GitHub Actions workflow triggers to changes in .py files,
requirements.txt, setup.py, or pyproject.toml to avoid unnecessary builds.
2025-06-11 16:08:25 -06:00
79642a48da
Adds automated MkDocs deployment workflow
Enables automatic documentation deployment to GitHub Pages when documentation files are modified on the master branch.

Triggers on changes to docs directory or mkdocs.yml configuration file to ensure documentation stays current with code changes.
2025-06-11 16:07:12 -06:00
6bcde9c5b0
Improves reactions documentation with examples and events
Expands the reactions guide to include practical examples for adding reactions via message objects, demonstrates low-level client methods, and adds comprehensive event handling examples.

Shows how to listen for reaction add/remove events with proper type hints and user filtering to ignore bot reactions.
2025-06-11 16:05:35 -06:00
64576203ae
Adds comprehensive documentation with MkDocs setup
Establishes initial documentation structure including introduction guide,
API reference navigation, and MkDocs configuration with Material theme.

Provides complete setup instructions, usage examples, and feature overview
to help users get started with the Discord bot library.
2025-06-11 15:58:25 -06:00
071e01cd87
Simplifies latency property getter logic
Refactors the conditional check to use getattr with a default value,
reducing code complexity while maintaining the same functionality
2025-06-11 15:33:58 -06:00
592653cccd
Improves latency calculation precision and safety
Adds null check to prevent errors when latency is unavailable and rounds the returned value to 2 decimal places for consistent precision across the application.
2025-06-11 15:21:05 -06:00
9d8fd83497
Fix: Remove unnecessary type ignore comment for latency in ping command 2025-06-11 15:14:14 -06:00
3c638d17ce
Adds latency display and improves bot configuration
Adds millisecond latency property to gateway and client for more precise monitoring.

Enhances ping command to display gateway latency for better debugging.

Configures message content intent and mention replies for improved bot functionality.

Adds dotenv support for cleaner environment variable management.

Formats error classes for better code consistency and readability.
2025-06-11 15:13:37 -06:00
a702c66603
Merge branch 'master' of https://github.com/Slipstreamm/disagreement 2025-06-11 14:52:49 -06:00
aec0de3e58
Fix: Ensure newline at end of file in MemberCacheFlags and add __init__.py 2025-06-11 14:50:01 -06:00
66288ba920
Adds comprehensive Discord API error code mapping
Implements specific exception classes for all Discord API error codes to provide more granular error handling and better debugging experience.

Creates individual exception classes for each Discord error code (10001-520006) with descriptive names and documentation strings that include the official error messages and codes.

Updates HTTP client to automatically map Discord error codes to their corresponding exception classes, allowing developers to catch specific error types rather than generic HTTP exceptions.

Includes comprehensive test coverage for the new error code mapping functionality to ensure correct exception raising based on API responses.
2025-06-11 14:47:23 -06:00
15d95bc786
Use asyncio.get_running_loop fallback (#50) 2025-06-11 14:27:11 -06:00
3158d76e90
Document dotenv requirement and add optional handling (#51) 2025-06-11 14:27:09 -06:00
dd6cf9ad9e
Fix README code block and format code (#52) 2025-06-11 14:27:06 -06:00
6fd1f93bab
Add default allowed_mentions option (#53) 2025-06-11 14:27:03 -06:00
d4bf99eac6
Add embed helper methods and docs (#54) 2025-06-11 14:27:01 -06:00
cfb8bedeaf
Add volume and options support to audio (#55) 2025-06-11 14:26:58 -06:00
35eb459c36
Add clean_content property and tests (#56) 2025-06-11 14:26:55 -06:00
64dec9b3f5
Add Messageable mixin for channel messaging (#57) 2025-06-11 14:26:53 -06:00
6d55a2ca98
Add Greedy converter and support in parser (#58) 2025-06-11 14:26:51 -06:00
afeb86a395
Add guild widget support (#59) 2025-06-11 14:26:49 -06:00
39162b6543
feat: add Activity presence models (#60) 2025-06-11 14:26:47 -06:00
c47a7e49f8
Add LRU support to Cache and message cache size option (#61) 2025-06-11 14:26:44 -06:00
07daf78ef4
Add AutoArchiveDuration enum and update thread APIs (#62) 2025-06-11 14:26:41 -06:00
73416858ae
chore: Update version to 0.3.0b1 in __init__.py and pyproject.toml v0.3.0b1 2025-06-11 02:28:36 -06:00
1c45989988
chore: Bump version to 0.3.0rc1 in __init__.py and pyproject.toml 2025-06-11 02:27:15 -06:00
45a5ef1fb5
Improves asyncio loop handling and test initialization
Replaces deprecated get_event_loop() with proper running loop detection and fallback to new loop creation for better asyncio compatibility.

Fixes test suite by replacing manual Client instantiation with proper constructor calls, ensuring all internal caches and attributes are correctly initialized.

Updates cache access patterns to use new cache API methods consistently across the codebase.
2025-06-11 02:25:24 -06:00
ed83a9da85
Implements caching system with TTL and member filtering
Introduces a flexible caching infrastructure with time-to-live support and configurable member caching based on status, voice state, and join events.

Adds AudioSink abstract base class to support audio output handling in voice connections.

Replaces direct dictionary access with cache objects throughout the client, enabling automatic expiration and intelligent member filtering based on user-defined flags.

Updates guild parsing to incorporate presence and voice state data for more accurate member caching decisions.
2025-06-11 02:11:33 -06:00
0151526d07
chore: Apply code formatting across the codebase
This commit applies consistent code formatting to multiple files. No functional changes are included.
2025-06-11 02:10:33 -06:00