release: 2.16.0: the queues as tables
test / test (push) Waiting to run

Outbound › Queue is the table the 2.0 mockup drew, and Inbound › Queue is
built (6db3704, design 629de5e, guards 8525e8e, e2e 853e0ca); the Overview
card names both queues; TestUnbuiltScreensAreOnTheRoadmap keeps a deferred
screen from being forgotten again. With it, two gaps the comparison of every
mockup found (6edf831). No migration, schema 14.

CHANGELOG section; pins in deploy/docker-compose.yml, README (build note)
and the guide (pin, build, the backup example). No tag.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
mix
2026-10-18 23:36:17 +03:00
co-authored by Claude Opus 5.5
parent 853e0cabf3
commit b1882b84f8
4 changed files with 13 additions and 8 deletions
+5
View File
@@ -5,6 +5,11 @@ Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); version
## [Unreleased] ## [Unreleased]
## [2.16.0] - 2026-10-18
The queues as the 2.0 mockups drew them: Outbound › Queue a table, Inbound ›
Queue built. No migration; schema 14.
### Added ### Added
- **Inbound › Queue** (`/inbound/queue`, global role, with the inbound relay - **Inbound › Queue** (`/inbound/queue`, global role, with the inbound relay
+3 -3
View File
@@ -112,8 +112,8 @@ outbound mail will not reach the real internet without DNS, PTR, and port 25.
> local image and pulls nothing: > local image and pulls nothing:
> >
> ```sh > ```sh
> docker build -f build/Dockerfile --build-arg VERSION=2.15.0 \ > docker build -f build/Dockerfile --build-arg VERSION=2.16.0 \
> -t ghcr.io/mixeme/selfpost:2.15.0 . > -t ghcr.io/mixeme/selfpost:2.16.0 .
> ``` > ```
```sh ```sh
@@ -122,7 +122,7 @@ docker run --rm -d --name selfpost-try \
-e SELFPOST_HOSTNAME=mail.local.test \ -e SELFPOST_HOSTNAME=mail.local.test \
-e PANEL_COOKIE_SECURE=false \ -e PANEL_COOKIE_SECURE=false \
-v selfpost-try-data:/data \ -v selfpost-try-data:/data \
ghcr.io/mixeme/selfpost:2.15.0 ghcr.io/mixeme/selfpost:2.16.0
``` ```
This trial runs with Docker's default capabilities and no This trial runs with Docker's default capabilities and no
+1 -1
View File
@@ -23,7 +23,7 @@
services: services:
selfpost: selfpost:
image: ghcr.io/mixeme/selfpost:2.15.0 image: ghcr.io/mixeme/selfpost:2.16.0
restart: unless-stopped restart: unless-stopped
environment: environment:
SELFPOST_HOSTNAME: "${SELFPOST_HOSTNAME:?set the mail/panel hostname, e.g. mail.example.com}" SELFPOST_HOSTNAME: "${SELFPOST_HOSTNAME:?set the mail/panel hostname, e.g. mail.example.com}"
+4 -4
View File
@@ -218,14 +218,14 @@ cat ./data/setup-token
#### Fixed image tag #### Fixed image tag
`deploy/docker-compose.yml` pins an explicit version (`ghcr.io/mixeme/selfpost:X.Y.Z`), `deploy/docker-compose.yml` pins an explicit version (`ghcr.io/mixeme/selfpost:X.Y.Z`),
deliberately never `:latest`. The current pin is `2.15.0`. **No 2.x image is deliberately never `:latest`. The current pin is `2.16.0`. **No 2.x image is
published on ghcr.io yet** (the newest there is `1.3.0`); until one is, build published on ghcr.io yet** (the newest there is `1.3.0`); until one is, build
it from the checkout under the pinned name, and Compose uses the local image it from the checkout under the pinned name, and Compose uses the local image
instead of pulling: instead of pulling:
```sh ```sh
docker build -f build/Dockerfile --build-arg VERSION=2.15.0 \ docker build -f build/Dockerfile --build-arg VERSION=2.16.0 \
-t ghcr.io/mixeme/selfpost:2.15.0 . -t ghcr.io/mixeme/selfpost:2.16.0 .
``` ```
`VERSION` must equal the tag: it is the version the backup check compares `VERSION` must equal the tag: it is the version the backup check compares
@@ -1084,7 +1084,7 @@ A version mismatch at step 5 refuses to start and leaves `/data` untouched —
the panel exits with a message naming the tag to use, e.g.: the panel exits with a message naming the tag to use, e.g.:
``` ```
backup: this backup was created by SelfPost 2.14.5 but this image is 2.15.0 — restore into the matching image (selfpost:2.14.5) backup: this backup was created by SelfPost 2.15.0 but this image is 2.16.0 — restore into the matching image (selfpost:2.15.0)
``` ```
Fix the tag in `docker-compose.yml` (build that tag as under [Fixed image Fix the tag in `docker-compose.yml` (build that tag as under [Fixed image