Skip to content

Commit a881e39

Browse files
committed
chore: prepare 0.15.2 release
- Bump version to 0.15.2 across package.json, Cargo.toml, tauri.conf.json, SDK version.ts, and all packaging manifests (debian, aur, rpm, flatpak). - Refresh dark/light/theme/locale screenshots and regenerate the screenshots overview. - Add Arabic, Hebrew, and light-dark comparison screenshots; drop the previous light-dark snapshot. - Add blog hero image for the 0.15.2 announcement. - Consolidate the 0.15.2 entries in CHANGELOG.md, RELEASE_NOTES.md, and apps/fluux/src/data/changelog.ts. - Update docs/RELEASE.md with the current release process. - Ignore the local server/ workspace directory.
1 parent 2b1e0c6 commit a881e39

43 files changed

Lines changed: 377 additions & 171 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ playwright-report/
4545

4646
# Private
4747
private/
48+
server/
4849

4950
# Temporary files
5051
*.tmp

CHANGELOG.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,47 @@ All notable changes to Fluux Messenger are documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.15.2] - 2026-04-21
9+
10+
### Added
11+
12+
- Right-to-left (RTL) layout support for RTL languages
13+
- Arabic and Hebrew translations (beta quality, please report any error or issue to help improve them)
14+
- Decorative quotation marks for blockquotes
15+
16+
### Changed
17+
18+
- SASL2 user-agent identifier and server-side FAST token invalidation on logout
19+
- Faster reconnection: skip redundant MAM queries on stream-management resume
20+
- Perf: Per-conversation typing and draft subscriptions for smoother list rendering during background sync
21+
- Security updates for several dependencies (brace-expansion, rustls-webpki, tar, rand, serialize-javascript; trust-dns-resolver migrated to hickory-resolver)
22+
23+
### Fixed
24+
25+
- Preserve MUC room state across stream-management resume and interrupted fresh sessions
26+
- Prevent reconnection loops and UI freezes after system sleep/wake
27+
- Keep FAST token rotation working across page-reload reconnect
28+
- Retry FAST token authentication when the server field was initially empty
29+
- Suppress spurious FAST token deletion log message on first login
30+
- Set websocket stream "from" attribute so SASL2 is accepted on compliant servers
31+
- Hydrate outbound stream-management state on resume to avoid ackQueue crash
32+
- Recover Tauri reconnect stalls via native keepalive with proxy fallback
33+
- fetchBookmarks no longer wipes stored room messages on reconnect
34+
- Write live room messages directly to IndexedDB to prevent loss on reconnect
35+
- Restore saved rooms through the connect call so history loads after SM resume
36+
- Skip unnecessary webview reload when the app was hidden but the machine stayed awake
37+
- Lightbox displays the full-resolution original without upscaling past its natural size
38+
- Run discovery calls before the serial session-setup chain
39+
- Recover when post-wake auto-connect stalls after SASL
40+
- Handle superseded connection attempts with a dedicated error class
41+
- Grow reconnect attempt counter past the backoff ceiling
42+
- Probe runtime before reloading on dynamic import failure; auto-reload otherwise
43+
- Fall back to direct URL when the web image cache fetch fails
44+
- Display upload errors in the UI and allow HTTP upload URLs
45+
- Use inert instead of aria-hidden on the scroll-to-bottom FAB (accessibility)
46+
- Use ServiceWorker.showNotification() on web for reliable notifications
47+
- Fix vertical alignment of the message toolbar "more" menu button
48+
849
## [0.15.1] - 2026-04-06
950

1051
### Changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333

3434
<div align="center">
3535

36-
<a href="screenshots/21-chat-light-dark.png"><img src="screenshots/21-chat-light-dark.png" width="600" alt="Light and Dark themes"/></a>
36+
<a href="screenshots/23-chat-light-dark.png"><img src="screenshots/23-chat-light-dark.png" width="600" alt="Light and Dark themes"/></a>
3737

3838
*Light and dark modes side by side*
3939

RELEASE_NOTES.md

Lines changed: 34 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,43 @@
1-
## What's New in v0.15.1
1+
## What's New in v0.15.2
2+
3+
### Added
4+
5+
- Right-to-left (RTL) layout support for RTL languages
6+
- Arabic and Hebrew translations (beta quality, please report any error or issue to help improve them)
7+
- Decorative quotation marks for blockquotes
28

39
### Changed
410

5-
- Skip PEP avatar requests for domains that block PubSub access (reduces unnecessary traffic)
11+
- SASL2 user-agent identifier and server-side FAST token invalidation on logout
12+
- Faster reconnection: skip redundant MAM queries on stream-management resume
13+
- Perf: Per-conversation typing and draft subscriptions for smoother list rendering during background sync
14+
- Security updates for several dependencies (brace-expansion, rustls-webpki, tar, rand, serialize-javascript; trust-dns-resolver migrated to hickory-resolver)
615

716
### Fixed
817

9-
- Blank screen during initial connection sync caused by render loop
10-
- False reconnections triggered by macOS timer throttling after sleep
11-
- MUC MAM catch-up gaps after long offline periods
12-
- Added a temporary button in the rooms sidebar, under the + menu to force catch up all joined rooms.
18+
- Preserve MUC room state across stream-management resume and interrupted fresh sessions
19+
- Prevent reconnection loops and UI freezes after system sleep/wake
20+
- Keep FAST token rotation working across page-reload reconnect
21+
- Retry FAST token authentication when the server field was initially empty
22+
- Suppress spurious FAST token deletion log message on first login
23+
- Set websocket stream "from" attribute so SASL2 is accepted on compliant servers
24+
- Hydrate outbound stream-management state on resume to avoid ackQueue crash
25+
- Recover Tauri reconnect stalls via native keepalive with proxy fallback
26+
- fetchBookmarks no longer wipes stored room messages on reconnect
27+
- Write live room messages directly to IndexedDB to prevent loss on reconnect
28+
- Restore saved rooms through the connect call so history loads after SM resume
29+
- Skip unnecessary webview reload when the app was hidden but the machine stayed awake
30+
- Lightbox displays the full-resolution original without upscaling past its natural size
31+
- Run discovery calls before the serial session-setup chain
32+
- Recover when post-wake auto-connect stalls after SASL
33+
- Handle superseded connection attempts with a dedicated error class
34+
- Grow reconnect attempt counter past the backoff ceiling
35+
- Probe runtime before reloading on dynamic import failure; auto-reload otherwise
36+
- Fall back to direct URL when the web image cache fetch fails
37+
- Display upload errors in the UI and allow HTTP upload URLs
38+
- Use inert instead of aria-hidden on the scroll-to-bottom FAB (accessibility)
39+
- Use ServiceWorker.showNotification() on web for reliable notifications
40+
- Fix vertical alignment of the message toolbar "more" menu button
1341

1442
---
1543
[Full Changelog](https://github.com/processone/fluux-messenger/blob/main/CHANGELOG.md)

apps/fluux/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@xmpp/fluux",
3-
"version": "0.15.1",
3+
"version": "0.15.2",
44
"private": true,
55
"type": "module",
66
"scripts": {

apps/fluux/src-tauri/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "fluux"
3-
version = "0.15.1"
3+
version = "0.15.2"
44
description = "A powerful, productive messaging client that's pleasant to use."
55
authors = ["ProcessOne"]
66
license = "AGPL-3.0-or-later"

apps/fluux/src-tauri/tauri.conf.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"$schema": "https://schema.tauri.app/config/2",
33
"productName": "Fluux Messenger",
4-
"version": "0.15.1",
4+
"version": "0.15.2",
55
"identifier": "com.processone.fluux",
66
"plugins": {
77
"deep-link": {
@@ -68,7 +68,7 @@
6868
],
6969
"macOS": {
7070
"minimumSystemVersion": "10.13",
71-
"bundleVersion": "9307919",
71+
"bundleVersion": "2b1e0c6",
7272
"entitlements": "Entitlements.plist",
7373
"signingIdentity": null
7474
},

apps/fluux/src/data/changelog.ts

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,57 @@ export interface ChangelogEntry {
1313
}
1414

1515
export const changelog: ChangelogEntry[] = [
16+
{
17+
version: '0.15.2',
18+
date: '2026-04-21',
19+
sections: [
20+
{
21+
type: 'added',
22+
items: [
23+
'Right-to-left (RTL) layout support for RTL languages',
24+
'Arabic and Hebrew translations (beta quality, please report any error or issue to help improve them)',
25+
'Decorative quotation marks for blockquotes',
26+
],
27+
},
28+
{
29+
type: 'changed',
30+
items: [
31+
'SASL2 user-agent identifier and server-side FAST token invalidation on logout',
32+
'Faster reconnection: skip redundant MAM queries on stream-management resume',
33+
'Perf: Per-conversation typing and draft subscriptions for smoother list rendering during background sync',
34+
'Security updates for several dependencies (brace-expansion, rustls-webpki, tar, rand, serialize-javascript; trust-dns-resolver migrated to hickory-resolver)',
35+
],
36+
},
37+
{
38+
type: 'fixed',
39+
items: [
40+
'Preserve MUC room state across stream-management resume and interrupted fresh sessions',
41+
'Prevent reconnection loops and UI freezes after system sleep/wake',
42+
'Keep FAST token rotation working across page-reload reconnect',
43+
'Retry FAST token authentication when the server field was initially empty',
44+
'Suppress spurious FAST token deletion log message on first login',
45+
'Set websocket stream "from" attribute so SASL2 is accepted on compliant servers',
46+
'Hydrate outbound stream-management state on resume to avoid ackQueue crash',
47+
'Recover Tauri reconnect stalls via native keepalive with proxy fallback',
48+
'fetchBookmarks no longer wipes stored room messages on reconnect',
49+
'Write live room messages directly to IndexedDB to prevent loss on reconnect',
50+
'Restore saved rooms through the connect call so history loads after SM resume',
51+
'Skip unnecessary webview reload when the app was hidden but the machine stayed awake',
52+
'Lightbox displays the full-resolution original without upscaling past its natural size',
53+
'Run discovery calls before the serial session-setup chain',
54+
'Recover when post-wake auto-connect stalls after SASL',
55+
'Handle superseded connection attempts with a dedicated error class',
56+
'Grow reconnect attempt counter past the backoff ceiling',
57+
'Probe runtime before reloading on dynamic import failure; auto-reload otherwise',
58+
'Fall back to direct URL when the web image cache fetch fails',
59+
'Display upload errors in the UI and allow HTTP upload URLs',
60+
'Use inert instead of aria-hidden on the scroll-to-bottom FAB (accessibility)',
61+
'Use ServiceWorker.showNotification() on web for reliable notifications',
62+
'Fix vertical alignment of the message toolbar "more" menu button',
63+
],
64+
},
65+
],
66+
},
1667
{
1768
version: '0.15.1',
1869
date: '2026-04-06',

0 commit comments

Comments
 (0)