stoat-release[bot]
03b52655ff
chore(main): release 0.13.6 ( #762 )
...
* chore(main): release 0.13.6
* chore: update Cargo.lock
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
---------
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-18 15:53:42 -07:00
Angelo Kontaxis
5b1985381a
chore: switch to lapin ( #767 )
...
* chore: begin switching to lapin fully
Signed-off-by: Zomatree <me@zomatree.live >
* chore: update rest of pushd to lapin
Signed-off-by: Zomatree <me@zomatree.live >
* chore: cleanup code
Signed-off-by: Zomatree <me@zomatree.live >
* chore: cleanup code
Signed-off-by: Zomatree <me@zomatree.live >
* fix: github webui sucks
Signed-off-by: IAmTomahawkx <iamtomahawkx@gmail.com >
---------
Signed-off-by: Zomatree <me@zomatree.live >
Signed-off-by: Tom <iamtomahawkx@gmail.com >
Signed-off-by: IAmTomahawkx <iamtomahawkx@gmail.com >
Co-authored-by: Tom <iamtomahawkx@gmail.com >
Release-As: 0.13.6
2026-05-18 15:46:17 -07:00
İspik
af0d8aad14
feat: user slowmode events ( #760 )
...
* feat: user slowmode events
Signed-off-by: ispik <ispik@ispik.dev >
* fix: remove debug print statement for slowmodes
Signed-off-by: ispik <ispik@ispik.dev >
* refactor: Send user slowmodes as websocket connects instead of trying to send it in ready payload
Signed-off-by: ispik <ispik@ispik.dev >
* refactor: optimize user slowmode handling with bulk operations
Signed-off-by: ispik <ispik@ispik.dev >
* chore: specify release version
Release-As: 0.13.6
---------
Signed-off-by: ispik <ispik@ispik.dev >
2026-05-18 14:51:43 -07:00
Tom
494c8b7cab
fix: Use proper headers to determine IP when not behind cloudflare ( #764 )
...
Signed-off-by: IAmTomahawkx <iamtomahawkx@gmail.com >
2026-05-18 10:51:19 -07:00
stoat-release[bot]
6c920de03a
chore(main): release 0.13.5 ( #759 )
...
* chore(main): release 0.13.5
* chore: update Cargo.lock
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
---------
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-17 11:02:21 -07:00
stoat-release[bot]
ee4575470b
chore(main): release 0.13.4 ( #754 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-16 18:27:44 +01:00
stoat-release[bot]
ab9b8ccfca
chore(main): release 0.13.3 ( #750 )
...
* chore(main): release 0.13.3
* chore: update Cargo.lock
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
---------
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-15 12:22:27 -07:00
Tom
7647cfc8d9
fix: don't automatically set up rabbitmq in delta ( #749 )
...
fix: don't declare queues which seem to cause the backend to crash in prod
for now, these exchanges/queues/bindings will need to be declared manually. Hopefully the lapin rewrite will fix this.
Signed-off-by: IAmTomahawkx <iamtomahawkx@gmail.com >
2026-05-15 12:17:36 -07:00
stoat-release[bot]
8157e1f6e9
chore(main): release 0.13.2 ( #747 )
...
* chore(main): release 0.13.2
* chore: update Cargo.lock
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
---------
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-11 15:26:03 +01:00
stoat-release[bot]
260036488d
chore(main): release 0.13.1 ( #745 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-10 15:34:41 +01:00
Tom
1100eaf46f
fix: amqprs startup bug ( #744 )
2026-05-10 15:22:26 +01:00
stoat-release[bot]
d52e84c5d3
chore(main): release 0.13.0 ( #722 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-09 17:26:38 +01:00
Taureon
6f3441cf4a
feat: Add webhook endpoints for editing and deleting messages ( #682 )
...
* feat: ErrorType.CannotDeleteMessage, needed later
Signed-off-by: Taureon <taureon@noreply.codeberg.org >
* feat: webhook edit/delete message endpoints
Signed-off-by: Taureon <taureon@noreply.codeberg.org >
* lol, lmao even
Signed-off-by: Taureon <taureon@noreply.codeberg.org >
* fix contradictory comment
Signed-off-by: Taureon <taureon@noreply.codeberg.org >
---------
Signed-off-by: Taureon <taureon@noreply.codeberg.org >
Co-authored-by: Taureon <taureon@noreply.codeberg.org >
2026-05-08 15:37:00 -07:00
Gabriel
23ad135983
feat: add emoji rename endpoint ( #714 )
...
* feat: add rename endpoint with rename-only update
Signed-off-by: Gabriel <60961939+gabrielfordevelopment@users.noreply.github.com >
* fix: enforce detached emoji edit restrictions
Signed-off-by: Gabriel <60961939+gabrielfordevelopment@users.noreply.github.com >
* fix: always enforce emoji edit permissions
Signed-off-by: Gabriel <60961939+gabrielfordevelopment@users.noreply.github.com >
---------
Signed-off-by: Gabriel <60961939+gabrielfordevelopment@users.noreply.github.com >
2026-05-08 15:23:57 -07:00
Tom
ab5bd47a39
feat: Rewrite acks ( #741 )
...
* feat: rewrite ack system
Signed-off-by: IAmTomahawkx <iamtomahawkx@gmail.com >
* feat: rewrite acks to crond + rabbit task
* fix: review changes
---------
Signed-off-by: IAmTomahawkx <iamtomahawkx@gmail.com >
2026-05-08 14:39:16 -07:00
İspik
21d82018cf
feat: add legal links to root payload ( #733 )
...
Signed-off-by: ispik <ispik@ispik.dev >
2026-05-06 16:35:20 -07:00
İspik
841985d3b9
feat: add role icon support ( #724 )
...
Signed-off-by: ispik <ispik@ispik.dev >
2026-05-02 17:04:28 -07:00
İspik
279f5d5fd7
fix: add new_user_hours to configuration limits ( #729 )
...
Signed-off-by: ispik <ispik@ispik.dev >
2026-04-26 22:47:52 -07:00
Angelo Kontaxis
3675ff1a1f
chore: migrate all local dependancies to workspace dependancies ( #710 )
...
* chore: start moving all deps to workspace deps
Signed-off-by: Zomatree <me@zomatree.live >
* chore: migrate all deps to workspace deps
Signed-off-by: Zomatree <me@zomatree.live >
* chore: add more dep groups
Signed-off-by: Zomatree <me@zomatree.live >
* fix: add migration to update existing files to be animated (#705 )
* fix: add migration to update existing files to be animated
Signed-off-by: Zomatree <me@zomatree.live >
* Revert "fix: add migration to update existing files to be animated"
This reverts commit 4e1f1c116c .
Signed-off-by: Zomatree <me@zomatree.live >
* fix: calculate animated for existing files when fetched
Signed-off-by: Zomatree <me@zomatree.live >
---------
Signed-off-by: Zomatree <me@zomatree.live >
* fix: mise start + missing docker image (#564 )
* fix: mise start + missing docker image
Signed-off-by: Damocles078 <hellodamocles078@gmail.com >
* fix: bump livekit version
Signed-off-by: Damocles <106018783+Damocles078@users.noreply.github.com >
---------
Signed-off-by: Damocles078 <hellodamocles078@gmail.com >
Signed-off-by: Tom <iamtomahawkx@gmail.com >
Signed-off-by: Damocles <106018783+Damocles078@users.noreply.github.com >
Co-authored-by: Tom <iamtomahawkx@gmail.com >
* docs: update donation link (#709 )
Signed-off-by: Zomatree <me@zomatree.live >
* fix: remove usage of deprecated functions
Signed-off-by: Zomatree <me@zomatree.live >
---------
Signed-off-by: Zomatree <me@zomatree.live >
Signed-off-by: Damocles078 <hellodamocles078@gmail.com >
Signed-off-by: Tom <iamtomahawkx@gmail.com >
Signed-off-by: Damocles <106018783+Damocles078@users.noreply.github.com >
Co-authored-by: Damocles <106018783+Damocles078@users.noreply.github.com >
Co-authored-by: Tom <iamtomahawkx@gmail.com >
Co-authored-by: Paul Makles <me@insrt.uk >
2026-04-17 19:02:18 -07:00
stoat-release[bot]
61fd13629f
chore(main): release 0.12.1 ( #700 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-04-11 12:31:11 +01:00
stoat-release[bot]
4d4b0dd864
chore(main): release 0.12.0 ( #602 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
2026-03-28 22:22:37 -07:00
Angelo Kontaxis
ccda6f5c53
fix: pass &str to Reference ( #697 )
...
Signed-off-by: Zomatree <me@zomatree.live >
2026-03-27 18:39:00 -07:00
Damocles
52ed5100c2
fix: improve generated openapi.json ( #584 )
...
* fix: /bots/{bot}
Paths "/bots/{bot}" and "/bots/{target}" must not be equivalent.
Signed-off-by: Damocles078 <hellodamocles078@gmail.com >
* fix: /channels/{group_id}/recipients/{member_id}
Paths "/channels/{group_id}/recipients/{member_id}" and "/channels/{target}/recipients/{member}" must not be equivalent.
Signed-off-by: Damocles078 <hellodamocles078@gmail.com >
* fix: /channels/{channel_id}/webhook
Paths "/channels/{target}/webhooks" and "/channels/{channel_id}/webhooks" must not be equivalent.
Signed-off-by: Damocles078 <hellodamocles078@gmail.com >
* fix: /servers/{server_id}/members/{member_id}
Paths "/servers/{target}/members/{member}" and "/servers/{server}/members/{member}" must not be equivalent.
Signed-off-by: Damocles078 <hellodamocles078@gmail.com >
* fix: /custom/emoji/{emoji_id}
Paths "/custom/emoji/{id}" and "/custom/emoji/{emoji_id}" must not be equivalent.
Signed-off-by: Damocles078 <hellodamocles078@gmail.com >
---------
Signed-off-by: Damocles078 <hellodamocles078@gmail.com >
Signed-off-by: Damocles <106018783+Damocles078@users.noreply.github.com >
2026-03-27 17:31:57 -07:00
Angelo Kontaxis
91783b9066
fix: only show first line on commit messages ( #696 )
...
Signed-off-by: Zomatree <me@zomatree.live >
2026-03-27 17:29:37 -07:00
LazyCat
735d644e04
feat: Transfer ownership ( #396 )
...
* feat: Transfer ownership
Signed-off-by: LazyCat2 <68156188+LazyCat2@users.noreply.github.com >
* Allow privileged users to change ownership
Signed-off-by: LazyCat2 <68156188+LazyCat2@users.noreply.github.com >
* Require TOTP
Signed-off-by: LazyCat2 <68156188+LazyCat2@users.noreply.github.com >
* Require TOTP or password
Signed-off-by: LazyCat2 <68156188+LazyCat2@users.noreply.github.com >
---------
Signed-off-by: LazyCat2 <68156188+LazyCat2@users.noreply.github.com >
Signed-off-by: Tom <iamtomahawkx@gmail.com >
Co-authored-by: Tom <iamtomahawkx@gmail.com >
2026-03-27 17:24:53 -07:00
İspik
6107f242fd
feat: Add slowmode functionality to text channels ( #680 )
...
* feat: Add slowmode functionality to text channels
Signed-off-by: arsabutispik <ispik@ispik.dev >
* fix: use atomic check-and-set to prevent spamming with scripts
Signed-off-by: arsabutispik <ispik@ispik.dev >
* feat: Add BypassSlowmode permission to channel permissions
Signed-off-by: arsabutispik <ispik@ispik.dev >
* refactor: Use set_options instead of manually building the command
Signed-off-by: arsabutispik <ispik@ispik.dev >
---------
Signed-off-by: arsabutispik <ispik@ispik.dev >
2026-03-27 17:09:15 -07:00
İspik
98c7b1b5a5
feat: implement time based message sweep on user ban ( #670 )
...
* feat: implement time based message sweep on user ban
- Adds `delete_message_seconds` (0 to 7 days in seconds) to the ban request payload.
Signed-off-by: arsabutispik <ispik@ispik.dev >
* refactor: pass ulid conversion to database
Signed-off-by: arsabutispik <ispik@ispik.dev >
* fix: use COL constant instead of hardcoded string in error mapper
Signed-off-by: arsabutispik <ispik@ispik.dev >
* refactor: broadcast bulk delete events during ban sweep
Updates the `delete_messages_by_author_since` trait to return a
HashMap of deleted message IDs grouped by channel.
The MongoDB implementation now uses a two-step process: it first
runs a projected `find` query to gather the target `_id` and
`channel` fields, then executes the `delete_many` operation.
This allows the ban route to loop through the affected channels and
dispatch `EventV1::BulkMessageDelete` WebSocket events, ensuring
that the swept messages are instantly removed from the UI for
all connected clients.
Signed-off-by: arsabutispik <ispik@ispik.dev >
* refactor: optimize message deletion by using $group and aggregate
Signed-off-by: arsabutispik <ispik@ispik.dev >
* refactor: use with_type in query
Signed-off-by: arsabutispik <ispik@ispik.dev >
* refactor: abstract function to Message model and mark attachments as deleted
Signed-off-by: arsabutispik <ispik@ispik.dev >
---------
Signed-off-by: arsabutispik <ispik@ispik.dev >
2026-03-27 17:02:12 -07:00
Tom
edfa97db10
feat: Allow restricting server creation to specific users ( #685 )
...
Signed-off-by: IAmTomahawkx <iamtomahawkx@gmail.com >
2026-03-23 12:25:33 -07:00
sinus-x
b830631bd2
fix(docs): Update GitHub links ( #647 )
...
Updates user-facing links to point to the new organization. Does not
update references in source code (user-agent, dependency references),
as they should be handled separately.
Signed-off-by: sinus-x <14353790+sinus-x@users.noreply.github.com >
2026-03-22 22:18:25 -07:00
Christopher Hultin
d56135e0cb
fix: Check for appropriate permission for removing other users avatar ( #657 )
...
* Check for appropriate permission for removing other users avatar
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
* limit check for non-self to just removal
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
* else if change
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
---------
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
2026-03-10 15:38:41 -07:00
Angelo Kontaxis
49c6289580
fix: store server id in redis and in room metadata to be able to delete voice state in all scenarios ( #656 )
...
* fix: store server id in redis values and in room metadata to be able to fully delete voice state in all scenarios
* fix: undo logging change
2026-03-10 15:14:32 -07:00
Tom
24d0d2b726
fix: no node state set on channel creation ( #653 )
...
* fix: no node state set on channel creation
Signed-off-by: IAmTomahawkx <iamtomahawkx@gmail.com >
* Update "join_call" logic to handle issue of "user is already connected to a channel that cannot be found"
Fixes stoatchat/for-web#951
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
* feat: remove node key when channel is empty or deleted
---------
Signed-off-by: IAmTomahawkx <iamtomahawkx@gmail.com >
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
Co-authored-by: Chris Hultin <chris.hultin@gmail.com >
2026-03-02 20:45:42 -08:00
Christopher Hultin
0b522ebddc
feat: expose global and user limits in root API response ( #644 )
...
* feat: expose global and user limits in root API response
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
* add missing file upload limits
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
* extract logic to generate "UserLimits" struct from "config"
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
* convert user limits from feature limits function to impl function
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
* picking nits
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
---------
Signed-off-by: Chris Hultin <chris.hultin@gmail.com >
2026-03-01 11:03:49 -08:00
stoat-release[bot]
8e3765df4c
chore(main): release 0.11.5 ( #598 )
...
* chore(main): release 0.11.5
* chore: update Cargo.lock
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
---------
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-17 22:14:57 +00:00
stoat-release[bot]
8849d03cd2
chore(main): release 0.11.4 ( #591 )
...
* chore(main): release 0.11.4
* chore: update Cargo.lock
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
---------
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-16 20:02:01 +00:00
stoat-release[bot]
74f0c537e6
chore(main): release 0.11.3 ( #562 )
...
* chore(main): release 0.11.3
* chore: update Cargo.lock
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
---------
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-13 19:50:32 +00:00
stoat-release[bot]
7c7f4f24de
chore(main): release 0.11.2 ( #560 )
...
* chore(main): release 0.11.2
* chore: update Cargo.lock
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
---------
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-13 19:42:13 +00:00
stoat-release[bot]
2e87696c83
chore(main): release 0.11.1 ( #554 )
2026-02-13 00:21:29 +00:00
stoat-release[bot]
ba798490e2
chore(main): release 0.11.0 ( #525 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-10 20:48:36 +00:00
Paul Makles
5132270f2e
feat: appeal to the almighty Spamhaus ( #524 )
2026-02-10 20:46:49 +00:00
stoat-release[bot]
1bfb2a7214
chore(main): release 0.10.3 ( #509 )
...
* chore(main): release 0.10.3
* chore: update Cargo.lock
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
---------
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-09 20:51:30 +00:00
stoat-release[bot]
4bfd79c42c
chore(main): release 0.10.2 ( #506 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-25 22:43:56 +00:00
stoat-release[bot]
5d3e65e076
chore(main): release 0.10.1 ( #504 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-25 21:27:20 +00:00
stoat-release[bot]
84b57dee57
chore(main): release 0.10.0 ( #502 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-25 20:58:16 +00:00
Angelo Kontaxis
a1a21252d0
fix: expose ratelimit headers via cors ( #496 )
2026-01-25 19:43:06 +00:00
Angelo Kontaxis
0dc5442498
feat: allow kicking members from voice channels ( #495 )
2026-01-25 19:42:48 +00:00
Paul Makles
2846f09c45
chore: switch to mise for tooling & update crates for publishing ( #494 )
2026-01-21 23:41:58 +00:00
stoat-release[bot]
50835f08c8
chore(main): release 0.9.4 ( #491 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: izzy <me@insrt.uk >
2026-01-10 17:55:04 +00:00
stoat-release[bot]
d0ea88f1f8
chore(main): release 0.9.3 ( #488 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
2026-01-10 16:04:28 +00:00
stoat-release[bot]
b4ba02218f
chore(main): release 0.9.2 ( #486 )
...
Co-authored-by: stoat-release[bot] <245062572+stoat-release[bot]@users.noreply.github.com>
2026-01-10 13:07:06 +00:00