e5f550c1b9
chore: replace blocking semaphore with async version and reduce concurrency to 1 in RPC class
2025-09-07 02:28:12 +00:00
3d77653cbc
fix: increase RPC semaphore limit from 3 to 200 and wrap poller call in semaphore context manager
2025-09-07 02:22:48 +00:00
c26f636e9d
feat: increase RPC semaphore limit from 1 to 3 in RPC class constructor
2025-09-04 22:46:15 +00:00
f47e803f69
chore: strip trailing whitespace and add semaphore to RPC class in src/snekbot/rpc.py
2025-08-30 13:45:42 +00:00
4ed7c60346
fix: correct misspelled 'async with' keyword in bot.py semaphore context manager
2025-08-30 13:41:58 +00:00
c0e94d4199
feat: add asyncio semaphore to bot message processing loop for concurrency control
2025-08-30 13:39:27 +00:00
06530eb225
feat: add final parameter to send_message method for rpc call control
...
Add an optional `final` parameter (defaulting to True) to the `send_message` method in the `Bot` class, and pass it through to the underlying `self.rpc.send_message` call. This allows callers to control whether the message is marked as final when sent via RPC.
2025-08-21 09:50:02 +00:00
fcd53a6b85
fix: correct off-by-one error in pagination offset calculation for user list endpoint
2025-08-02 11:24:53 +00:00
a73df33f05
fix: switch RPC endpoint from staging to production gateway and refactor async response handling
2025-08-02 00:59:33 +00:00
99492ec73b
chore: skip non-final message events in bot.py event loop
2025-05-29 08:08:18 +00:00
a326406c90
chore: remove trailing whitespace and fix async call patterns across src/ files
2025-05-21 16:18:55 +00:00
04db6f4590
chore: bump snekbot version from 1.0.0 to 1.1.0 in pyproject.toml
2025-05-10 19:53:25 +00:00
ad8c6bf308
chore: remove trailing whitespace from README.md line 42 and add null data guard in bot.py receive loop
2025-05-10 19:52:53 +00:00
8930c40f43
chore: remove emoji and casual language from README.md for professional tone
2025-05-05 20:25:01 +00:00
746debccd7
docs: rewrite README with emoji-rich quickstart guide and modernized project overview
2025-05-05 20:13:45 +00:00
df7794a6a9
chore: update Makefile to use python3.12 and fix formatting in example bot code
2025-05-05 20:08:30 +00:00
0adb5836d3
chore: strip trailing whitespace from bot.py and all src/ source files
2025-05-03 15:19:13 +00:00
33a2d201da
chore: remove trailing whitespace and add on_init hook with initial connection flag in bot.py
2025-05-03 15:13:47 +00:00
eeb4593854
fix: add super calls and fix on_own_message signature in ExampleBot
...
- Add missing `await super().on_join(channel_uid)` and `await super().on_leave(channel_uid)` calls to ensure parent class lifecycle hooks execute
- Update `on_own_message` method signature to include `channel_uid` parameter, aligning with the expected interface
2025-04-24 19:40:44 +00:00
4cbb7d17e3
chore: remove TODO.md and refactor bot channel caching with get_channel method
2025-04-24 19:38:56 +00:00
476041c0ab
chore: replace hardcoded API timeout values with configurable constants in snek_core_bot.py
2025-04-24 19:03:12 +00:00
c1421d0c22
chore: remove redundant exception handling in rpc send and fix bot reconnection logic
...
- Remove try-except wrapper around ws.send_json in RPC.method to let exceptions propagate naturally
- Move asyncio.sleep(1) inside the except block in Bot.run to avoid delay on successful iterations
- Add raise statement in Bot message handling to propagate AttributeError instead of silently logging
2025-02-18 18:09:51 +00:00
bedd2345a4
fix: correct typo in commit message from 'Fixx' to 'Fix' for consistency
2025-02-18 15:34:57 +00:00
de5b20bed9
fix: replace raise with logger.exception and break on websocket close/error/unknown in rpc receive loop
2025-02-17 19:11:45 +00:00
4d09fad32f
refactor: remove verbose debug logging from RPC response methods and echo handler
2025-02-15 20:11:34 +00:00
cfbd5a1ce4
fix: replace silent break with exception raise on ws close and error in RPC.receive
...
Replace two silent `break` statements with explicit `Exception` raises when WebSocket
closes or encounters an error, and remove a stray debug print statement. This ensures
the caller is notified of connection failures instead of silently exiting the receive loop.
2025-02-15 12:23:46 +00:00
e078ef918b
chore: replace placeholder example content with initial project scaffold
2025-02-13 09:40:22 +00:00
85922db224
fix: update bot.py to access user attributes via dict keys instead of object properties
2025-02-13 09:36:46 +00:00
05410b484e
fix: log full exception traceback for unhandled message events instead of debug message
2025-02-13 09:31:50 +00:00
5a94f2d041
fix: fallback to data dict key lookup in RPC result __getitem__ and prevent overwrite in __setitem__
2025-02-13 09:26:50 +00:00
ffc347030f
chore: remove unused join_conversation flag and trailing whitespace in bot.py event loop
2025-02-13 09:21:35 +00:00
e88b154510
chore: migrate user attribute access from dict-style to object-style in bot.py
2025-02-13 09:12:52 +00:00
dfb893c0cd
chore: remove duplicate for-loop line in RPC.__aiter__ method in rpc.py
2025-02-12 00:06:19 +00:00
103142acad
fix: correct rpc endpoint path for user authentication service
2025-02-12 00:03:41 +00:00
abd8bcb7ee
chore: add initial build artifacts and expand egg-info metadata with readme
2025-02-10 22:12:50 +00:00
7bb4691ab4
chore: relax python version constraint from >=3.12 to >=3 in pyproject.toml
2025-02-10 22:09:59 +00:00
cf47bd65d3
docs: add authentication placeholder and production-ready reconnect note to README and example
2025-02-10 21:31:02 +00:00
4f4ae87b7a
feat: refactor bot event handlers to accept flat parameters and add join/leave auto-replies
2025-02-10 13:16:55 +00:00
756e26eb42
fix: include actual error details in exception message for message parsing failure
2025-02-01 15:20:13 +00:00
e85f7d748f
fix: correct f-string syntax errors in print statements across multiple event handlers
...
Replace erroneous `f{data.channel_uid}` and similar f-string expressions with correct `{data.channel_uid}` syntax in on_join, on_leave, on_ping, on_mention, and on_message methods. Also fix hardcoded password placeholder in bot instantiation from "xxxxxx" to "example".
2025-02-01 15:16:25 +00:00
158df199cc
fix: correct f-string syntax by removing extraneous 'f' prefix in format expressions across multiple event handlers
2025-02-01 15:14:56 +00:00
3b5cb74d94
fix: correct f-string typo in README debug print and update run instructions
...
- Fix incorrect f-string prefix 'f{' to '{' in README example bot's on_message debug print
- Replace hardcoded 'python bot.py' with generic '[your-script].py' placeholder in run instructions
- Remove license field from pyproject.toml metadata configuration
2025-02-01 15:14:08 +00:00
3628ab98f5
feat: add TODO.md with logging and asyncio migration tasks
2025-02-01 15:00:05 +00:00
6654901f37
docs: add .gitignore, LICENSE, Makefile, README tutorial, example bot, pyproject.toml, and core snekbot modules
2025-02-01 14:58:18 +00:00