Merge branch 'main' into feat/admin-api

This commit is contained in:
ispik
2026-04-12 14:50:04 +03:00
23 changed files with 91 additions and 79 deletions

View File

@@ -1,3 +1,3 @@
{
".": "0.12.0"
".": "0.12.1"
}

View File

@@ -1,5 +1,15 @@
# Changelog
## [0.12.1](https://github.com/stoatchat/stoatchat/compare/v0.12.0...v0.12.1) (2026-04-10)
### Bug Fixes
* add migration to update existing files to be animated ([#705](https://github.com/stoatchat/stoatchat/issues/705)) ([f2c056a](https://github.com/stoatchat/stoatchat/commit/f2c056a1515be493b195f3f5db5886c2ddf36700))
* don't send self dm notifications ([#706](https://github.com/stoatchat/stoatchat/issues/706)) ([f30b729](https://github.com/stoatchat/stoatchat/commit/f30b729ca90d0be6853c57ab4935694e5e59ae56))
* mise start + missing docker image ([#564](https://github.com/stoatchat/stoatchat/issues/564)) ([fb8fe16](https://github.com/stoatchat/stoatchat/commit/fb8fe1655776791421284a6a093e86f0320c258a))
* test failure due to wrong assertion ([#707](https://github.com/stoatchat/stoatchat/issues/707)) ([f81e329](https://github.com/stoatchat/stoatchat/commit/f81e3291bdd57af9ceedb2987b111acc7051d69c))
## [0.12.0](https://github.com/stoatchat/stoatchat/compare/v0.11.5...v0.12.0) (2026-03-28)

36
Cargo.lock generated
View File

@@ -6798,7 +6798,7 @@ dependencies = [
[[package]]
name = "revolt-autumn"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"axum",
"axum-macros",
@@ -6837,7 +6837,7 @@ dependencies = [
[[package]]
name = "revolt-bonfire"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"async-channel 2.5.0",
"async-std",
@@ -6868,7 +6868,7 @@ dependencies = [
[[package]]
name = "revolt-coalesced"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"indexmap 2.13.0",
"lru 0.16.3",
@@ -6877,7 +6877,7 @@ dependencies = [
[[package]]
name = "revolt-config"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"async-std",
"cached",
@@ -6894,7 +6894,7 @@ dependencies = [
[[package]]
name = "revolt-crond"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"log",
"revolt-config",
@@ -6906,7 +6906,7 @@ dependencies = [
[[package]]
name = "revolt-database"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"amqprs",
"async-lock 2.8.0",
@@ -6956,7 +6956,7 @@ dependencies = [
[[package]]
name = "revolt-delta"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"amqprs",
"async-channel 1.9.0",
@@ -7006,7 +7006,7 @@ dependencies = [
[[package]]
name = "revolt-files"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"aes-gcm",
"anyhow",
@@ -7034,7 +7034,7 @@ dependencies = [
[[package]]
name = "revolt-gifbox"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"axum",
"axum-extra",
@@ -7057,7 +7057,7 @@ dependencies = [
[[package]]
name = "revolt-january"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"async-recursion",
"axum",
@@ -7085,7 +7085,7 @@ dependencies = [
[[package]]
name = "revolt-models"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"indexmap 1.9.3",
"iso8601-timestamp",
@@ -7104,14 +7104,14 @@ dependencies = [
[[package]]
name = "revolt-parser"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"logos",
]
[[package]]
name = "revolt-permissions"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"async-std",
"async-trait",
@@ -7126,7 +7126,7 @@ dependencies = [
[[package]]
name = "revolt-presence"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"async-std",
"log",
@@ -7138,7 +7138,7 @@ dependencies = [
[[package]]
name = "revolt-pushd"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"amqprs",
"anyhow",
@@ -7169,7 +7169,7 @@ dependencies = [
[[package]]
name = "revolt-ratelimits"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"async-trait",
"authifier",
@@ -7186,7 +7186,7 @@ dependencies = [
[[package]]
name = "revolt-result"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"axum",
"log",
@@ -7202,7 +7202,7 @@ dependencies = [
[[package]]
name = "revolt-voice-ingress"
version = "0.12.0"
version = "0.12.1"
dependencies = [
"amqprs",
"async-std",

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-bonfire"
version = "0.12.0"
version = "0.12.1"
license = "AGPL-3.0-or-later"
edition = "2021"
publish = false

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-coalesced"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "MIT"
authors = ["Paul Makles <me@insrt.uk>", "Zomatree <me@zomatree.live>"]

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-config"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "MIT"
authors = ["Paul Makles <me@insrt.uk>"]
@@ -38,4 +38,4 @@ sentry = { version = "0.31.5", optional = true }
sentry-anyhow = { version = "0.38.1", optional = true }
# Core
revolt-result = { version = "0.12.0", path = "../result", optional = true }
revolt-result = { version = "0.12.1", path = "../result", optional = true }

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-database"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "AGPL-3.0-or-later"
authors = ["Paul Makles <me@insrt.uk>"]
@@ -32,19 +32,19 @@ default = ["mongodb", "async-std-runtime", "tasks"]
[dependencies]
# Core
revolt-config = { version = "0.12.0", path = "../config", features = [
revolt-config = { version = "0.12.1", path = "../config", features = [
"report-macros",
] }
revolt-result = { version = "0.12.0", path = "../result" }
revolt-models = { version = "0.12.0", path = "../models", features = [
revolt-result = { version = "0.12.1", path = "../result" }
revolt-models = { version = "0.12.1", path = "../models", features = [
"validator",
] }
revolt-presence = { version = "0.12.0", path = "../presence" }
revolt-permissions = { version = "0.12.0", path = "../permissions", features = [
revolt-presence = { version = "0.12.1", path = "../presence" }
revolt-permissions = { version = "0.12.1", path = "../permissions", features = [
"serde",
"bson",
] }
revolt-parser = { version = "0.12.0", path = "../parser" }
revolt-parser = { version = "0.12.1", path = "../parser" }
# Utility
log = "0.4"

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-files"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "AGPL-3.0-or-later"
authors = ["Paul Makles <me@insrt.uk>"]
@@ -27,10 +27,10 @@ typenum = "1.17.0"
aws-config = "1.5.5"
aws-sdk-s3 = { version = "1.46.0", features = ["behavior-version-latest"] }
revolt-config = { version = "0.12.0", path = "../config", features = [
revolt-config = { version = "0.12.1", path = "../config", features = [
"report-macros",
] }
revolt-result = { version = "0.12.0", path = "../result" }
revolt-result = { version = "0.12.1", path = "../result" }
# image processing
jxl-oxide = { workspace = true }

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-models"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "MIT"
authors = ["Paul Makles <me@insrt.uk>"]
@@ -21,8 +21,8 @@ default = ["serde", "partials", "rocket"]
[dependencies]
# Core
revolt-config = { version = "0.12.0", path = "../config" }
revolt-permissions = { version = "0.12.0", path = "../permissions" }
revolt-config = { version = "0.12.1", path = "../config" }
revolt-permissions = { version = "0.12.1", path = "../permissions" }
# Utility
regex = "1.11"

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-parser"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "MIT"
authors = ["Zomatree <me@zomatree.live>", "Paul Makles <me@insrt.uk>"]

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-permissions"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "MIT"
authors = ["Paul Makles <me@insrt.uk>"]
@@ -22,7 +22,7 @@ async-std = { version = "1.8.0", features = ["attributes"] }
[dependencies]
# Core
revolt-result = { version = "0.12.0", path = "../result" }
revolt-result = { version = "0.12.1", path = "../result" }
# Utility
auto_ops = "0.3.0"

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-presence"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "AGPL-3.0-or-later"
authors = ["Paul Makles <me@insrt.uk>"]
@@ -17,7 +17,7 @@ redis-is-patched = []
async-std = { version = "1.8.0", features = ["attributes"] }
# Config for loading Redis URI
revolt-config = { version = "0.12.0", path = "../config" }
revolt-config = { version = "0.12.1", path = "../config" }
[dependencies]
# Utility

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-ratelimits"
version = "0.12.0"
version = "0.12.1"
edition = "2024"
license = "MIT"
authors = ["Zomatree <me@zomatree.live>", "Paul Makles <me@insrt.uk>"]
@@ -18,9 +18,9 @@ axum = ["dep:axum", "revolt-database/axum-impl"]
default = ["rocket", "axum"]
[dependencies]
revolt-database = { version = "0.12.0", path = "../database" }
revolt-result = { version = "0.12.0", path = "../result" }
revolt-config = { version = "0.12.0", path = "../config" }
revolt-database = { version = "0.12.1", path = "../database" }
revolt-result = { version = "0.12.1", path = "../result" }
revolt-config = { version = "0.12.1", path = "../config" }
rocket = { version = "0.5.1", optional = true }
revolt_rocket_okapi = { version = "0.10.0", optional = true }

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-result"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "MIT"
authors = ["Paul Makles <me@insrt.uk>"]

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-crond"
version = "0.12.0"
version = "0.12.1"
license = "AGPL-3.0-or-later"
authors = ["Paul Makles <me@insrt.uk>"]
edition = "2021"
@@ -17,7 +17,7 @@ log = "0.4"
tokio = { version = "1" }
# Core
revolt-database = { version = "0.12.0", path = "../../core/database" }
revolt-result = { version = "0.12.0", path = "../../core/result" }
revolt-config = { version = "0.12.0", path = "../../core/config" }
revolt-files = { version = "0.12.0", path = "../../core/files" }
revolt-database = { version = "0.12.1", path = "../../core/database" }
revolt-result = { version = "0.12.1", path = "../../core/result" }
revolt-config = { version = "0.12.1", path = "../../core/config" }
revolt-files = { version = "0.12.1", path = "../../core/files" }

View File

@@ -1,24 +1,24 @@
[package]
name = "revolt-pushd"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "AGPL-3.0-or-later"
publish = false
[dependencies]
revolt-result = { version = "0.12.0", path = "../../core/result" }
revolt-config = { version = "0.12.0", path = "../../core/config", features = [
revolt-result = { version = "0.12.1", path = "../../core/result" }
revolt-config = { version = "0.12.1", path = "../../core/config", features = [
"report-macros",
"anyhow",
] }
revolt-database = { version = "0.12.0", path = "../../core/database" }
revolt-models = { version = "0.12.0", path = "../../core/models", features = [
revolt-database = { version = "0.12.1", path = "../../core/database" }
revolt-models = { version = "0.12.1", path = "../../core/models", features = [
"validator",
] }
revolt-presence = { version = "0.12.0", path = "../../core/presence", features = [
revolt-presence = { version = "0.12.1", path = "../../core/presence", features = [
"redis-is-patched",
] }
revolt-parser = { version = "0.12.0", path = "../../core/parser" }
revolt-parser = { version = "0.12.1", path = "../../core/parser" }
anyhow = { version = "1.0.98" }

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-voice-ingress"
version = "0.12.0"
version = "0.12.1"
license = "AGPL-3.0-or-later"
edition = "2021"
publish = false

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-delta"
version = "0.12.0"
version = "0.12.1"
license = "AGPL-3.0-or-later"
authors = ["Paul Makles <paulmakles@gmail.com>"]
edition = "2018"

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-autumn"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "AGPL-3.0-or-later"
publish = false
@@ -45,16 +45,16 @@ tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Core crates
revolt-files = { version = "0.12.0", path = "../../core/files" }
revolt-config = { version = "0.12.0", path = "../../core/config" }
revolt-database = { version = "0.12.0", path = "../../core/database", features = [
revolt-files = { version = "0.12.1", path = "../../core/files" }
revolt-config = { version = "0.12.1", path = "../../core/config" }
revolt-database = { version = "0.12.1", path = "../../core/database", features = [
"axum-impl",
] }
revolt-result = { version = "0.12.0", path = "../../core/result", features = [
revolt-result = { version = "0.12.1", path = "../../core/result", features = [
"utoipa",
"axum",
] }
revolt-ratelimits = { version = "0.12.0", path = "../../core/ratelimits", features = ["axum"] }
revolt-ratelimits = { version = "0.12.1", path = "../../core/ratelimits", features = ["axum"] }
# Axum / web server
tempfile = "3.12.0"

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-gifbox"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "AGPL-3.0-or-later"
publish = false
@@ -17,19 +17,19 @@ tokio = { version = "1.0", features = ["full"] }
reqwest = { version = "0.12", features = ["json"] }
# Core crates
revolt-config = { version = "0.12.0", path = "../../core/config" }
revolt-models = { version = "0.12.0", path = "../../core/models" }
revolt-result = { version = "0.12.0", path = "../../core/result", features = [
revolt-config = { version = "0.12.1", path = "../../core/config" }
revolt-models = { version = "0.12.1", path = "../../core/models" }
revolt-result = { version = "0.12.1", path = "../../core/result", features = [
"utoipa",
"axum",
] }
revolt-coalesced = { version = "0.12.0", path = "../../core/coalesced", features = [
revolt-coalesced = { version = "0.12.1", path = "../../core/coalesced", features = [
"queue",
] }
revolt-database = { version = "0.12.0", path = "../../core/database", features = [
revolt-database = { version = "0.12.1", path = "../../core/database", features = [
"axum-impl",
] }
revolt-ratelimits = { version = "0.12.0", path = "../../core/ratelimits", features = [
revolt-ratelimits = { version = "0.12.1", path = "../../core/ratelimits", features = [
"axum",
] }

View File

@@ -1,6 +1,6 @@
[package]
name = "revolt-january"
version = "0.12.0"
version = "0.12.1"
edition = "2021"
license = "AGPL-3.0-or-later"
publish = false
@@ -33,13 +33,13 @@ tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Core crates
revolt-config = { version = "0.12.0", path = "../../core/config" }
revolt-models = { version = "0.12.0", path = "../../core/models" }
revolt-result = { version = "0.12.0", path = "../../core/result", features = [
revolt-config = { version = "0.12.1", path = "../../core/config" }
revolt-models = { version = "0.12.1", path = "../../core/models" }
revolt-result = { version = "0.12.1", path = "../../core/result", features = [
"utoipa",
"axum",
] }
revolt-files = { version = "0.12.0", path = "../../core/files" }
revolt-files = { version = "0.12.1", path = "../../core/files" }
# Axum / web server
axum = { version = "0.7.5" }

View File

@@ -4,6 +4,8 @@ sidebar_position: 1
# Endpoints
[![Run in Yaak](https://external.stoatusercontent.com/proxy?url=https://yaak.app/static/button.svg)](https://yaak.app/button/run?name=Stoat+API&url=https%3A%2F%2Fstoat.chat%2Fapi%2Fopenapi.json)
**We are moving stuff around currently following the rebrand, guidance will follow soon!**
You can connect to the API on the following URLs:

View File

@@ -1 +1 @@
0.12.0
0.12.1