From 0c68396d5bee306b19dab5986edf8bd6ef37e112 Mon Sep 17 00:00:00 2001 From: Bendik Aagaard Lynghaug Date: Wed, 23 Sep 2026 21:15:40 +0200 Subject: [PATCH] Release 0.3.44 The mail stream is `mail`, not shouted; gdo 0.1.2 matches. Co-Authored-By: Claude Fable 5.1 --- CHANGELOG.md | 4 ++++ Cargo.lock | 2 +- Cargo.toml | 2 +- src/mail.rs | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dc2194c..7d27b8d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ One line per change, grouped by the release that shipped it. Newest first. A release is a Cargo.toml bump plus a `v` tag; the content repos pin the tag they run (see the end of this file). +## 0.3.44 (2026-09-23) + +- The mail stream is named `mail` (was `WORMHOLE`); gdo 0.1.2 matches. Delete the old stream on each NATS after upgrading both. + ## 0.3.43 (2026-09-23) - Mail is content: `mail: { to, subject, body }` on a state in aggregates.yaml sends when a record enters that state (`to: submitter` or one address; `{field}`, `{site}`, `{chain}`, `{email}` in the templates), and an invite mails its one-time link built in; `site.yaml` gains `mail: { from, reply_to, invite }`. Portal renders and publishes on `portal.mail.send` in the `WORMHOLE` stream; uhhm/gdo delivers. The lint requires a required `email` field on every form recording into a bucket that mails the submitter. diff --git a/Cargo.lock b/Cargo.lock index bfc60f2..5029afd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3265,7 +3265,7 @@ dependencies = [ [[package]] name = "portal" -version = "0.3.43" +version = "0.3.44" dependencies = [ "anyhow", "arc-swap", diff --git a/Cargo.toml b/Cargo.toml index 7044a0b..1371ab6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "portal" -version = "0.3.43" +version = "0.3.44" edition = "2021" [lib] diff --git a/src/mail.rs b/src/mail.rs index e467ea9..4e40c40 100644 --- a/src/mail.rs +++ b/src/mail.rs @@ -16,7 +16,7 @@ use std::time::Duration; /// The stream both sides create on boot, with the same config, so /// whichever starts first owns nothing the other lacks. -pub const STREAM: &str = "WORMHOLE"; +pub const STREAM: &str = "mail"; pub const SUBJECTS: &str = "portal.mail.>"; pub const SUBJECT: &str = "portal.mail.send"; /// Bumped when `Outgoing` changes shape; gdo refuses what it does not