Skip to content

v0.4.0

Latest

Choose a tag to compare

@trinity-release trinity-release released this 12 Oct 18:45
Immutable release. Only release title and notes can be modified.
44b2641

0.4.0 (2026-10-12)

⚠ BREAKING CHANGES

  • app: Trinity is a new app to the stores and operating systems: existing installs don't update into it, desktop users sign in again, links and SSO callbacks on the eu.qwky.trinity:// scheme no longer open Trinity, and push gateways must list dev.trinityproject.trinity.ios and dev.trinityproject.trinity.android.

Added

  • app: move Trinity's identifiers to dev.trinityproject (#1147) (145069f)
  • composer: take photos and record videos from the composer (#1142) (9db3b67)
  • diagnostics: report a bug with a redacted diagnostic log (#1248) (37242f2)
  • media: cap uploads when the homeserver states no size limit (#1169) (0a75a90)
  • media: check a gallery photo's size before reading it (#1190) (ec0b7b3), refs #1177
  • media: remove location and camera metadata from uploaded photos (#1170) (1d35560)
  • media: strip location metadata from uploaded videos (#1192) (f9ba2a9)
  • media: strip metadata from gif, tiff and svg uploads (#1193) (6596fbc)
  • notifications: render mobile push on the device (#1157) (d80f5dd)
  • push: show why a closed-app push has no preview (#1206) (fbb7ac1)
  • rooms: list the rail's overflow unread chats from +N (#1137) (66c4675)
  • rooms: open a rail unread chat in a list that shows it (#1135) (a2f9032), refs #1126
  • rooms: open member info as a dialog or a sheet over the list (#1171) (037b7f7)
  • rooms: show unread chats from every account in the space rail (#1125) (588d179)
  • runtime: report a bug from the desktop title bar (#1253) (dbde134)
  • settings: add a privacy setting to keep photo metadata (#1191) (14edd27)
  • trust: lead verification without another device to Security (#1240) (c1fc1fc)
  • ui: invert solid actions on accent page headers and overlays (#1239) (5bf9391)
  • ui: support form controls on accent attention surfaces (#1243) (a33b70b)
  • ui: support the remaining controls on accent attention surfaces (#1245) (a6d3724)

Fixed

  • accounts: ignore token refreshes from a replaced client (#1233) (58ff248)
  • composer: keep a selection made right after a Format menu action (#1148) (1ab990c)
  • deps: update Capacitor to 8.5.3 and its plugins to their latest patches (#1119) (7a48b41)
  • desktop: stop timeline areas going blank under the pointer (#1212) (c351291)
  • diagnostics: replace names and email addresses in bug-report logs (#1255) (1165495)
  • logging: keep matrix-js-sdk debug output out of production (#1234) (261efbe)
  • media: keep a room's stickers current after an image-pack change (#1197) (3059d11), refs #1194
  • media: stop reporting a dismissed share sheet as a saved file (#1249) (a502ce7)
  • mobile: allow the iOS swipe-back gesture on routed pages (#1114) (d719638), refs #971
  • mobile: launch on iOS 27 by adopting the scene lifecycle (#1106) (e34fd98)
  • mobile: swipe back from a phone conversation to the room list (#1121) (8043b96)
  • native: drop a picked photo the device can't read instead of sending an error page (#1144) (3d273a0), refs #1141
  • native: keep plugin arguments out of debug device logs (#1164) (25a62b5)
  • native: strip xml comments until none are left in the host contract (#1200) (a9f58e1)
  • push: keep ios push handoff tokens on this device (#1203) (69d482f)
  • rooms: keep a just-added address when an older list read answers (#1228) (36e3b2a)
  • rooms: keep quick reactions open while the pointer reaches them (#1232) (2a9d69b)
  • rooms: move a room up the list when a thread gets a reply (#1237) (d14fdf6)
  • settings: show the stored value again after a failed save (#1132) (1581c6a)
  • trust: never replace an existing encryption identity from setup (#1214) (1f9ad0d)
  • trust: publish the identity when a first setup is retried (#1231) (01a99c1)
  • ui: keep tooltips closed when focus returns after a touch (#1226) (2ed6677)
  • ui: make buttons in an accent banner visible as buttons (#1220) (d6e3177)
  • ui: return focus to the control that opened a dialog on iOS (#1111) (62ed20f), refs #1109
  • ui: wrap banner actions below the message on narrow screens (#1222) (7bd02ca)
  • widgets: time out a hung widget runtime load (#1186) (1284ac6)

Changed

  • composer: open the camera without waiting for the upload limit (#1149) (412e6b9)
  • desktop: cap compositor tile memory (#1057) (3ac5d58)
  • widgets: load matrix-widget-api only when a widget opens (#1172) (63b012d), refs #1034