Files
vega/.github/workflows/release.yml

130 lines
5.7 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
name: Release
on:
push:
tags:
- 'v*'
permissions:
contents: write
jobs:
release:
permissions:
contents: write
strategy:
fail-fast: false
matrix:
include:
- platform: ubuntu-22.04
args: ''
- platform: windows-latest
args: ''
- platform: macos-latest
args: '--target aarch64-apple-darwin'
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v5
with:
node-version: 'lts/*'
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.platform == 'macos-latest' && 'aarch64-apple-darwin' || matrix.platform == 'macos-12' && 'x86_64-apple-darwin' || '' }}
- name: Install Linux dependencies
if: matrix.platform == 'ubuntu-22.04'
run: |
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
build-essential \
libssl-dev \
libayatana-appindicator3-dev \
librsvg2-dev \
patchelf
- name: Install frontend dependencies
run: npm install
- name: Build and release
uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
with:
tagName: ${{ github.ref_name }}
releaseName: Wrystr ${{ github.ref_name }}
releaseBody: |
## Wrystr ${{ github.ref_name }}
Cross-platform Nostr desktop client — polished UI, deep Lightning integration, first-class long-form writing.
> **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.1 — Live Feed & Relay Reliability
Fundamental upgrade to how Wrystr connects to relays and delivers content.
- **Live streaming feed** — persistent relay subscriptions deliver new notes in real-time; no manual refresh needed
- **Timeouts on all relay fetches** — every relay query across the entire codebase now has a timeout (512s). No view can hang indefinitely — Articles, DMs, Notifications, Zaps, Trending all fixed
- **Fixed relay death spiral** — removed aggressive liveness probe that was disconnecting working relays; relay connections now stay stable
- **NDK subscription hygiene** — prevents stale subscription reuse; `since` filters ensure feed freshness
- **Feed diagnostics** — developer console helpers for tracking fetch timing, event freshness, and relay states
- **Background relay recovery** — automatic NDK instance reset after 30s of continuous failure; preserves login state
- **Fixed Articles Latest** — no longer wipes results on follow list changes
- **Fixed Zap History** — proper loading state; increased timeout for zap queries
### Previous: v0.9.0 — Thread Conversation Overhaul
- Nested thread trees, reply-to-any-note, recursive reply fetching, ancestor chain, multi-level back navigation, thread collapse, mute filtering in trees, podcast subscriptions
### Previous: v0.8.4 — Codebase Refactor & Bug Fixes
- Codebase refactor (split 5 files into focused modules), Supported NIPs table in README, bug fixes
### Previous: v0.8.3 — Trending, Remote Signer, Media
- Trending feed (24h engagement decay), NIP-46 remote signer (bunker://), media feed, profile media gallery, OS push notifications, NIP-05 badges, hashtag pages, keyword muting, emoji picker
### Previous: v0.8.0 — Polish, Portability & Discovery
- Profile banner polish, data export, relay recommendations, reading list tracking, trending hashtags
### Previous highlights
- v0.7.1: Relay health checker, advanced search with modifiers
- v0.7.0: NIP-98 uploads, markdown toolbar, multi-draft management
- v0.6.0: Article discovery feed, article cards, article search, profile Articles tab
- v0.5.0: Note sharing, reply counts
- v0.4.0: Image lightbox, bookmarks (NIP-51), discover people, language filter
- v0.3.0: Instant feedback, image paste, feed refresh on login
- v0.2.0: Feed reply context, NIP-65 outbox, notifications, DM badges, keyboard shortcuts
- v0.1.3v0.1.7: OS keychain, multi-account, SQLite cache, zap history, DMs, system tray
### Install
**Linux (Ubuntu / Debian / Mint):** Download the `.deb` and run:
```
sudo dpkg -i wrystr_*.deb
```
**Linux (Fedora / openSUSE):** Download the `.rpm` and run:
```
sudo rpm -i wrystr-*.rpm # Fedora
sudo zypper install wrystr-*.rpm # openSUSE
```
**Linux (Arch / Manjaro):** Install from the AUR:
```
yay -S wrystr-git
```
**Windows:** Download the `.exe` installer and run it.
**macOS (Apple Silicon):** Download the `aarch64.dmg` and open it.
---
⚡ Find Wrystr useful? [Zap the developer](https://github.com/hoornet/wrystr#support) or star the repo.
releaseDraft: false
prerelease: false
includeUpdaterJson: true
args: ${{ matrix.args }}