From 797435523455c9d54cf4357f3be5f1d2220ccb91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kyle=20=F0=9F=90=86?= Date: Tue, 6 Oct 2026 14:00:35 -0400 Subject: [PATCH] Release v0.9.0 --- CHANGELOG.md | 9 ++++++++- build.zig.zon | 2 +- nix/package.nix | 2 +- src/main.zig | 2 +- src/nip11.zig | 2 +- 5 files changed, 12 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 005a0a5..57ee600 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.9.0] - 2026-10-06 + +Serves NIP-17 / NIP-59 gift wraps only to their authenticated recipients, limits what the spider stores from upstream relays, and lets the NixOS module keep config values out of the Nix store. Clients reading gift wraps must now authenticate with NIP-42. + ### Added - `[spider] mention_events_per_minute` (`WISP_SPIDER_MENTION_EVENTS_PER_MINUTE`, default 600): per upstream relay, a cap on events stored only because they p-tag a follow. Their authors are not followed, so anyone can create them in bulk; events by follows and the admin are never limited. Mentions dropped over the cap are not fetched again later. `0` removes the cap. @@ -314,7 +318,10 @@ rolling out. - Import/export to JSONL format - Configuration via TOML file or environment variables -[Unreleased]: https://github.com/privkeyio/wisp/compare/v0.6.1...HEAD +[Unreleased]: https://github.com/privkeyio/wisp/compare/v0.9.0...HEAD +[0.9.0]: https://github.com/privkeyio/wisp/compare/v0.8.0...v0.9.0 +[0.8.0]: https://github.com/privkeyio/wisp/compare/v0.7.0...v0.8.0 +[0.7.0]: https://github.com/privkeyio/wisp/compare/v0.6.1...v0.7.0 [0.6.1]: https://github.com/privkeyio/wisp/compare/v0.6.0...v0.6.1 [0.6.0]: https://github.com/privkeyio/wisp/compare/v0.5.15...v0.6.0 [0.5.15]: https://github.com/privkeyio/wisp/compare/v0.5.14...v0.5.15 diff --git a/build.zig.zon b/build.zig.zon index 896303f..ee873c2 100644 --- a/build.zig.zon +++ b/build.zig.zon @@ -1,6 +1,6 @@ .{ .name = .wisp, - .version = "0.8.0", + .version = "0.9.0", .fingerprint = 0xc4bdec9fe6401a8d, .dependencies = .{ // websocket.zig: client for spider outbound connections and the epoll diff --git a/nix/package.nix b/nix/package.nix index bdfa7e4..95ebfac 100644 --- a/nix/package.nix +++ b/nix/package.nix @@ -20,7 +20,7 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "wisp"; - version = "0.8.0"; # keep in sync with build.zig.zon .version + version = "0.9.0"; # keep in sync with build.zig.zon .version inherit src; nativeBuildInputs = [ zig_0_17 ]; diff --git a/src/main.zig b/src/main.zig index a140609..0ce6854 100644 --- a/src/main.zig +++ b/src/main.zig @@ -157,7 +157,7 @@ pub fn main(init: std.process.Init) !void { return error.InvalidSyncMode; }; - std.log.info("Wisp v0.8.0 starting", .{}); + std.log.info("Wisp v0.9.0 starting", .{}); std.log.info("Listening on {s}:{d}", .{ config.host, config.port }); std.log.info("Storage: {s} (sync={s})", .{ config.storage_path, @tagName(sync_mode) }); diff --git a/src/nip11.zig b/src/nip11.zig index 739e91e..3cad667 100644 --- a/src/nip11.zig +++ b/src/nip11.zig @@ -43,7 +43,7 @@ pub fn write(config: *const Config, nip86: *const Nip86Handler, w: anytype) !voi try w.writeAll(",\"supported_nips\":[1,2,9,11,13,16,17,33,40,42,45,50,51,59,65,70,77,78,86]"); try w.writeAll(",\"software\":\"https://github.com/privkeyio/wisp\""); - try w.writeAll(",\"version\":\"0.8.0\""); + try w.writeAll(",\"version\":\"0.9.0\""); try w.writeAll(",\"limitation\":{"); try w.print("\"max_message_length\":{d}", .{config.max_message_size});