Cut without asking, as the owner said on 2026-10-15, after his choice of
2026-10-16 ("1"): Postfix makes long queue ids (enable_long_queue_ids=yes),
so a later message can no longer meet an earlier one's rows. go vet, go test
(26 packages) and make e2e passed on the test server for that tree, long
ids on both an outbound and an inbound row. No migration, schema 12.
CHANGELOG [2.10.1]; pins in deploy/docker-compose.yml, README and the guide
(pin, build, the sample restore message); development's "from pin" and
row 33. No tag.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -5,6 +5,10 @@ Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); version
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [2.10.1] - 2026-10-16
|
||||
|
||||
Postfix's queue ids no longer repeat. No migration; schema 12.
|
||||
|
||||
### Fixed
|
||||
|
||||
- **Queue ids no longer repeat**: Postfix makes long, non-repeating queue ids
|
||||
|
||||
@@ -112,8 +112,8 @@ outbound mail will not reach the real internet without DNS, PTR, and port 25.
|
||||
> local image and pulls nothing:
|
||||
>
|
||||
> ```sh
|
||||
> docker build -f build/Dockerfile --build-arg VERSION=2.10.0 \
|
||||
> -t ghcr.io/mixeme/selfpost:2.10.0 .
|
||||
> docker build -f build/Dockerfile --build-arg VERSION=2.10.1 \
|
||||
> -t ghcr.io/mixeme/selfpost:2.10.1 .
|
||||
> ```
|
||||
|
||||
```sh
|
||||
@@ -122,7 +122,7 @@ docker run --rm -d --name selfpost-try \
|
||||
-e SELFPOST_HOSTNAME=mail.local.test \
|
||||
-e PANEL_COOKIE_SECURE=false \
|
||||
-v selfpost-try-data:/data \
|
||||
ghcr.io/mixeme/selfpost:2.10.0
|
||||
ghcr.io/mixeme/selfpost:2.10.1
|
||||
```
|
||||
|
||||
**Get the setup URL** (pick one):
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
services:
|
||||
selfpost:
|
||||
image: ghcr.io/mixeme/selfpost:2.10.0
|
||||
image: ghcr.io/mixeme/selfpost:2.10.1
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
SELFPOST_HOSTNAME: "${SELFPOST_HOSTNAME:?set the mail/panel hostname, e.g. mail.example.com}"
|
||||
|
||||
+2
-1
@@ -107,7 +107,7 @@ than the default «meaningful step» rule in [§ Commits and release build](#com
|
||||
2. Git tag `vX.Y.Z` and publish the GitHub Release only on explicit request (see
|
||||
[§ Release image](#release-image)).
|
||||
|
||||
**Planned version cuts** (from pin `2.10.0`; adjust if semver changes mid-track):
|
||||
**Planned version cuts** (from pin `2.10.1`; adjust if semver changes mid-track):
|
||||
|
||||
| Stage | ID | Cut |
|
||||
|---|---|---|
|
||||
@@ -143,6 +143,7 @@ than the default «meaningful step» rule in [§ Commits and release build](#com
|
||||
| 30 | dns-record-collapse, settings-save-row, notification-mail-recheck; `/data/opendkim` removed | `2.9.0` |
|
||||
| 31 | log panes wrap on a phone | `2.9.1` (PATCH) |
|
||||
| 32 | inbound-upstream-result | `2.10.0` |
|
||||
| 33 | long, non-repeating queue ids | `2.10.1` (PATCH) |
|
||||
|
||||
Docs-only prep (checklists in plans, no product code) uses the same per-step
|
||||
commit rule but **no** version cut until the next product stage ships.
|
||||
|
||||
+4
-4
@@ -204,14 +204,14 @@ cat ./data/setup-token
|
||||
#### Fixed image tag
|
||||
|
||||
`deploy/docker-compose.yml` pins an explicit version (`ghcr.io/mixeme/selfpost:X.Y.Z`),
|
||||
deliberately never `:latest`. The current pin is `2.10.0`. **No 2.x image is
|
||||
deliberately never `:latest`. The current pin is `2.10.1`. **No 2.x image is
|
||||
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
|
||||
instead of pulling:
|
||||
|
||||
```sh
|
||||
docker build -f build/Dockerfile --build-arg VERSION=2.10.0 \
|
||||
-t ghcr.io/mixeme/selfpost:2.10.0 .
|
||||
docker build -f build/Dockerfile --build-arg VERSION=2.10.1 \
|
||||
-t ghcr.io/mixeme/selfpost:2.10.1 .
|
||||
```
|
||||
|
||||
`VERSION` must equal the tag: it is the version the backup check compares
|
||||
@@ -944,7 +944,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.:
|
||||
|
||||
```
|
||||
backup: this backup was created by SelfPost 2.9.1 but this image is 2.10.0 — restore into the matching image (selfpost:2.9.1)
|
||||
backup: this backup was created by SelfPost 2.10.0 but this image is 2.10.1 — restore into the matching image (selfpost:2.10.0)
|
||||
```
|
||||
|
||||
Fix the tag in `docker-compose.yml` (build that tag as under [Fixed image
|
||||
|
||||
Reference in New Issue
Block a user