Files
jcoffey-dev 878aa2e682
ci / fork-checks (pull_request) Skipped
ci / build (pull_request) Skipped
github/ci (branch) GitHub Actions
ci / github (pull_request) Successful in 7m26s
Switch off upstream's web interface when a Stalwart store is first opened
A store brought over from Stalwart 0.16 lists upstream's web interface as
an Application, so inbuxa fetched it and served it at /admin. The first
time inbuxa opens a store without its version mark, it now switches that
Application off and keeps the record, logging how to switch it back on.
The mark written on the same start keeps this to once, so an operator who
wants the interface back keeps it. Other applications aren't touched.

Settles the open question in docs/spec/import-0.16.md; SPEC.md §5.3 and
the import check follow.
2026-10-29 21:55:02 -07:00

49 lines
3.1 KiB
Plaintext

# String literals allowed to keep the upstream project's name.
# Read by tools/fork/name-check.py. One per line: path<TAB>literal as a JSON
# string, as `name-check.py --list` prints it. Each group says why it stays;
# add a line only under a reason, or with a new one.
#
# Everything clients, users and operators meet was renamed on 2026-09-22
# (docs/spec/SPEC.md §2.4, tools/fork/renames.py). What's left is invisible,
# or names the old spelling in order to retire it.
# Key-derivation contexts. Nobody sees them, and renaming them would
# invalidate every sealed OAuth token and client id already issued.
crates/common/src/auth/oauth/client_id.rs "stalwart-oauth-client-id-sw1"
crates/common/src/auth/oauth/token.rs "stalwart-oauth-token-sw1"
# Hashed before it's used as a blob key, so it never appears anywhere.
crates/common/src/manager/application.rs "STALWART_APP_"
# Pre-rename names, read only to retire them: the web interface's OAuth
# client (removed on start), the spam filter's blobs (moved to their new
# keys), and the environment prefix (refused with the variable to rename).
crates/common/src/manager/first_party.rs "stalwart-webui"
crates/migration/src/lib.rs "STALWART_SPAM_CLASSIFIER_MODEL.lz4"
crates/migration/src/lib.rs "STALWART_SPAM_TRAIN_DATA.lz4"
crates/types/src/branding.rs "STALWART"
# Pre-rename Sieve extension names, accepted as aliases so scripts written
# for upstream still compile when edited. Never advertised; the test proves it.
vendor/sieve-rs/src/compiler/grammar/mod.rs "vnd.stalwart.while"
vendor/sieve-rs/src/compiler/grammar/mod.rs "vnd.stalwart.expressions"
vendor/sieve-rs/src/compiler/grammar/mod.rs "require [\\\"vnd.stalwart.expressions\\\", \\\"variables\\\"];\\nlet \\\"n\\\" \\\"1 + 2\\\";\\n"
# Upstream's old default rules source, read only to treat it as unset: the
# server uses the rules bundled with it (resources/spam-filter/).
crates/common/src/manager/spam_rules.rs "https://github.com/stalwartlabs/spam-filter/releases/latest/download/spam-filter-rules.json.gz"
# Upstream's web interface downloads, used only by an install upgraded from
# Stalwart that still has its web application: inbuxa installs none
# (docs/spec/SPEC.md §5.3), and the pin keeps an upgraded one on the 1.x
# bundles this server line can serve.
crates/common/src/manager/defaults.rs "https://github.com/stalwartlabs/webui/releases/download/v1.0.11/webui.zip"
crates/common/src/manager/defaults.rs "https://github.com/stalwartlabs/webui/releases/latest/download/webui.zip"
# Recognising that web application in a store brought over from Stalwart, to
# switch it off on first open (docs/spec/import-0.16.md).
crates/common/src/manager/first_party.rs "https://github.com/stalwartlabs/webui/"
crates/common/src/manager/first_party.rs "https://github.com/stalwartlabs/webui/releases/download/v1.0.11/webui.zip"
crates/common/src/manager/first_party.rs "https://github.com/stalwartlabs/webui/releases/latest/download/webui.zip"
crates/common/src/manager/first_party.rs "https://github.com/stalwartlabs/webui-fork/releases/download/v1/webui.zip"
crates/common/src/manager/first_party.rs "https://example.org/github.com/stalwartlabs/webui/webui.zip"