mirror of
https://github.com/hoornet/vega.git
synced 2026-07-24 01:08:11 -07:00
Release v0.14.1 — fix Support view crash, add proxy/Tor support
Fixes a crash that blanked the Support (About/donate) view with React error #130 on every release build since v0.13.2. react-qr-code ships CommonJS, and since the Vite 8 / Rolldown migration its default import resolved to the module namespace object ({ QRCode, default }) instead of the component, making <QRCode/> an invalid element. AboutView now unwraps the import to the real component. Reproduced against the production bundle and verified fixed the same way. Also ships the configurable HTTP/SOCKS5 network proxy (incl. Tor) from PR #10 by Anderseta, merged earlier: routes relay WebSockets, Rust-side fetches and update checks through the proxy. The proxy settings and the README/CHANGELOG note that DNS is not yet guaranteed private (issue #11). Adds a Contributors section to the README (Anderseta, SondreB).
This commit is contained in:
@@ -69,6 +69,11 @@ 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.
|
||||
|
||||
### v0.14.1 — Support view crash fix + proxy/Tor support
|
||||
|
||||
- **Fixed the Support view crash.** Opening Support showed a blank "Vega crashed" screen. This affected every release build since v0.13.2; it now opens correctly.
|
||||
- **Network proxy (HTTP / SOCKS5), including Tor.** A new Settings section routes Vega's traffic — including update checks — through a proxy. Thanks to [Anderseta](https://github.com/Anderseta) for contributing this (#10). Note: the proxy routes traffic but does not yet guarantee DNS privacy.
|
||||
|
||||
### v0.14.0 — Vega moves to its own app identifier
|
||||
|
||||
Vega's internal app identifier changes from `com.hoornet.vega` to `com.veganostr.Vega`, so it is anchored to a domain the project controls. This is a prerequisite for publishing Vega on Flathub and winget, and it makes the app's identity consistent across every platform.
|
||||
|
||||
@@ -2,6 +2,18 @@
|
||||
|
||||
> Note: entries for v0.12.10 through v0.13.1 live in the [GitHub Releases](https://github.com/hoornet/vega/releases) notes; this file resumes at v0.13.2.
|
||||
|
||||
## v0.14.1 — Fix Support view crash, add proxy/Tor support (2026-07-15)
|
||||
|
||||
### Fixed
|
||||
- **Support view no longer crashes.** Opening Support (the About/donate view) crashed the app with a blank "Vega crashed" screen (React error #130). `react-qr-code` ships CommonJS, and since the Vite 8 / Rolldown migration (v0.13.2) its default import resolved to the module namespace object instead of the component, making the QR code an invalid element. The import now unwraps to the real component. Reproduced and verified fixed against the production build.
|
||||
|
||||
### Added
|
||||
- **Configurable network proxy (HTTP / SOCKS5), including Tor.** New section in Settings routes Vega's traffic — relay WebSockets, Rust-side fetches, and update checks — through a proxy. Contributed by [Anderseta](https://github.com/Anderseta) ([#10](https://github.com/hoornet/vega/pull/10)).
|
||||
- **Contributors section** in the README.
|
||||
|
||||
### Known limitation
|
||||
- The proxy routes traffic but DNS may still resolve locally, so relay hostnames can leak. Full DNS privacy (e.g. `socks5h` for Tor) is not guaranteed yet — noted in the proxy settings and tracked in [#11](https://github.com/hoornet/vega/issues/11).
|
||||
|
||||
## v0.14.0 — App identifier moves to `com.veganostr.Vega` (2026-07-14)
|
||||
|
||||
### Changed
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Maintainer: hoornet <hoornet@users.noreply.github.com>
|
||||
pkgname=vega-nostr
|
||||
pkgver=0.14.0
|
||||
pkgver=0.14.1
|
||||
pkgrel=1
|
||||
pkgdesc="Cross-platform Nostr desktop client with Lightning integration"
|
||||
arch=('x86_64')
|
||||
|
||||
@@ -233,6 +233,15 @@ Vega is free and open-source. If it's useful to you:
|
||||
| ♥ GitHub Sponsors | [github.com/sponsors/hoornet](https://github.com/sponsors/hoornet) |
|
||||
| ★ GitHub star | Helps with visibility and grant applications |
|
||||
|
||||
## Contributors
|
||||
|
||||
Vega is built by one person, but it's better because of the people who've pitched in. Thank you:
|
||||
|
||||
- **[Anderseta](https://github.com/Anderseta)** — configurable HTTP/SOCKS5 network proxy, including Tor support, with the update checks routed through the proxy too ([#10](https://github.com/hoornet/vega/pull/10)).
|
||||
- **[SondreB](https://github.com/SondreB)** — Vega's first external contributor; early new-user-experience feedback that shaped onboarding ([#2](https://github.com/hoornet/vega/issues/2)).
|
||||
|
||||
Spotted a bug or have an idea? Issues and pull requests are welcome.
|
||||
|
||||
## Acknowledgements
|
||||
|
||||
Vega is built on the shoulders of excellent open-source projects:
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "vega",
|
||||
"private": true,
|
||||
"version": "0.14.0",
|
||||
"version": "0.14.1",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
Generated
+1
-1
@@ -5429,7 +5429,7 @@ checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
|
||||
|
||||
[[package]]
|
||||
name = "vega"
|
||||
version = "0.14.0"
|
||||
version = "0.14.1"
|
||||
dependencies = [
|
||||
"dirs",
|
||||
"futures-util",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "vega"
|
||||
version = "0.14.0"
|
||||
version = "0.14.1"
|
||||
description = "Cross-platform Nostr desktop client with Lightning integration"
|
||||
authors = ["hoornet"]
|
||||
edition = "2021"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"$schema": "https://schema.tauri.app/config/2",
|
||||
"productName": "Vega",
|
||||
"version": "0.14.0",
|
||||
"version": "0.14.1",
|
||||
"identifier": "com.veganostr.Vega",
|
||||
"build": {
|
||||
"beforeDevCommand": "npm run dev",
|
||||
|
||||
@@ -1,8 +1,17 @@
|
||||
import { useState } from "react";
|
||||
import QRCode from "react-qr-code";
|
||||
import QRCodeImport from "react-qr-code";
|
||||
import { ZapModal } from "../zap/ZapModal";
|
||||
import pkg from "../../../package.json";
|
||||
|
||||
// react-qr-code ships CommonJS. Under the app's bundler (Vite 8 / Rolldown) the
|
||||
// default import can resolve to the module namespace object ({ QRCode, default })
|
||||
// rather than the component itself, which makes <QRCode/> an invalid React element
|
||||
// and crashes the whole view with "Element type is invalid" (#130). Unwrap to the
|
||||
// real component, tolerating both a correct default import and the namespace form.
|
||||
const QRCode =
|
||||
(QRCodeImport as unknown as { default?: typeof QRCodeImport }).default ??
|
||||
QRCodeImport;
|
||||
|
||||
const DEV_NPUB = "npub1ezt7xcq87ljj65jkjsuagwll4yp75tacgkuyjdhkw6mza8j3azfq2vrvl6";
|
||||
const DEV_PUBKEY = "c897e36007f7e52d52569439d43bffa903ea2fb845b84936f676b62e9e51e892";
|
||||
const LIGHTNING_ADDRESS = "jure@getalby.com";
|
||||
|
||||
@@ -525,6 +525,10 @@ function ProxySection() {
|
||||
<p className="text-text-dim text-[10px] mt-1.5 ml-12">
|
||||
Applies after restart. Example: socks5://127.0.0.1:9050
|
||||
</p>
|
||||
<p className="text-text-dim text-[10px] mt-1 ml-12 leading-relaxed">
|
||||
Note: this routes your traffic, but DNS may still be resolved locally, so
|
||||
relay hostnames can leak. Full DNS privacy (e.g. for Tor) is not guaranteed yet.
|
||||
</p>
|
||||
{(error || validationError) && (
|
||||
<p className="text-danger text-[10px] mt-1 ml-12">{error ?? validationError}</p>
|
||||
)}
|
||||
|
||||
Reference in New Issue
Block a user