Skip to content

Releases: barats/xmailman

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 10 Sep 04:17

xMailman v0.4.0

The first release under the new name. xListman is now xMailman — a
full identity change, not a rebrand: the Go module path
(github.com/barats/xmailman), the binary, the XMAILMAN_* environment
variables, the config file (xmailman.yaml), the systemd unit, the Docker
image (ghcr.io/barats/xmailman), and the web UI all use the new name. The
GitHub repository was renamed in place, so old clone, go-import, release, and
advisory URLs redirect to the new home.

Upgrade note — clean break, no aliases. v0.4.0 keeps no
xlistman-named compatibility shims: no legacy config filename fallback,
no XLISTMAN_* env prefix support, no xlistman binary symlink. If you run
0.3.x, rename your config file, environment variables, and systemd unit
before upgrading. See
ADR 0028
for the full decision record.

Changelog

  • chore: rename xListman to xMailman (module, binary, env, docs, repo)

Assets

Binaries for linux and darwin (amd64 + arm64) with embedded web UI, plus a
multi-arch Docker image on GHCR: ghcr.io/barats/xmailman:0.4.0 (also tagged
latest).

The name remains an explicit homage to GNU Mailman: xMailman is a
self-contained, one-binary alternative to it.

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 07 Sep 09:12

Changelog

  • dd95182 web: add brand assets (PNG favicons, manifest, logo) and social card tags
  • d3a6a25 web: center 'Powered by xListman {version}' footer linking to xlistman.com

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 21 Aug 03:42

Changelog

  • 437ed5c Clarify in README that go install produces a UI-less binary
  • 0926386 Fix Docker quickstart image tag (release publishes :0.1.0, not :v0.1.0)
  • 8ca70e7 smtp: add outbound TLS modes and refuse auth without encryption
  • 8c18380 web: add per-page titles, SEO meta tags, and robots rules

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 20 Aug 05:11

Changelog

  • 7b88110 Add List Role term and plan Phase 5: web role console (moderation + allowlist)
  • b1a234d Add Phase 10 bounce management plan, ADR 0019, and corrected Disabled Subscription semantics
  • 005e518 Add Phase 10 bounce management: Bounces tab, re-enable/reset, owner auto-disable notice
  • 9df8d41 Add Phase 14 CSV member import/export: Members-tab import/export, CLI parity, member.import audit (ADR 0024)
  • a272660 Add Phase 5 role console: web moderation and the newsletter allowlist
  • 52888fd Add Phase 6 admin console: web settings, membership, and roles
  • 8d9479b Add Phase 7 server administration: the Administrator role
  • ea223f2 Add Phase 8 audit trail plan, ADR 0018, and Audit Event glossary term
  • 762b082 Add Phase 8 audit trail: record privileged actions across email/CLI/web
  • 3d4affe Add Phase 9 sender held-status view: posts awaiting approval on /me
  • 1d81797 Add README with screenshots captured from a live seeded instance
  • 340313c Add agent-executed frontend e2e test suite (chrome-devtools MCP)
  • 0c2277f Add domain model and architectural decisions for xListman
  • a539137 Add email command interface (-request) and owner forwarding
  • 7d91377 Add open-source packaging: MIT license, security policy, CI, and releases
  • c3bb005 Add paged/searchable members and filterable audit trails to the web consoles
  • c1f7dd0 Add per-list attachment policy and MIME-aware archive rendering (Phase 15, ADRs 0025-0026)
  • 41ab347 Add web access control: DB-backed login and management toggles (ADR 0020)
  • 133ce0a Apply launch hygiene: gofmt alignment, SPA-build gitignore, fixture owner rename
  • 99af804 Bump GitHub Actions to latest versions
  • 8953a52 CLI command check
  • f376b0f Commit embedded SvelteKit SPA build so go build alone yields a complete binary
  • 865a8b9 Complete Phase 2: digest worker, queue max-retry bounce, expiry sweeper
  • 9a638ad Complete moderation: email and CLI actions on held messages
  • 6b8c86b Distinguish 401 vs 403 on the members-only archive gate
  • c81d58f Embed SvelteKit SPA in the Go binary and serve it with client-route fallback
  • b4dd35a Fix Bounces tab description copy
  • 9f99f52 Fix magic link URL so emailed login reaches the API verify endpoint
  • 38b977a Fix release: run goreleaser hooks without a shell; fetch tags in docker job
  • a17806a Implement runnable daemon and complete the subscribe-confirm-post-deliver loop
  • 6fd2f13 Implement web API: passwordless auth, self-service, members-only archives
  • 2faf16e Implement xListman core: Go backend with GORM, LMTP, CLI, and HTTP API
  • 55c85ad Move screenshots.yaml to script
  • ac473e2 Move the e2e config into scripts/ so all e2e tooling lives together
  • a1b6498 Re-route frontend: My lists at /admin, server admin at /server
  • 5c566f6 Refresh embedded SPA build (regenerated by make build)
  • 83d93e2 Remove the Makefile; goreleaser + scripts + CI cover its jobs
  • 43c7b4f Restore web/build/.gitkeep so go:embed works on a fresh checkout
  • 90cba33 Role-gate the My lists and Server nav items
  • f8c0977 Ship CA certs in Docker image; ignore goreleaser dist output
  • a8bada6 Show README screenshots as clickable thumbnails
  • bac521d Stop tracking the SPA build; add responsive menus, tab reorder, multi-line instructions, and configurable notice emails
  • c6024df Validate the LMTP loop against exim; add the MTA validation harness
  • ef67344 Web protecting: rate limiting, public page caching, and N+1 fix (ADR 0023)
  • 882234e mail: accept the null LMTP sender to close the VERP bounce loop