- ||text|| in outgoing messages/edits becomes <span data-mx-spoiler> (MSC2010),
matching what Blap Android sends; code/pre spans are left alone
- spoiler media uploads get the Discord SPOILER_ filename prefix (the only
marker the Rust SDK on Android can produce) and isSpoilerMedia honors it
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Letting the release API auto-create the tag leaves a forge-only tag the
push-mirror prunes on its next sync — and Forgejo demotes the release
to a hidden draft when its tag disappears (this made v1.0.2 vanish from
the releases page overnight). Fail with instructions instead.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Forgejo/Codeberg 404s the GitHub-style latest/download path, so the feed
baked into app-update.yml never worked (1.0.0/1.0.1 never saw updates).
Point it at a rolling release on the fixed tag "updates" instead, and
make release-codeberg.mjs sync latest.yml + the Windows installer to
that release on every ship (channel files always replaced; curl retries
added).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The 1.0.1 loopback-audio request broke Windows screenshare entirely;
we don't need Windows audio, so go back to plain {video}.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Codeberg does not serve the `/releases/latest/download/<file>` alias (404s); only
tag-specific `/releases/download/<tag>/<file>` URLs work. The update feed baked into
the app used the alias, so update checks never resolved on any platform.
Now both the Linux notifier and the Windows electron-updater resolve the newest
release via the Codeberg API (`/releases/latest` -> tag_name) and build the working
tag-specific feed URL from it (setFeedURL for electron-updater).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Desktop: capture system audio with the shared screen via Electron "loopback"
audio, gated to Windows/macOS (Electron doesn't support loopback on Linux).
Fixes screen shares having no audio for Windows users.
- release script: make it host-agnostic (FORGE_API/OWNER/REPO/TOKEN env) so it
can publish to the git.utn.lol Gitea as well as Codeberg. Defaults unchanged.
- Bump version to 1.0.1.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Skip release assets already uploaded at the same size instead of deleting and
re-uploading everything, so a re-run picks up where it left off.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Replace the element-web README with a Blap one (downloads/updating/building).
- release-codeberg: upload assets via curl instead of Node fetch, which times
out (UND_ERR_HEADERS_TIMEOUT) on 300MB+ files.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Build Debian package / Build package (release) Has been cancelled
Build and Deploy / prepare (release) Has been cancelled
Build and Deploy / Trigger Pro pipeline (release) Has been cancelled
Build and Deploy / Windows arm64 (release) Has been cancelled
Build and Deploy / Windows x64 (release) Has been cancelled
Build and Deploy / macOS (release) Has been cancelled
Build and Deploy / Linux amd64 (sqlcipher static) (release) Has been cancelled
Build and Deploy / Linux arm64 (sqlcipher static) (release) Has been cancelled
Build and Deploy / ${{ needs.prepare.outputs.deploy == 'true' && 'Deploy' || 'Deploy (dry-run)' }} (release) Has been cancelled
Build and Deploy / Deploy builds to ESS (release) Has been cancelled
Deploy release / Deploy to Cloudflare Pages (release) Has been cancelled
Include deb/flatpak/pacman/tar.gz (not just the Windows exe) so the release page
has every platform's download for the Linux update-ping to link to. Filter by
version so leftover artifacts from older builds in dist/ aren't uploaded.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- electron-builder: linux targets = deb, flatpak, tar.gz, pacman; win = nsis.
- updater.ts: Linux is notify-only (deb/pacman are package-manager owned,
flatpak is sandboxed) — reads the same Codeberg feed as Windows and shows a
"Blap X is available" desktop notification linking to HOW-TO-UPDATE.md.
Windows/macOS keep electron-updater in-place install.
- HOW-TO-UPDATE.md: per-format update instructions.
Version stays 1.0.0.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* Consolidate modules vitest coverage
* Use vite-common as base for modules vitest config
* Make knip happier
* Fix coverage paths
* Place modules unit tests alongside src
* Switch to defineProject for better type safety
* Consolidate vitest CI & coverage
Kills off vite-common
* Update comment
* Update lockfile
* Fix shared-components vitest config
* Soften eslint config for tests in modules
* Run eslint on modules/playwright dir too
* Make tsc happy
* Switch to using diff-cover for the Coverage gate
Enabling developers to check their PR coverage without waiting for CI
* Remove sonar-project.properties - in automatic mode Sonar will not read this file
* Add note to CONTRIBUTING.md
* Skip sonar in MQ
The button already shoves itself left so we don't need the macos
style to do so as well.
(cherry picked from commit 0d8ebf48fa)
Co-authored-by: David Baker <dbkr@users.noreply.github.com>