From a7b870c397ac86367b0223a2935ef3f32e7ff5e4 Mon Sep 17 00:00:00 2001 From: Paul Makles Date: Thu, 8 Jan 2026 22:16:50 +0000 Subject: [PATCH] chore: configure release please (#472) --- .github/workflows/release-please.yml | 49 ++++++++++++++++++++++++++++ .release-please-manifest.json | 3 ++ Cargo.lock | 38 ++++++++++----------- crates/bonfire/Cargo.toml | 4 +-- crates/core/coalesced/Cargo.toml | 2 +- crates/core/config/Cargo.toml | 4 +-- crates/core/database/Cargo.toml | 14 ++++---- crates/core/files/Cargo.toml | 6 ++-- crates/core/models/Cargo.toml | 6 ++-- crates/core/parser/Cargo.toml | 2 +- crates/core/permissions/Cargo.toml | 4 +-- crates/core/presence/Cargo.toml | 4 +-- crates/core/ratelimits/Cargo.toml | 8 ++--- crates/core/result/Cargo.toml | 2 +- crates/daemons/crond/Cargo.toml | 10 +++--- crates/daemons/pushd/Cargo.toml | 12 +++---- crates/delta/Cargo.toml | 2 +- crates/services/autumn/Cargo.toml | 12 +++---- crates/services/gifbox/Cargo.toml | 14 ++++---- crates/services/january/Cargo.toml | 10 +++--- release-please-config.json | 33 +++++++++++++++++++ 21 files changed, 162 insertions(+), 77 deletions(-) create mode 100644 .github/workflows/release-please.yml create mode 100644 .release-please-manifest.json create mode 100644 release-please-config.json diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml new file mode 100644 index 00000000..8b521563 --- /dev/null +++ b/.github/workflows/release-please.yml @@ -0,0 +1,49 @@ +name: Release Please + +on: + push: + branches: [main] # updates/opens the release PR when commits land on main + workflow_dispatch: + +permissions: + contents: write + pull-requests: write + id-token: write + +concurrency: + group: release-please + cancel-in-progress: true + +jobs: + release-please: + name: Release Please + runs-on: ubuntu-latest + outputs: + release_created: ${{ steps.rp.outputs.release_created }} + steps: + - id: app-token + uses: actions/create-github-app-token@v2 + with: + app-id: ${{ secrets.GH_STOAT_RELEASE_APP_ID }} + private-key: ${{ secrets.GH_STOAT_RELEASE_APP_PRIVATE_KEY }} + - id: rp + uses: googleapis/release-please-action@v4 + with: + token: ${{ steps.app-token.outputs.token }} + config-file: release-please-config.json + + publish-stable: + name: Publish release to stable branch + needs: release-please + if: needs.release-please.outputs.release_created == 'true' + runs-on: ubuntu-latest + + steps: + - id: app-token + uses: actions/create-github-app-token@v2 + with: + app-id: ${{ secrets.GH_STOAT_RELEASE_APP_ID }} + private-key: ${{ secrets.GH_STOAT_RELEASE_APP_PRIVATE_KEY }} + - uses: katyo/publish-crates@v2 + with: + registry-token: ${{ secrets.CRATES_IO_PUBLISH_TOKEN }} diff --git a/.release-please-manifest.json b/.release-please-manifest.json new file mode 100644 index 00000000..c96cf72b --- /dev/null +++ b/.release-please-manifest.json @@ -0,0 +1,3 @@ +{ + ".": "0.8.8" +} \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index ee03bf55..5772e212 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4742,7 +4742,7 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.9" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" dependencies = [ @@ -6519,7 +6519,7 @@ dependencies = [ [[package]] name = "revolt-autumn" -version = "0.8.9" +version = "0.8.8" dependencies = [ "axum", "axum-macros", @@ -6557,7 +6557,7 @@ dependencies = [ [[package]] name = "revolt-bonfire" -version = "0.8.9" +version = "0.8.8" dependencies = [ "async-channel 2.5.0", "async-std", @@ -6588,7 +6588,7 @@ dependencies = [ [[package]] name = "revolt-coalesced" -version = "0.8.9" +version = "0.8.8" dependencies = [ "indexmap 2.11.4", "lru 0.7.8", @@ -6597,7 +6597,7 @@ dependencies = [ [[package]] name = "revolt-config" -version = "0.8.9" +version = "0.8.8" dependencies = [ "async-std", "cached", @@ -6614,7 +6614,7 @@ dependencies = [ [[package]] name = "revolt-crond" -version = "0.8.9" +version = "0.8.8" dependencies = [ "log", "revolt-config", @@ -6626,7 +6626,7 @@ dependencies = [ [[package]] name = "revolt-database" -version = "0.8.9" +version = "0.8.8" dependencies = [ "amqprs", "async-lock 2.8.0", @@ -6676,7 +6676,7 @@ dependencies = [ [[package]] name = "revolt-delta" -version = "0.8.9" +version = "0.8.8" dependencies = [ "amqprs", "async-channel 1.9.0", @@ -6726,7 +6726,7 @@ dependencies = [ [[package]] name = "revolt-files" -version = "0.8.9" +version = "0.8.8" dependencies = [ "aes-gcm", "aws-config", @@ -6749,7 +6749,7 @@ dependencies = [ [[package]] name = "revolt-gifbox" -version = "0.8.9" +version = "0.8.8" dependencies = [ "axum", "axum-extra", @@ -6771,7 +6771,7 @@ dependencies = [ [[package]] name = "revolt-january" -version = "0.8.9" +version = "0.8.8" dependencies = [ "async-recursion", "axum", @@ -6799,7 +6799,7 @@ dependencies = [ [[package]] name = "revolt-models" -version = "0.8.9" +version = "0.8.8" dependencies = [ "indexmap 1.9.3", "iso8601-timestamp", @@ -6818,14 +6818,14 @@ dependencies = [ [[package]] name = "revolt-parser" -version = "0.8.9" +version = "0.8.8" dependencies = [ "logos", ] [[package]] name = "revolt-permissions" -version = "0.8.9" +version = "0.8.8" dependencies = [ "async-std", "async-trait", @@ -6840,7 +6840,7 @@ dependencies = [ [[package]] name = "revolt-presence" -version = "0.8.9" +version = "0.8.8" dependencies = [ "async-std", "log", @@ -6852,7 +6852,7 @@ dependencies = [ [[package]] name = "revolt-pushd" -version = "0.8.9" +version = "0.8.8" dependencies = [ "amqprs", "anyhow", @@ -6880,7 +6880,7 @@ dependencies = [ [[package]] name = "revolt-ratelimits" -version = "0.8.9" +version = "0.8.8" dependencies = [ "async-trait", "authifier", @@ -6897,7 +6897,7 @@ dependencies = [ [[package]] name = "revolt-result" -version = "0.8.9" +version = "0.8.8" dependencies = [ "axum", "log", @@ -8236,7 +8236,7 @@ dependencies = [ [[package]] name = "string_cache" -version = "0.8.9" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" dependencies = [ diff --git a/crates/bonfire/Cargo.toml b/crates/bonfire/Cargo.toml index 093c0440..63badcce 100644 --- a/crates/bonfire/Cargo.toml +++ b/crates/bonfire/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-bonfire" -version = "0.8.9" +version = "0.8.8" license = "AGPL-3.0-or-later" edition = "2021" @@ -42,7 +42,7 @@ revolt-result = { path = "../core/result" } revolt-models = { path = "../core/models" } revolt-config = { path = "../core/config" } revolt-database = { path = "../core/database", features = ["voice"] } -revolt-permissions = { version = "0.8.9", path = "../core/permissions" } +revolt-permissions = { version = "0.8.8", path = "../core/permissions" } revolt-presence = { path = "../core/presence", features = ["redis-is-patched"] } # redis diff --git a/crates/core/coalesced/Cargo.toml b/crates/core/coalesced/Cargo.toml index 32dad132..cb23a8ad 100644 --- a/crates/core/coalesced/Cargo.toml +++ b/crates/core/coalesced/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-coalesced" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "MIT" authors = ["Paul Makles ", "Zomatree "] diff --git a/crates/core/config/Cargo.toml b/crates/core/config/Cargo.toml index 2a6dbb9e..26cc1c25 100644 --- a/crates/core/config/Cargo.toml +++ b/crates/core/config/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-config" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "MIT" authors = ["Paul Makles "] @@ -37,4 +37,4 @@ sentry = { version = "0.31.5", optional = true } sentry-anyhow = { version = "0.38.1", optional = true } # Core -revolt-result = { version = "0.8.9", path = "../result", optional = true } +revolt-result = { version = "0.8.8", path = "../result", optional = true } diff --git a/crates/core/database/Cargo.toml b/crates/core/database/Cargo.toml index a1bf5189..9abdcbf1 100644 --- a/crates/core/database/Cargo.toml +++ b/crates/core/database/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-database" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "AGPL-3.0-or-later" authors = ["Paul Makles "] @@ -25,19 +25,19 @@ default = ["mongodb", "async-std-runtime", "tasks"] [dependencies] # Core -revolt-config = { version = "0.8.9", path = "../config", features = [ +revolt-config = { version = "0.8.8", path = "../config", features = [ "report-macros", ] } -revolt-result = { version = "0.8.9", path = "../result" } -revolt-models = { version = "0.8.9", path = "../models", features = [ +revolt-result = { version = "0.8.8", path = "../result" } +revolt-models = { version = "0.8.8", path = "../models", features = [ "validator", ] } -revolt-presence = { version = "0.8.9", path = "../presence" } -revolt-permissions = { version = "0.8.9", path = "../permissions", features = [ +revolt-presence = { version = "0.8.8", path = "../presence" } +revolt-permissions = { version = "0.8.8", path = "../permissions", features = [ "serde", "bson", ] } -revolt-parser = { version = "0.8.9", path = "../parser" } +revolt-parser = { version = "0.8.8", path = "../parser" } # Utility log = "0.4" diff --git a/crates/core/files/Cargo.toml b/crates/core/files/Cargo.toml index e6545192..7cc219f1 100644 --- a/crates/core/files/Cargo.toml +++ b/crates/core/files/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-files" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "AGPL-3.0-or-later" authors = ["Paul Makles "] @@ -20,10 +20,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.8.9", path = "../config", features = [ +revolt-config = { version = "0.8.8", path = "../config", features = [ "report-macros", ] } -revolt-result = { version = "0.8.9", path = "../result" } +revolt-result = { version = "0.8.8", path = "../result" } # image processing jxl-oxide = "0.8.1" diff --git a/crates/core/models/Cargo.toml b/crates/core/models/Cargo.toml index 4821ec75..e232fd6c 100644 --- a/crates/core/models/Cargo.toml +++ b/crates/core/models/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-models" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "MIT" authors = ["Paul Makles "] @@ -20,8 +20,8 @@ default = ["serde", "partials", "rocket"] [dependencies] # Core -revolt-config = { version = "0.8.9", path = "../config" } -revolt-permissions = { version = "0.8.9", path = "../permissions" } +revolt-config = { version = "0.8.8", path = "../config" } +revolt-permissions = { version = "0.8.8", path = "../permissions" } # Utility regex = "1.11" diff --git a/crates/core/parser/Cargo.toml b/crates/core/parser/Cargo.toml index aa6b7fc2..a6e1869b 100644 --- a/crates/core/parser/Cargo.toml +++ b/crates/core/parser/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-parser" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "MIT" authors = ["Zomatree ", "Paul Makles "] diff --git a/crates/core/permissions/Cargo.toml b/crates/core/permissions/Cargo.toml index 6fcc3828..d5ee3216 100644 --- a/crates/core/permissions/Cargo.toml +++ b/crates/core/permissions/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-permissions" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "MIT" authors = ["Paul Makles "] @@ -21,7 +21,7 @@ async-std = { version = "1.8.0", features = ["attributes"] } [dependencies] # Core -revolt-result = { version = "0.8.9", path = "../result" } +revolt-result = { version = "0.8.8", path = "../result" } # Utility auto_ops = "0.3.0" diff --git a/crates/core/presence/Cargo.toml b/crates/core/presence/Cargo.toml index b2e23222..2e53c3e7 100644 --- a/crates/core/presence/Cargo.toml +++ b/crates/core/presence/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-presence" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "AGPL-3.0-or-later" authors = ["Paul Makles "] @@ -16,7 +16,7 @@ redis-is-patched = [] async-std = { version = "1.8.0", features = ["attributes"] } # Config for loading Redis URI -revolt-config = { version = "0.8.9", path = "../config" } +revolt-config = { version = "0.8.8", path = "../config" } [dependencies] # Utility diff --git a/crates/core/ratelimits/Cargo.toml b/crates/core/ratelimits/Cargo.toml index a41952bb..05e1e362 100644 --- a/crates/core/ratelimits/Cargo.toml +++ b/crates/core/ratelimits/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-ratelimits" -version = "0.8.9" +version = "0.8.8" edition = "2024" [features] @@ -10,9 +10,9 @@ axum = ["dep:axum", "revolt-database/axum-impl"] default = ["rocket", "axum"] [dependencies] -revolt-database = { version = "0.8.9", path = "../database"} -revolt-result = { version = "0.8.9", path = "../result" } -revolt-config = { version = "0.8.9", path = "../config" } +revolt-database = { version = "0.8.8", path = "../database"} +revolt-result = { version = "0.8.8", path = "../result" } +revolt-config = { version = "0.8.8", path = "../config" } rocket = { version = "0.5.1", optional = true } revolt_rocket_okapi = { version = "0.10.0", optional = true } diff --git a/crates/core/result/Cargo.toml b/crates/core/result/Cargo.toml index ebc0764e..9004b570 100644 --- a/crates/core/result/Cargo.toml +++ b/crates/core/result/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-result" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "MIT" authors = ["Paul Makles "] diff --git a/crates/daemons/crond/Cargo.toml b/crates/daemons/crond/Cargo.toml index 1e070e38..2c55f2f7 100644 --- a/crates/daemons/crond/Cargo.toml +++ b/crates/daemons/crond/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-crond" -version = "0.8.9" +version = "0.8.8" license = "AGPL-3.0-or-later" authors = ["Paul Makles "] edition = "2021" @@ -16,7 +16,7 @@ log = "0.4" tokio = { version = "1" } # Core -revolt-database = { version = "0.8.9", path = "../../core/database" } -revolt-result = { version = "0.8.9", path = "../../core/result" } -revolt-config = { version = "0.8.9", path = "../../core/config" } -revolt-files = { version = "0.8.9", path = "../../core/files" } +revolt-database = { version = "0.8.8", path = "../../core/database" } +revolt-result = { version = "0.8.8", path = "../../core/result" } +revolt-config = { version = "0.8.8", path = "../../core/config" } +revolt-files = { version = "0.8.8", path = "../../core/files" } diff --git a/crates/daemons/pushd/Cargo.toml b/crates/daemons/pushd/Cargo.toml index 71fc002b..40a28008 100644 --- a/crates/daemons/pushd/Cargo.toml +++ b/crates/daemons/pushd/Cargo.toml @@ -1,20 +1,20 @@ [package] name = "revolt-pushd" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "AGPL-3.0-or-later" [dependencies] -revolt-result = { version = "0.8.9", path = "../../core/result" } -revolt-config = { version = "0.8.9", path = "../../core/config", features = [ +revolt-result = { version = "0.8.8", path = "../../core/result" } +revolt-config = { version = "0.8.8", path = "../../core/config", features = [ "report-macros", "anyhow" ] } -revolt-database = { version = "0.8.9", path = "../../core/database" } -revolt-models = { version = "0.8.9", path = "../../core/models", features = [ +revolt-database = { version = "0.8.8", path = "../../core/database" } +revolt-models = { version = "0.8.8", path = "../../core/models", features = [ "validator", ] } -revolt-presence = { version = "0.8.9", path = "../../core/presence", features = [ +revolt-presence = { version = "0.8.8", path = "../../core/presence", features = [ "redis-is-patched", ] } diff --git a/crates/delta/Cargo.toml b/crates/delta/Cargo.toml index fc4b1d49..3667d83f 100644 --- a/crates/delta/Cargo.toml +++ b/crates/delta/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-delta" -version = "0.8.9" +version = "0.8.8" license = "AGPL-3.0-or-later" authors = ["Paul Makles "] edition = "2018" diff --git a/crates/services/autumn/Cargo.toml b/crates/services/autumn/Cargo.toml index e15fbf0e..3514f501 100644 --- a/crates/services/autumn/Cargo.toml +++ b/crates/services/autumn/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-autumn" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "AGPL-3.0-or-later" @@ -43,16 +43,16 @@ tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Core crates -revolt-files = { version = "0.8.9", path = "../../core/files" } -revolt-config = { version = "0.8.9", path = "../../core/config" } -revolt-database = { version = "0.8.9", path = "../../core/database", features = [ +revolt-files = { version = "0.8.8", path = "../../core/files" } +revolt-config = { version = "0.8.8", path = "../../core/config" } +revolt-database = { version = "0.8.8", path = "../../core/database", features = [ "axum-impl", ] } -revolt-result = { version = "0.8.9", path = "../../core/result", features = [ +revolt-result = { version = "0.8.8", path = "../../core/result", features = [ "utoipa", "axum", ] } -revolt-ratelimits = { version = "0.8.9", path = "../../core/ratelimits", features = ["axum"] } +revolt-ratelimits = { version = "0.8.8", path = "../../core/ratelimits", features = ["axum"] } # Axum / web server tempfile = "3.12.0" diff --git a/crates/services/gifbox/Cargo.toml b/crates/services/gifbox/Cargo.toml index c611f59d..3e2b4173 100644 --- a/crates/services/gifbox/Cargo.toml +++ b/crates/services/gifbox/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-gifbox" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "AGPL-3.0-or-later" @@ -16,19 +16,19 @@ tokio = { version = "1.0", features = ["full"] } reqwest = { version = "0.12", features = ["json"] } # Core crates -revolt-config = { version = "0.8.9", path = "../../core/config" } -revolt-models = { version = "0.8.9", path = "../../core/models" } -revolt-result = { version = "0.8.9", path = "../../core/result", features = [ +revolt-config = { version = "0.8.8", path = "../../core/config" } +revolt-models = { version = "0.8.8", path = "../../core/models" } +revolt-result = { version = "0.8.8", path = "../../core/result", features = [ "utoipa", "axum", ] } -revolt-coalesced = { version = "0.8.9", path = "../../core/coalesced", features = [ +revolt-coalesced = { version = "0.8.8", path = "../../core/coalesced", features = [ "queue", ] } -revolt-database = { version = "0.8.9", path = "../../core/database", features = [ +revolt-database = { version = "0.8.8", path = "../../core/database", features = [ "axum-impl", ] } -revolt-ratelimits = { version = "0.8.9", path = "../../core/ratelimits", features = [ +revolt-ratelimits = { version = "0.8.8", path = "../../core/ratelimits", features = [ "axum", ] } diff --git a/crates/services/january/Cargo.toml b/crates/services/january/Cargo.toml index b549882a..80b5e522 100644 --- a/crates/services/january/Cargo.toml +++ b/crates/services/january/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "revolt-january" -version = "0.8.9" +version = "0.8.8" edition = "2021" license = "AGPL-3.0-or-later" @@ -32,13 +32,13 @@ tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Core crates -revolt-config = { version = "0.8.9", path = "../../core/config" } -revolt-models = { version = "0.8.9", path = "../../core/models" } -revolt-result = { version = "0.8.9", path = "../../core/result", features = [ +revolt-config = { version = "0.8.8", path = "../../core/config" } +revolt-models = { version = "0.8.8", path = "../../core/models" } +revolt-result = { version = "0.8.8", path = "../../core/result", features = [ "utoipa", "axum", ] } -revolt-files = { version = "0.8.9", path = "../../core/files" } +revolt-files = { version = "0.8.8", path = "../../core/files" } # Axum / web server axum = { version = "0.7.5" } diff --git a/release-please-config.json b/release-please-config.json new file mode 100644 index 00000000..6cb3a372 --- /dev/null +++ b/release-please-config.json @@ -0,0 +1,33 @@ +{ + "packages": { + ".": { + "changelog-path": "CHANGELOG.md", + "release-type": "rust", + "bump-minor-pre-major": false, + "bump-patch-for-minor-pre-major": false, + "draft": false, + "prerelease": false, + "extra-files": [ + "crates/bonfire/Cargo.toml", + "crates/core/coalesced/Cargo.toml", + "crates/core/config/Cargo.toml", + "crates/core/database/Cargo.toml", + "crates/core/files/Cargo.toml", + "crates/core/models/Cargo.toml", + "crates/core/parser/Cargo.toml", + "crates/core/permissions/Cargo.toml", + "crates/core/presence/Cargo.toml", + "crates/core/ratelimits/Cargo.toml", + "crates/core/result/Cargo.toml", + "crates/daemons/crond/Cargo.toml", + "crates/daemons/pushd/Cargo.toml", + "crates/daemons/voice-ingress/Cargo.toml", + "crates/delta/Cargo.toml", + "crates/services/autumn/Cargo.toml", + "crates/services/gifbox/Cargo.toml", + "crates/services/january/Cargo.toml" + ] + } + }, + "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json" +} \ No newline at end of file