From c5ddd88cbd5fa4d6ebfcc93c852745f73b341620 Mon Sep 17 00:00:00 2001 From: Jure <44338+hoornet@users.noreply.github.com> Date: Sun, 29 Mar 2026 16:28:33 +0200 Subject: [PATCH] =?UTF-8?q?Bump=20to=20v0.9.8=20=E2=80=94=20Web=20of=20Tru?= =?UTF-8?q?st,=20instant=20notifications,=20profile=20retry?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/release.yml | 13 ++++++++----- CLAUDE.md | 7 ++++--- PKGBUILD | 2 +- package.json | 2 +- src-tauri/Cargo.toml | 2 +- src-tauri/tauri.conf.json | 2 +- 6 files changed, 16 insertions(+), 12 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7f24cb7..94ac9ac 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -69,11 +69,14 @@ jobs: > **Windows note:** The installer is not yet code-signed. Windows SmartScreen will show an "Unknown publisher" warning — click "More info → Run anyway" to install. - ### New in v0.9.7 — Emoji Reactions & Search - - **Grouped emoji reactions** — reactions display as pills (❤️5 🤙3 🔥2) instead of a single count; multi-reaction per note; throttled fetch queue for reliability - - **npub search** — pasting a bare npub or nprofile in search navigates directly to that profile - - **Notification reliability** — poller waits for relay connection before first fetch; prevents empty badges on startup - - **Dev-only debug logger** — `debug.log/warn/error` silent in production builds + ### New in v0.9.8 — Web of Trust & Instant Notifications + - **Web of Trust on profiles** — personalized "Followed by people you trust" section powered by Vertex DVM; clickable follower avatars with expand/collapse + - **Instant notifications** — SQLite-backed notification cache; notifications load instantly on startup instead of waiting for relays; read state persists across restarts + - **Profile notes retry** — automatically retries on empty result instead of permanently showing "No notes found" + - **Reaction queue fix** — throttle queue no longer jams when relay queries fail + + ### Previous: v0.9.7 — Emoji Reactions & Search + - Grouped emoji reactions (❤️5 🤙3 🔥2), multi-reaction per note, npub search, notification reliability, dev-only debug logger ### Previous: v0.9.6 — Font Size Fix - Content-only zoom, flex-wrap everywhere, themes grid fix diff --git a/CLAUDE.md b/CLAUDE.md index 87c5242..821c8ff 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -54,10 +54,10 @@ CI triggers on the tag and builds all three platforms (Ubuntu, Windows, macOS AR - `src/App.tsx` — root component; shows `OnboardingFlow` for new users, then view routing via UI store - `src/stores/` — Zustand stores per domain: `feed.ts`, `user.ts`, `ui.ts`, `lightning.ts`, `drafts.ts`, `relayHealth.ts`, `bookmark.ts`, `toast.ts` -- `src/lib/nostr/` — NDK wrapper split into domain modules (`core.ts`, `notes.ts`, `social.ts`, `articles.ts`, `engagement.ts`, `dms.ts`, `bookmarks.ts`, `muting.ts`, `search.ts`, `relays.ts`, `trending.ts`); barrel `index.ts` re-exports all; all Nostr calls go through here +- `src/lib/nostr/` — NDK wrapper split into domain modules (`core.ts`, `notes.ts`, `social.ts`, `articles.ts`, `engagement.ts`, `dms.ts`, `bookmarks.ts`, `muting.ts`, `search.ts`, `relays.ts`, `trending.ts`, `vertex.ts`); barrel `index.ts` re-exports all; all Nostr calls go through here - `src/lib/themes.ts` — Color theme definitions (7 themes) and `applyTheme()` utility - `src/lib/lightning/` — NWC client (`nwc.ts`); Lightning payment logic -- `src/hooks/` — `useProfile.ts`, `useReactions.ts` (grouped emoji reactions with throttled fetch queue) +- `src/hooks/` — `useProfile.ts`, `useReactions.ts` (grouped emoji reactions with throttled fetch queue), `useReputation.ts` (Vertex WoT with cache) - `src/lib/debug.ts` — Dev-only logger (silent in production builds) - `src/components/feed/` — Feed, NoteCard, NoteContent, NoteActions, InlineReplyBox, TextSegments, MediaCards, ComposeBox - `src/components/profile/` — ProfileView, EditProfileForm, ImageField, Nip05Field, ProfileMediaGallery @@ -154,8 +154,9 @@ CI triggers on the tag and builds all three platforms (Ubuntu, Windows, macOS AR - **External link opener** — global click handler intercepts http(s) links and opens in system browser via `@tauri-apps/plugin-opener` - **Color themes** — 7 built-in themes (Midnight, Light, Catppuccin Mocha, Tokyo Night, Gruvbox, Ethereal, Hackerman); CSS custom properties swapped at runtime; persisted to localStorage - **Font size presets** — Small/Normal/Large/Extra Large; CSS zoom scaling on document root; persisted to localStorage +- **Web of Trust** — Vertex DVM integration (kind 5312→6312); personalized "Followed by people you trust" on profiles with clickable follower avatars +- **SQLite-backed notifications** — instant load on startup from local cache; relay diff merged in background; read state persists in DB across restarts **Not yet implemented:** -- Web of Trust scoring - NIP-96 file storage - Custom feeds / lists diff --git a/PKGBUILD b/PKGBUILD index d79fe91..4e1708d 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,6 +1,6 @@ # Maintainer: hoornet pkgname=wrystr -pkgver=0.9.7 +pkgver=0.9.8 pkgrel=1 pkgdesc="Cross-platform Nostr desktop client with Lightning integration" arch=('x86_64') diff --git a/package.json b/package.json index 34920a0..3c7f772 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "wrystr", "private": true, - "version": "0.9.7", + "version": "0.9.8", "type": "module", "scripts": { "dev": "vite", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 7c275c0..84c43f3 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wrystr" -version = "0.9.7" +version = "0.9.8" description = "Cross-platform Nostr desktop client with Lightning integration" authors = ["hoornet"] edition = "2021" diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index afd96f4..0a99c02 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2", "productName": "Wrystr", - "version": "0.9.7", + "version": "0.9.8", "identifier": "com.hoornet.wrystr", "build": { "beforeDevCommand": "npm run dev",