You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
release: merge 0.16.0 back to main (OpenPGP silent-fork fix + bug fixes) (#405)
## Summary
Merge `release/0.16.0` back to main.
### OpenPGP silent-fork prevention
A fresh browser / desktop install with no local OpenPGP key was silently
generating a fresh keypair and publishing its fingerprint to PEP,
overwriting whatever metadata peers had pinned — leaving any sibling
device that still held the matching private key (or any peer whose
pinning hadn't refreshed) unable to deliver or decrypt.
-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
5
+
-OpenPGP end-to-end encryption (XEP-0373 / XEP-0374) — encrypted 1:1 messaging with passphrase-protected key storage and secret-key backup/restore
6
+
-OpenPGP end-to-end encryption support in web version
7
+
-Multi-TSK (Transferable Secret Key) handling in the XEP-0373 backup restore flow for accounts with multiple OpenPGP keys
8
8
9
9
### Changed
10
10
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)
11
+
- XMPP Console hides Stream Management packets by default for less noise (toggle remains available)
12
+
- Significant render-performance pass: cut store over-subscription in ConversationList, CommandPalette, RoomConfig, ContactSelector, ContactItem, and room modals
13
+
- Simplified Chinese translation updated
15
14
16
15
### Fixed
17
16
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
0 commit comments