Skip to content

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 09 Oct 16:31
412328c

0.3.0 (2026-10-09)

Added

  • desktop: themed title row in place of the system title bar (#1001) (547f8f6)
  • rooms: refreshed conversation header and side panels (#1009) (dd35b4d)
  • rooms: refreshed server rail, room rows and floating user panel (#1005) (55ba5d7)
  • rooms: save images and videos from the timeline (#1025) (80f9a24)
  • settings: settings dialog with section sub-menus (#1026) (cf0ed58)
  • theme: Graphite default, Classic and Midnight themes, inset pane and Spacious density (#1000) (e673f54)
  • ui: open every modal surface through one surface service (#1067) (e5dfb67)
  • ui: refreshed dialogs with bottom sheets on phones (#1020) (51136ae)

Fixed

  • accounts: refuse to sign in to a saved account through a different server (e9281ee)
  • auth: finish OAuth sign-in only with the provider it started with (e9281ee)
  • auth: keep OAuth sessions signed in when the provider does not issue a new refresh token (44535a1)
  • auth: keep sessions and encryption keys through temporary server errors, and offer key export before removing an account or signing in again as a new device (e9281ee)
  • auth: OAuth sign-in through MAS needs Synapse 1.138 or newer; on an older Synapse with MAS, accounts are signed out and lose their local encryption keys, so turn on key backup before updating (44535a1)
  • auth: revoke an OAuth session only once when signing out (44535a1)
  • ci: regenerate the dependency map and de-flake three e2e tests (#1088) (cb5457f)
  • ci: stop pushes from cancelling the weekly scheduled E2E run (#1096) (36b109f)
  • crypto: encrypt this device's stored encryption keys for new sign-ins (e9281ee)
  • crypto: explain verification requests from new sessions as a new sign-in (e9281ee)
  • deps: update dependency matrix-widget-api to v1.20.0 (#1079) (ec9e3b0)
  • deps: update shiki monorepo to v4.5.0 (#1080) (a4a25bf)
  • desktop: hide to the tray when the page calls window.close() (#1042) (a077545)
  • docs: keep the search index complete after the docs build (#1043) (2c8cded)
  • harden sign-in, stored keys and message display (e9281ee)
  • media: show attachments, thumbnails, stickers and GIF previews only with display-safe media types (e9281ee)
  • rooms: keep a thread's draft when switching threads mid-edit (#1086) (a6d250c), refs #1051
  • rooms: open room widgets in the browser on Android and iOS (e9281ee)
  • settings: wrap unstable features across the row, repair the Synapse nightly (#1097) (1c5957f)
  • timeline: mark messages sent without end-to-end encryption in encrypted rooms (e9281ee)
  • ui: shared cards, banners and empty states, error toasts and invite previews (#1099) (b643a55)

Changed

  • media: bound the avatar and media caches and load timeline images lazily (#1024) (a8a9678)
  • media: downscale encrypted images that arrive without a thumbnail (#1033) (ef92157), refs #1016
  • platform-native: load the QR library on first use (#1035) (a761b69), refs #1016
  • rooms: cheaper timeline row builds (#1030) (fec2bb6)
  • rooms: highlight code blocks lazily from a directive (#1031) (6721ac8)
  • rooms: load the emoji picker and its index on demand (#1029) (e579499)
  • rooms: load video and audio only when played (#1059) (4a989d1)
  • shell: free memory a minute after the app goes to the background (#1058) (6e80563)
  • shell: give routed pages a class instead of a sibling selector (#1032) (80c8e6b)
  • ui: draw the avatar ring without a blend mode (#1021) (18e7de4)