Original release notes
What's Changed
- Bind Apple Pro payments to the master key via appAccountToken by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/716
- Fixed dependency race condition, removed redundant function by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/717
- Pro backend 0.2 + libsession 1.7 compatibility updates by @jagerman in https://github.com/session-foundation/session-ios/pull/710
- [Automated] Update translations from Crowdin by @stfsession in https://github.com/session-foundation/session-ios/pull/703
- Expose pro env vars and resolve some issues found when testing by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/718
- Fix an issue where some group notification messages could get dropped when they shouldn't by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/719
- Stop a cancelled poll task from cancelling its own replacement by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/720
- Stop substituting non-translatable constants at runtime by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/722
- Pro redemption reflow (iOS): implicit redemption, libsession renewal/rotation by @jagerman in https://github.com/session-foundation/session-ios/pull/723
- Updated dev settings, fixed a couple minor UI regressions by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/724
- Pro: allow the Session Pro backend to be overridden for QA/testing by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/725
- Fixed a gesture recogniser conflict preventing a button press by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/728
- Pro redemption reflow, part 2 by @jagerman in https://github.com/session-foundation/session-ios/pull/727
- Pro followup fixes by @jagerman in https://github.com/session-foundation/session-ios/pull/732
- Pro: fully remove the pre-launch Pro-availability gate by @jagerman in https://github.com/session-foundation/session-ios/pull/729
- Licenses: fail the build rather than emptying the tracked plist by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/736
- Pro: accessibility ids for the Pro surface, plus two VoiceOver fixes and a CTA copy bug by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/733
- Network: populate swarm_pubkey_hex on snode requests by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/737
- Pro: unify the
get_pro_statusrefresh design (iOS) by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/734 - [Automated] Update translations from Crowdin by @stfsession in https://github.com/session-foundation/session-ios/pull/735
- Input: name the character-limit countdown and hide it when it is hidden by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/740
- Pro: show hero copy in every Pro status, not just never-subscribed and the sheet by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/738
- Notifications: stop extension messages being discarded on import by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/741
- Notifications: stop a cold background fetch waiting on the home screen by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/743
- [Automated] Update translations from Crowdin by @stfsession in https://github.com/session-foundation/session-ios/pull/744
- Apple developer account transfer preparation changes by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/739
- Pro: identify each message-info feature row by @Bilb in https://github.com/session-foundation/session-ios/pull/745
- Pro: split access from display, and stop upselling an active plan by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/742
- Pro: correct the link destinations, the refund window and the pin gate by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/746
- Pro: compare revocation instants against network time by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/747
- fix: add mocking logic for refund screens by @Bilb in https://github.com/session-foundation/session-ios/pull/748
- Pro: revocation-path conformance fixes by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/749
- feat: add accessibility identifiers to the "Open URL" confirmation by @Bilb in https://github.com/session-foundation/session-ios/pull/750
- Network: disable QUIC path-MTU discovery by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/752
- Pro: do not raise the expiry CTA over the Pro settings screen by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/755
- Media: identify the attachment loading state by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/758
- Attachments: make stream encryption the default and drop the legacy encryptor by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/756
- fix(pro): drop the proof's version field by @Bilb in https://github.com/session-foundation/session-ios/pull/757
- feat: route refunds through Session's own two links by @Bilb in https://github.com/session-foundation/session-ios/pull/753
- Pro: fix the stats counters, and cover them by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/759
- Pass the file server port through to the download url by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/754
- Fill the display picture frame with a picture, keep fitting a glyph by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/760
- [Automated] Update translations from Crowdin by @stfsession in https://github.com/session-foundation/session-ios/pull/751
- [Automated] Update fallback static snode list by @stfsession in https://github.com/session-foundation/session-ios/pull/714
- Name the Pro badges so a test can tell them apart by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/761
- Don't un-hide a conversation because of our own synced message by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/764
- qa: tag the first stage of the clear-data flow by @Bilb in https://github.com/session-foundation/session-ios/pull/763
- Count pinned conversations on launch, so the limit cannot be bypassed by relaunching by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/762
- fix: confirm a device-only clear for every account, not just Pro by @Bilb in https://github.com/session-foundation/session-ios/pull/765
- Truncate an incoming message by code point, not UTF-16 unit by @Bilb in https://github.com/session-foundation/session-ios/pull/768
- Enforce the pin limit against pins that arrive from config, and tag the marker by @Bilb in https://github.com/session-foundation/session-ios/pull/767
- Pro: make in-memory state changes atomic, so a rotation cannot be undone by a stale snapshot by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/769
- Keep the access expiry on a revoked proof, and confirm the account status at once by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/770
- Make the Fast Mode row title addressable by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/772
- Let the typing indicator settle when animations are disabled by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/773
- [Automated] Update fallback static snode list by @stfsession in https://github.com/session-foundation/session-ios/pull/766
- [Automated] Update translations from Crowdin by @stfsession in https://github.com/session-foundation/session-ios/pull/771
- Increased build and version number by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/774
- Show our own Pro badge on a message in a community by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/775
- Updated to libSession 1.9.1 by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/776
- Release 2.16.0 by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/777
- Turn the Pro badge on when an account gets its first ever proof by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/787
- Notifications: restore the sound on the extension's fallback notifications by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/785
- Don't treat an unreadable identity as a new user by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/783
- Allow voice messages to run to five minutes by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/782
- Stop a failed word-set read from crashing every message send by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/786
- Stop the full-screen media viewer racing on its album cache by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/788
- Expand the body when "Read more" is tapped on a link preview message by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/789
- Count config messages against the same denominator as standard ones by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/791
- Keep the Message Info quote and body inside the screen by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/790
- Terminate with _exit so a deliberate quit stops crashing by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/794
- Stop the QR scanner configuring two camera sessions at once by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/795
- Stop an in-flight poll undoing a cursor reset by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/792
- [Automated] Update translations from Crowdin by @stfsession in https://github.com/session-foundation/session-ios/pull/784
- Send the shorten/extend flags
updateExpiryis given by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/793 - [Automated] Update fallback static snode list by @stfsession in https://github.com/session-foundation/session-ios/pull/778
- Renew config message TTLs at most once an hour per swarm by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/796
- Updated to the latest libSession (fixes for 421 and networking issues) by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/799
- ci: detach the simulator keep-alive step by @Bilb in https://github.com/session-foundation/session-ios/pull/800
- [Automated] Update translations from Crowdin by @session-localisation[bot] in https://github.com/session-foundation/session-ios/pull/803
- Stop offering Session Router and move anyone on it back to onion requests by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/804
- [Automated] Update fallback static snode list by @stfsession in https://github.com/session-foundation/session-ios/pull/798
- Pro: restore the Session Pro gate, off by default by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/797
- Update session-lucide to 0.473.4 so the app builds on Xcode 27 by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/805
- Autolink iconv when compiling libSession from source by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/809
- Update libSession to 1.9.4 and cap the QUIC UDP payload at 1372 by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/810
- [Automated] Update fallback static snode list by @session-localisation[bot] in https://github.com/session-foundation/session-ios/pull/807
- Erase group entries a config merge recreated after another device erased them by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/812
- [Automated] Update translations from Crowdin by @session-localisation[bot] in https://github.com/session-foundation/session-ios/pull/806
- Show a placeholder for messages this version can't process, and retain them by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/808
- Bump version to 2.15.5 (build 726) by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/813
- Release 2.15.5 by @mpretty-cyro in https://github.com/session-foundation/session-ios/pull/814
New Contributors
- @Bilb made their first contribution in https://github.com/session-foundation/session-ios/pull/745
- @session-localisation[bot] made their first contribution in https://github.com/session-foundation/session-ios/pull/803
Full Changelog: https://github.com/session-foundation/session-ios/compare/2.15.4...2.15.5

