From f99f4f5fbaaea1804b305334e52033e9890fa92c Mon Sep 17 00:00:00 2001 From: Quentin Gliech Date: Fri, 15 May 2026 13:22:50 +0200 Subject: [PATCH 1/6] Fix the transformation of the Docker build metadata in CI This broke in #5664 due to STEPS_BAKE_OUTPUTS_METADATA being too large to be passed as an argument to a shell script. This replaces the `jq` call with a javascript action which transforms the output. --- .github/workflows/build.yaml | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 6b25b3f6b..255771d3e 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -214,7 +214,7 @@ jobs: runs-on: ubuntu-24.04 outputs: - metadata: ${{ steps.output.outputs.metadata }} + metadata: ${{ steps.metadata.outputs.result }} permissions: contents: read @@ -293,15 +293,27 @@ jobs: base.cache-to=type=registry,ref=${{ env.BUILDCACHE }}:buildcache,mode=max - name: Transform bake output - # This transforms the ouput to an object which looks like this: - # { reguar: { digest: "…", tags: ["…", "…"] }, debug: { digest: "…", tags: ["…"] }, … } - id: output - run: | - echo 'metadata<> $GITHUB_OUTPUT - echo "$STEPS_BAKE_OUTPUTS_METADATA" | jq -c 'with_entries(select(.value | (type == "object" and has("containerimage.digest")))) | map_values({ digest: .["containerimage.digest"], tags: (.["image.name"] | split(",")) })' >> $GITHUB_OUTPUT - echo 'EOF' >> $GITHUB_OUTPUT + # This transforms the output to an object which looks like this: + # { regular: { digest: "…", tags: ["…", "…"] }, debug: { digest: "…", tags: ["…"] }, … } + # We use github-script rather than shelling out to jq because the bake + # metadata can exceed the shell ARG_MAX limit when expanded. + id: metadata + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 env: STEPS_BAKE_OUTPUTS_METADATA: ${{ steps.bake.outputs.metadata }} + with: + script: | + const bakeOutput = JSON.parse(process.env.STEPS_BAKE_OUTPUTS_METADATA); + const metadata = {}; + for (const [key, value] of Object.entries(bakeOutput)) { + if (value && typeof value === 'object' && ('containerimage.digest' in value)) { + metadata[key] = { + digest: value['containerimage.digest'], + tags: value['image.name'].split(','), + }; + } + } + return metadata; - name: Sign the images with GitHub Actions provided token # Only sign on tags and on commits on main branch @@ -310,8 +322,8 @@ jobs: && (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main') env: - REGULAR_DIGEST: ${{ steps.output.outputs.metadata && fromJSON(steps.output.outputs.metadata).regular.digest }} - DEBUG_DIGEST: ${{ steps.output.outputs.metadata && fromJSON(steps.output.outputs.metadata).debug.digest }} + REGULAR_DIGEST: ${{ steps.metadata.outputs.result && fromJSON(steps.metadata.outputs.result).regular.digest }} + DEBUG_DIGEST: ${{ steps.metadata.outputs.result && fromJSON(steps.metadata.outputs.result).debug.digest }} run: |- cosign sign --yes \ From 676e2fc75f7edd9dea0da06c6dd8613aa820c534 Mon Sep 17 00:00:00 2001 From: Hugh Nimmo-Smith Date: Fri, 15 May 2026 14:04:43 +0100 Subject: [PATCH 2/6] Increase dependabot interval from daily to monthly --- .github/dependabot.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index e210db33d..376b57208 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -11,7 +11,7 @@ updates: - "A-Dependencies" - "Z-Deps-Backend" schedule: - interval: "daily" + interval: "monthly" ignore: # We plan to remove apalis soon, let's ignore it for now - dependency-name: "apalis" @@ -53,7 +53,7 @@ updates: - "A-Dependencies" - "Z-Deps-CI" schedule: - interval: "daily" + interval: "monthly" cooldown: default-days: 14 @@ -63,7 +63,7 @@ updates: - "A-Dependencies" - "Z-Deps-Frontend" schedule: - interval: "daily" + interval: "monthly" groups: storybook: patterns: From eb58397b05e2cea8513f03090dae112f20f9b2a3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 19 May 2026 13:46:32 +0000 Subject: [PATCH 3/6] Translations updates --- frontend/.storybook/locales.ts | 78 +++++++++++++++++----------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/frontend/.storybook/locales.ts b/frontend/.storybook/locales.ts index ffcc627ed..bb379022a 100644 --- a/frontend/.storybook/locales.ts +++ b/frontend/.storybook/locales.ts @@ -27,7 +27,7 @@ export type LocalazyMetadata = { }; const localazyMetadata: LocalazyMetadata = { - projectUrl: "https://localazy.com/p/matrix-authentication-service", + projectUrl: "https://localazy.com/p/matrix-authentication-service!v1.17", baseLocale: "en", languages: [ { @@ -208,25 +208,25 @@ const localazyMetadata: LocalazyMetadata = { file: "frontend.json", path: "", cdnFiles: { - "cs": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/cs/frontend.json", - "da": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/da/frontend.json", - "de": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/de/frontend.json", - "en": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/en/frontend.json", - "et": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/et/frontend.json", - "fi": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/fi/frontend.json", - "fr": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/fr/frontend.json", - "hu": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/hu/frontend.json", - "nb_NO": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/nb-NO/frontend.json", - "nl": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/nl/frontend.json", - "pl": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/pl/frontend.json", - "pt": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/pt/frontend.json", - "pt_BR": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/pt-BR/frontend.json", - "ru": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/ru/frontend.json", - "sk": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/sk/frontend.json", - "sv": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/sv/frontend.json", - "uk": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/uk/frontend.json", - "uz": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/uz/frontend.json", - "zh#Hans": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/zh-Hans/frontend.json" + "cs": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/cs/frontend.json", + "da": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/da/frontend.json", + "de": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/de/frontend.json", + "en": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/en/frontend.json", + "et": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/et/frontend.json", + "fi": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/fi/frontend.json", + "fr": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/fr/frontend.json", + "hu": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/hu/frontend.json", + "nb_NO": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/nb-NO/frontend.json", + "nl": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/nl/frontend.json", + "pl": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/pl/frontend.json", + "pt": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/pt/frontend.json", + "pt_BR": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/pt-BR/frontend.json", + "ru": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/ru/frontend.json", + "sk": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/sk/frontend.json", + "sv": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/sv/frontend.json", + "uk": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/uk/frontend.json", + "uz": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/uz/frontend.json", + "zh#Hans": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/7c203a8ac8bd48c3c4609a8effcd0fbac430f9b2/zh-Hans/frontend.json" } }, { @@ -234,25 +234,25 @@ const localazyMetadata: LocalazyMetadata = { file: "file.json", path: "", cdnFiles: { - "cs": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/cs/file.json", - "da": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/da/file.json", - "de": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/de/file.json", - "en": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/en/file.json", - "et": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/et/file.json", - "fi": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/fi/file.json", - "fr": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/fr/file.json", - "hu": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/hu/file.json", - "nb_NO": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/nb-NO/file.json", - "nl": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/nl/file.json", - "pl": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/pl/file.json", - "pt": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/pt/file.json", - "pt_BR": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/pt-BR/file.json", - "ru": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/ru/file.json", - "sk": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/sk/file.json", - "sv": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/sv/file.json", - "uk": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/uk/file.json", - "uz": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/uz/file.json", - "zh#Hans": "https://delivery.localazy.com/_a7686032324574572744739e0707/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/zh-Hans/file.json" + "cs": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/cs/file.json", + "da": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/da/file.json", + "de": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/de/file.json", + "en": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/en/file.json", + "et": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/et/file.json", + "fi": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/fi/file.json", + "fr": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/fr/file.json", + "hu": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/hu/file.json", + "nb_NO": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/nb-NO/file.json", + "nl": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/nl/file.json", + "pl": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/pl/file.json", + "pt": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/pt/file.json", + "pt_BR": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/pt-BR/file.json", + "ru": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/ru/file.json", + "sk": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/sk/file.json", + "sv": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/sv/file.json", + "uk": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/uk/file.json", + "uz": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/uz/file.json", + "zh#Hans": "https://delivery.localazy.com/_a65347067752521597762935bd1b/_e0/5b69b0350dccfd47c245a5d41c1b9fdf6912cc6e/zh-Hans/file.json" } } ] From e2771abd55289591a4bfe6e828f97e4ed4e6a298 Mon Sep 17 00:00:00 2001 From: Quentin Gliech Date: Fri, 15 May 2026 13:36:08 +0200 Subject: [PATCH 4/6] Bump lettre to mitigate RUSTSEC-2026-0141 This also bumps rustls-platform-verifier to avoid duplicated dependencies in the tree --- Cargo.lock | 204 +++++++++++++++++------------------------------------ Cargo.toml | 4 +- 2 files changed, 65 insertions(+), 143 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 95b40d8d9..575a51699 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -71,18 +71,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "ahash" -version = "0.8.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - [[package]] name = "aho-corasick" version = "1.1.3" @@ -852,12 +840,6 @@ dependencies = [ "shlex", ] -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - [[package]] name = "cfg-if" version = "1.0.3" @@ -927,16 +909,6 @@ dependencies = [ "chrono", ] -[[package]] -name = "chumsky" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eebd66744a15ded14960ab4ccdbfb51ad3b81f51f3f04a80adac98c985396c9" -dependencies = [ - "hashbrown 0.14.5", - "stacker", -] - [[package]] name = "cipher" version = "0.4.4" @@ -1727,7 +1699,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -2136,10 +2108,6 @@ name = "hashbrown" version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" -dependencies = [ - "ahash", - "allocator-api2", -] [[package]] name = "hashbrown" @@ -2857,25 +2825,52 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jni" -version = "0.21.1" +version = "0.22.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +checksum = "5efd9a482cf3a427f00d6b35f14332adc7902ce91efb778580e180ff90fa3498" dependencies = [ - "cesu8", "cfg-if", "combine", + "jni-macros", "jni-sys", "log", - "thiserror 1.0.69", + "simd_cesu8", + "thiserror 2.0.17", "walkdir", - "windows-sys 0.45.0", + "windows-link 0.2.1", +] + +[[package]] +name = "jni-macros" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a00109accc170f0bdb141fed3e393c565b6f5e072365c3bd58f5b062591560a3" +dependencies = [ + "proc-macro2", + "quote", + "rustc_version", + "simd_cesu8", + "syn", ] [[package]] name = "jni-sys" -version = "0.3.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn", +] [[package]] name = "jobserver" @@ -2977,14 +2972,13 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" [[package]] name = "lettre" -version = "0.11.19" +version = "0.11.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e13e10e8818f8b2a60f52cb127041d388b89f3a96a62be9ceaffa22262fef7f" +checksum = "0da65617f6cb926332d039cb578aad56178da86e128db6a1b09f4c94fa5b3349" dependencies = [ "async-std", "async-trait", "base64", - "chumsky", "email-encoding", "email_address", "fastrand", @@ -4080,7 +4074,7 @@ dependencies = [ "sha1", "sha2", "sprintf", - "thiserror 1.0.69", + "thiserror 2.0.17", "tokio", "tracing", "urlencoding", @@ -4693,7 +4687,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9120690fafc389a67ba3803df527d0ec9cbbc9cc45e4cc20b332996dfb672425" dependencies = [ "anyhow", - "itertools 0.13.0", + "itertools 0.14.0", "proc-macro2", "quote", "syn", @@ -4714,15 +4708,6 @@ version = "2.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33cb294fe86a74cbcf50d4445b37da762029549ebeea341421c7c70370f86cac" -[[package]] -name = "psm" -version = "0.1.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e944464ec8536cd1beb0bbfd96987eb5e3b72f2ecdafdc5c769a37f1fa2ae1f" -dependencies = [ - "cc", -] - [[package]] name = "pulley-interpreter" version = "43.0.2" @@ -5131,7 +5116,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -5172,9 +5157,9 @@ dependencies = [ [[package]] name = "rustls-platform-verifier" -version = "0.6.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be59af91596cac372a6942530653ad0c3a246cdd491aaa9dcaee47f88d67d5a0" +checksum = "26d1e2536ce4f35f4846aa13bff16bd0ff40157cdb14cc056c7b14ba41233ba0" dependencies = [ "core-foundation 0.10.1", "core-foundation-sys", @@ -5188,7 +5173,7 @@ dependencies = [ "security-framework", "security-framework-sys", "webpki-root-certs", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -5368,9 +5353,9 @@ dependencies = [ [[package]] name = "security-framework" -version = "3.4.0" +version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b369d18893388b345804dc0007963c99b7d665ae71d275812d828c6f089640" +checksum = "b3297343eaf830f66ede390ea39da1d462b6b0c1b000f420d0a83f898bbbe6ef" dependencies = [ "bitflags", "core-foundation 0.10.1", @@ -5732,6 +5717,22 @@ dependencies = [ "rand_core 0.6.4", ] +[[package]] +name = "simd_cesu8" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94f90157bb87cddf702797c5dadfa0be7d266cdf49e22da2fcaa32eff75b2c33" +dependencies = [ + "rustc_version", + "simdutf8", +] + +[[package]] +name = "simdutf8" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" + [[package]] name = "similar" version = "2.7.0" @@ -6023,19 +6024,6 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" -[[package]] -name = "stacker" -version = "0.1.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cddb07e32ddb770749da91081d8d0ac3a16f1a569a18b20348cd371f5dead06b" -dependencies = [ - "cc", - "cfg-if", - "libc", - "psm", - "windows-sys 0.59.0", -] - [[package]] name = "static_assertions" version = "1.1.0" @@ -6198,7 +6186,7 @@ dependencies = [ "getrandom 0.3.3", "once_cell", "rustix", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -7321,7 +7309,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -7406,15 +7394,6 @@ dependencies = [ "windows-link 0.2.1", ] -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] - [[package]] name = "windows-sys" version = "0.48.0" @@ -7460,21 +7439,6 @@ dependencies = [ "windows-link 0.2.1", ] -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - [[package]] name = "windows-targets" version = "0.48.5" @@ -7523,12 +7487,6 @@ dependencies = [ "windows_x86_64_msvc 0.53.0", ] -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -7547,12 +7505,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - [[package]] name = "windows_aarch64_msvc" version = "0.48.5" @@ -7571,12 +7523,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - [[package]] name = "windows_i686_gnu" version = "0.48.5" @@ -7607,12 +7553,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - [[package]] name = "windows_i686_msvc" version = "0.48.5" @@ -7631,12 +7571,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - [[package]] name = "windows_x86_64_gnu" version = "0.48.5" @@ -7655,12 +7589,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" @@ -7679,12 +7607,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - [[package]] name = "windows_x86_64_msvc" version = "0.48.5" diff --git a/Cargo.toml b/Cargo.toml index a81b62eff..a095184c4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -359,7 +359,7 @@ features = ["serde"] # Email sending [workspace.dependencies.lettre] -version = "0.11.19" +version = "0.11.22" default-features = false features = [ "tokio1-rustls", @@ -539,7 +539,7 @@ version = "1.13.0" # Use platform-specific verifier for TLS [workspace.dependencies.rustls-platform-verifier] -version = "0.6.1" +version = "0.7.0" # systemd service status notification [workspace.dependencies.sd-notify] From 3ab421191ea5b95ea1d97089979a052cfb5d1de6 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 19 May 2026 14:19:56 +0000 Subject: [PATCH 5/6] 1.17.0 --- Cargo.lock | 56 +++++++++++++++++++++++++------------------------- Cargo.toml | 60 +++++++++++++++++++++++++++--------------------------- 2 files changed, 58 insertions(+), 58 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 575a51699..5ca447c0b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3092,7 +3092,7 @@ dependencies = [ [[package]] name = "mas-axum-utils" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "axum", @@ -3126,7 +3126,7 @@ dependencies = [ [[package]] name = "mas-cli" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "axum", @@ -3201,7 +3201,7 @@ dependencies = [ [[package]] name = "mas-config" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "camino", @@ -3232,7 +3232,7 @@ dependencies = [ [[package]] name = "mas-context" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "console", "opentelemetry", @@ -3248,7 +3248,7 @@ dependencies = [ [[package]] name = "mas-data-model" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "base64ct", "chrono", @@ -3270,7 +3270,7 @@ dependencies = [ [[package]] name = "mas-email" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "async-trait", "lettre", @@ -3281,7 +3281,7 @@ dependencies = [ [[package]] name = "mas-handlers" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "aide", "anyhow", @@ -3362,7 +3362,7 @@ dependencies = [ [[package]] name = "mas-http" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "futures-util", "headers", @@ -3383,7 +3383,7 @@ dependencies = [ [[package]] name = "mas-i18n" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "camino", "icu_calendar", @@ -3405,7 +3405,7 @@ dependencies = [ [[package]] name = "mas-i18n-scan" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "camino", "clap", @@ -3419,7 +3419,7 @@ dependencies = [ [[package]] name = "mas-iana" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "schemars 0.9.0", "serde", @@ -3427,7 +3427,7 @@ dependencies = [ [[package]] name = "mas-iana-codegen" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "async-trait", @@ -3444,7 +3444,7 @@ dependencies = [ [[package]] name = "mas-jose" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "base64ct", "chrono", @@ -3474,7 +3474,7 @@ dependencies = [ [[package]] name = "mas-keystore" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "aead", "base64ct", @@ -3502,7 +3502,7 @@ dependencies = [ [[package]] name = "mas-listener" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "bytes", @@ -3526,7 +3526,7 @@ dependencies = [ [[package]] name = "mas-matrix" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "async-trait", @@ -3536,7 +3536,7 @@ dependencies = [ [[package]] name = "mas-matrix-synapse" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "async-trait", @@ -3553,7 +3553,7 @@ dependencies = [ [[package]] name = "mas-oidc-client" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "assert_matches", "async-trait", @@ -3589,7 +3589,7 @@ dependencies = [ [[package]] name = "mas-policy" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "arc-swap", @@ -3606,7 +3606,7 @@ dependencies = [ [[package]] name = "mas-router" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "axum", "serde", @@ -3617,7 +3617,7 @@ dependencies = [ [[package]] name = "mas-spa" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "camino", "serde", @@ -3626,7 +3626,7 @@ dependencies = [ [[package]] name = "mas-storage" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "async-trait", "chrono", @@ -3648,7 +3648,7 @@ dependencies = [ [[package]] name = "mas-storage-pg" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "async-trait", "chrono", @@ -3678,7 +3678,7 @@ dependencies = [ [[package]] name = "mas-tasks" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "async-trait", @@ -3710,7 +3710,7 @@ dependencies = [ [[package]] name = "mas-templates" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "arc-swap", @@ -3742,7 +3742,7 @@ dependencies = [ [[package]] name = "mas-tower" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "http", "opentelemetry", @@ -3995,7 +3995,7 @@ dependencies = [ [[package]] name = "oauth2-types" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "assert_matches", "base64ct", @@ -6094,7 +6094,7 @@ dependencies = [ [[package]] name = "syn2mas" -version = "1.17.0-rc.0" +version = "1.17.0" dependencies = [ "anyhow", "arc-swap", diff --git a/Cargo.toml b/Cargo.toml index a095184c4..5348f2b47 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -9,7 +9,7 @@ members = ["crates/*"] resolver = "2" # Updated in the CI with a `sed` command -package.version = "1.17.0-rc.0" +package.version = "1.17.0" package.license = "AGPL-3.0-only OR LicenseRef-Element-Commercial" package.authors = ["Element Backend Team"] package.edition = "2024" @@ -39,35 +39,35 @@ broken_intra_doc_links = "deny" [workspace.dependencies] # Workspace crates -mas-axum-utils = { path = "./crates/axum-utils/", version = "=1.17.0-rc.0" } -mas-cli = { path = "./crates/cli/", version = "=1.17.0-rc.0" } -mas-config = { path = "./crates/config/", version = "=1.17.0-rc.0" } -mas-context = { path = "./crates/context/", version = "=1.17.0-rc.0" } -mas-data-model = { path = "./crates/data-model/", version = "=1.17.0-rc.0" } -mas-email = { path = "./crates/email/", version = "=1.17.0-rc.0" } -mas-graphql = { path = "./crates/graphql/", version = "=1.17.0-rc.0" } -mas-handlers = { path = "./crates/handlers/", version = "=1.17.0-rc.0" } -mas-http = { path = "./crates/http/", version = "=1.17.0-rc.0" } -mas-i18n = { path = "./crates/i18n/", version = "=1.17.0-rc.0" } -mas-i18n-scan = { path = "./crates/i18n-scan/", version = "=1.17.0-rc.0" } -mas-iana = { path = "./crates/iana/", version = "=1.17.0-rc.0" } -mas-iana-codegen = { path = "./crates/iana-codegen/", version = "=1.17.0-rc.0" } -mas-jose = { path = "./crates/jose/", version = "=1.17.0-rc.0" } -mas-keystore = { path = "./crates/keystore/", version = "=1.17.0-rc.0" } -mas-listener = { path = "./crates/listener/", version = "=1.17.0-rc.0" } -mas-matrix = { path = "./crates/matrix/", version = "=1.17.0-rc.0" } -mas-matrix-synapse = { path = "./crates/matrix-synapse/", version = "=1.17.0-rc.0" } -mas-oidc-client = { path = "./crates/oidc-client/", version = "=1.17.0-rc.0" } -mas-policy = { path = "./crates/policy/", version = "=1.17.0-rc.0" } -mas-router = { path = "./crates/router/", version = "=1.17.0-rc.0" } -mas-spa = { path = "./crates/spa/", version = "=1.17.0-rc.0" } -mas-storage = { path = "./crates/storage/", version = "=1.17.0-rc.0" } -mas-storage-pg = { path = "./crates/storage-pg/", version = "=1.17.0-rc.0" } -mas-tasks = { path = "./crates/tasks/", version = "=1.17.0-rc.0" } -mas-templates = { path = "./crates/templates/", version = "=1.17.0-rc.0" } -mas-tower = { path = "./crates/tower/", version = "=1.17.0-rc.0" } -oauth2-types = { path = "./crates/oauth2-types/", version = "=1.17.0-rc.0" } -syn2mas = { path = "./crates/syn2mas", version = "=1.17.0-rc.0" } +mas-axum-utils = { path = "./crates/axum-utils/", version = "=1.17.0" } +mas-cli = { path = "./crates/cli/", version = "=1.17.0" } +mas-config = { path = "./crates/config/", version = "=1.17.0" } +mas-context = { path = "./crates/context/", version = "=1.17.0" } +mas-data-model = { path = "./crates/data-model/", version = "=1.17.0" } +mas-email = { path = "./crates/email/", version = "=1.17.0" } +mas-graphql = { path = "./crates/graphql/", version = "=1.17.0" } +mas-handlers = { path = "./crates/handlers/", version = "=1.17.0" } +mas-http = { path = "./crates/http/", version = "=1.17.0" } +mas-i18n = { path = "./crates/i18n/", version = "=1.17.0" } +mas-i18n-scan = { path = "./crates/i18n-scan/", version = "=1.17.0" } +mas-iana = { path = "./crates/iana/", version = "=1.17.0" } +mas-iana-codegen = { path = "./crates/iana-codegen/", version = "=1.17.0" } +mas-jose = { path = "./crates/jose/", version = "=1.17.0" } +mas-keystore = { path = "./crates/keystore/", version = "=1.17.0" } +mas-listener = { path = "./crates/listener/", version = "=1.17.0" } +mas-matrix = { path = "./crates/matrix/", version = "=1.17.0" } +mas-matrix-synapse = { path = "./crates/matrix-synapse/", version = "=1.17.0" } +mas-oidc-client = { path = "./crates/oidc-client/", version = "=1.17.0" } +mas-policy = { path = "./crates/policy/", version = "=1.17.0" } +mas-router = { path = "./crates/router/", version = "=1.17.0" } +mas-spa = { path = "./crates/spa/", version = "=1.17.0" } +mas-storage = { path = "./crates/storage/", version = "=1.17.0" } +mas-storage-pg = { path = "./crates/storage-pg/", version = "=1.17.0" } +mas-tasks = { path = "./crates/tasks/", version = "=1.17.0" } +mas-templates = { path = "./crates/templates/", version = "=1.17.0" } +mas-tower = { path = "./crates/tower/", version = "=1.17.0" } +oauth2-types = { path = "./crates/oauth2-types/", version = "=1.17.0" } +syn2mas = { path = "./crates/syn2mas", version = "=1.17.0" } # OpenAPI schema generation and validation [workspace.dependencies.aide] From f0100c4fa891d72a9e7dd90332d87c1a2f835de9 Mon Sep 17 00:00:00 2001 From: Quentin Gliech Date: Wed, 20 May 2026 09:34:26 +0200 Subject: [PATCH 6/6] Disable provenance in the metadata output --- .github/workflows/build.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 255771d3e..79cf89b33 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -282,6 +282,14 @@ jobs: - name: Build and push id: bake uses: docker/bake-action@a66e1c87e2eca0503c343edf1d208c716d54b8a8 # v7.1.0 + env: + # By default, docker bake will add provenance information to the + # metadata output. This makes the output larger and may exceed the + # shell ARG_MAX limit. Disabling through this environment variable + # disables provenance in the metadata while still attaching provenance + # attestations to the image we push. + # https://github.com/docker/bake-action/issues/239#issuecomment-3828170326 + BUILDX_METADATA_PROVENANCE: disabled with: files: | ./docker-bake.hcl