Commit Graph
79 Commits
Author SHA1 Message Date
Linus Rath 4efb9a2a75 docs: list the private monthly sponsor in the 1.17.2 changelog 2026-10-24 22:59:08 +02:00
Linus Rath 5872bf20e9 chore: release 1.17.2 2026-10-24 22:46:52 +02:00
Linus Rath d1f4ccaccf Update CHANGELOG for version 1.17.1 release
Updated the changelog to reflect the release of version 1.17.1 and removed the unreleased section for version 1.17.2.
2026-10-22 23:49:30 +02:00
Linus Rath 8a31a83bc9 fix: update next.js and dompurify for published advisories 2026-10-22 23:39:03 +02:00
Linus Rath 2be5408be5 chore: release 1.17.1 2026-10-22 23:22:40 +02:00
Linus Rath ba44434401 chore: release 1.17.0 2026-10-21 23:28:02 +02:00
Linus Rath 2196a4e4f4 chore: revert the 1.17.0 release 2026-10-20 17:32:54 +02:00
Linus Rath df2e4eeb13 chore: release 1.17.0 2026-10-20 17:26:41 +02:00
Linus Rath f858ab713a chore: release 1.16.0 2026-10-19 21:19:36 +02:00
Linus Rath fc22f111ef chore: release 1.15.0 2026-10-15 23:58:21 +02:00
Linus Rath 5f2d26f2e1 chore: release 1.14.2 2026-10-12 07:49:08 +02:00
Linus Rath 2534c4fde5 chore: release 1.14.1 2026-10-11 22:36:24 +02:00
Linus Rath a248144e54 chore: release 1.14.0 2026-10-11 21:08:32 +02:00
Linus Rath 3d48b12204 chore: release 1.13.0 2026-10-07 20:37:49 +02:00
Linus Rath c9900d3df5 chore: release 1.12.0 2026-09-30 21:27:25 +02:00
Linus Rath e2a4145939 chore: release 1.11.2 2026-09-26 22:18:23 +02:00
Linus Rath e82391c846 chore: release 1.11.1 2026-09-26 21:56:13 +02:00
Linus Rath e752355311 chore: release 1.11.0 2026-09-23 21:18:21 +02:00
Linus Rath 2d8de2a817 chore: release 1.11.0-beta.3 2026-09-23 18:16:47 +02:00
Linus Rath 7d3f3c2f4d chore: release 1.11.0-beta.2 (Bulwark Lite pre-release) 2026-09-21 20:54:05 +02:00
Linus Rath 7b07d25386 chore: release 1.11.0-beta.1 (Bulwark Lite pre-release)
Keep the latest Docker tags on the stable release when a GitHub release is marked as a pre-release, so auto-updating deployments on :latest do not pick up beta builds.
2026-09-19 15:04:49 +02:00
Linus Rath f12d056522 chore: update version to 1.10.0 2026-09-17 22:53:58 +02:00
Linus Rath 2f1192bb32 chore: update version to 1.9.2 2026-08-26 22:17:07 +02:00
Linus Rath b1271827e8 chore: update version to 1.9.1 2026-08-26 19:40:16 +02:00
Linus Rath e5d5847169 chore: update version to 1.9.0 2026-08-25 21:03:52 +02:00
Linus Rath a066108d35 chore: update version to 1.8.1 2026-08-07 01:56:25 +02:00
Linus Rath b50f71fa5c chore: update version to 1.8.0 2026-08-06 19:32:26 +02:00
Linus Rath 7511d8ea78 chore: update version to 1.7.8 2026-07-22 19:43:09 +02:00
Linus Rath fa31933922 chore: update version to 1.7.7 2026-07-09 16:25:12 +02:00
Linus Rath 2f5b133000 chore: update version to 1.7.6 2026-06-28 20:47:39 +02:00
Linus Rath de56229ef2 chore: update version to 1.7.5 2026-06-24 20:06:03 +02:00
Linus Rath 0872d3dc8d chore: update version to 1.7.4 2026-06-15 23:28:20 +02:00
Linus Rath 27d624758a chore: update version to 1.7.3 2026-06-04 10:15:50 +02:00
Linus Rath 00b40fc48a chore: update version to 1.7.2 2026-05-28 20:31:03 +02:00
Linus Rath 1fc6185002 chore: update version to 1.7.1 2026-05-22 12:22:03 +02:00
Linus Rath 7142627cec chore: update version to 1.7.0 2026-05-22 00:51:38 +02:00
Linus Rath 08c85a42e1 chore: update version to 1.7.0 2026-05-21 23:47:31 +02:00
Linus Rath 8c5aec9ca4 chore: update version to 1.6.7 2026-05-17 18:17:13 +02:00
Linus Rath 105194a8b9 chore: update version to 1.6.6 2026-05-15 15:20:07 +02:00
Linus Rath dfe886636b fix: broaden body font for non Latin script rendering #265 2026-05-13 14:43:07 +02:00
Linus Rath f499e87d2a chore: update version to 1.6.5 2026-05-13 14:38:00 +02:00
Linus Rath 2ad2bb1e09 chore: update version to 1.6.4 2026-05-11 20:00:55 +02:00
Linus Rath 090399a308 chore: update version to 1.6.3 2026-05-08 21:10:21 +02:00
Linus Rath 178922323d chore: update version to 1.6.2 2026-05-06 20:07:36 +02:00
Linus Rath d1c5dba7d7 chore: update version to 1.6.1 2026-05-04 12:34:53 +02:00
Linus Rath 4be7176802 chore: update version to 1.6.0 2026-05-01 21:56:53 +02:00
Linus Rath 6a8ad525f1 chore: update version to 1.5.4 2026-05-01 02:17:33 +02:00
Linus Rath fc49fe0687 chore: update version to 1.5.3 2026-04-28 18:43:09 +02:00
Linus Rath 8935b81f12 chore: update version to 1.5.3 2026-04-28 17:34:06 +02:00
Linus Rath 54af07f2af feat: add anonymous instance telemetry
Adds a once-per-day heartbeat that lets the project see how many
instances run Bulwark, on what platforms, with what features enabled,
and roughly how many accounts they have. No email addresses, hostnames,
IPs, or any end-user data are ever sent.

- lib/telemetry: state file, payload builder, jittered scheduler,
  instance_id persistence at <data-dir>/.telemetry-id (delete to reset)
- app/api/admin/telemetry: admin API for status / set-consent /
  set-endpoint / send-now (all audit-logged)
- app/admin/telemetry: settings page with status, JSON payload preview,
  endpoint editor, send-now button, link to the privacy page
- instrumentation.node.ts: starts the scheduler on boot

Default state is enabled. The first heartbeat fires 1 hour after boot
so an admin who installs and immediately disables produces zero pings.
Disable via the settings UI, BULWARK_TELEMETRY=off (or
BULWARK_TELEMETRY_DISABLED=1), or by clearing the endpoint.

Account counts are bucketed (1, 2-5, 6-10, 11-50, 51-200, 201+) so a
small instance can't be re-identified by exact size. The /.telemetry-id
file can be deleted to mint a fresh instance_id.

Receiving collector is open source at bulwarkmail/dashboard. Self-host
your own and point at it via BULWARK_TELEMETRY_URL. Full schema,
retention (90d raw → aggregates), and lawful basis are documented at
bulwarkmail.org/docs/legal/privacy/telemetry.
2026-04-28 01:28:41 +02:00