2.15.0
What's Changed
- Initial Session Pro Integration, Query Refactoring and Bug Fixes by @mpretty-cyro in #616
- [Automated] Update translations from Crowdin by @stfsession in #655
- Refactor the JobRunner to use actors and be async/await by @mpretty-cyro in #538
- [Automated] Update translations from Crowdin by @stfsession in #656
- Conversation Settings Screen Refactor by @RyanRory in #645
- [Automated] Update translations from Crowdin by @stfsession in #662
- [Automated] Update translations from Crowdin by @stfsession in #663
- [Automated] Update translations from Crowdin by @stfsession in #664
- Add an env var to enable Session Pro by @mpretty-cyro in #665
- Shifted dedupe file writing off the database thread by @mpretty-cyro in #667
- Fixed an issue where pinning/unpinning a conversation wouldn't reorder the list by @mpretty-cyro in #669
- [Automated] Update fallback static snode list by @stfsession in #670
- [Automated] Update translations from Crowdin by @stfsession in #666
- [Automated] Update fallback static snode list by @stfsession in #671
- Refactored networking by @mpretty-cyro in #500
- [Automated] Update fallback static snode list by @stfsession in #672
- Settings Screen Refactor by @RyanRory in #654
- Fixed a couple of issues related to unbanning in communities by @mpretty-cyro in #661
- [Automated] Update translations from Crowdin by @stfsession in #677
- [Automated] Update fallback static snode list by @stfsession in #676
- [Automated] Update fallback static snode list by @stfsession in #679
- [Automated] Update translations from Crowdin by @stfsession in #680
- Database Wrapper Cleanup by @mpretty-cyro in #675
- Updated Storage to be an actor and drastically simplified the code (only supports async/await now)
- Updated database migration code to try to be self-recoverable after a suspension
- Updated the home screen to fetch the pinned conversation count as part of it's state rather than when generating swipe actions
- Updated the background poller to resubscribe for push notifications
- Updated calls to use non-blocking database queries
- Updated the emoji picker to use a non-blocking database query to fetch recent reactions
- Updated the MediaGalleryViewModel to use non-blocking database queries and caching to fetch album info
- Updated the notification presenter to use non-blocking database queries to fetch thread info
- Updated the dev settings screen to fetch the PN state as part of it's query instead of in a blocking way when being initialized
- Updated the NewClosedGroupVC to use a non-blocking database query to get contacts
- Updated to the latest GRDB (7.10.0)
- Replaced the Session-GRDB-swift fork SPM dependency with the (more) official SQLCipher/GRDB.swift SPM dependency
- Removed synchronous read/write calls from database wrapper
- Removed publisher read/write calls from database wrapper
- Removed overly complex
applicationWillEnterForegroundcode - Removed a C++ "clear loggers" call when clearing account data (caused false crashes)
- Reworked PN registration to resolve a few bugs causing registration failure
- Fixed a small issue where the version support banner could appear briefly
- Fixed an issue where "@you" wouldn't be highlighted in some cases
- Fixed an issue where the home screen wouldn't update message snippets when returning from the background
- Fixed an issue where notification messages would only be processed on launch and not on return from background
- Fixed an issue so task cancellation is correctly propagated to database queries
Full Changelog: 2.14.11...2.15.0
Signature of release files
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Signed SHA256 hashes of release files. These are signed using Jason's GPG
key available at:
- the oxen-io/oxen-core repository, at /utils/gpg_keys/Jason.asc
- OpenPGP key servers (Jason Rhinelander <jason@session.foundation>, C4992CE7A88D4262)
- https://deb.session.foundation/public.gpg
- https://imaginary.ca/public.gpg
- https://github.com/jagerman.gpg
c4d2ba2c8e5026a1e6cfbc6ee4cf0c7095edfb7f95481a87652949de6314fa33 session-2.15.0.ipa
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCgAdFiEEMCXxeJf0bLVTgXjKQB55DgYLsA4FAmnGvHAACgkQQB55DgYL
sA66hw//bj0TsmMmyBxhPOIKuR4GvtSdgjq75JiUBEES2L8a43XfeMB1nILMya8q
xOxKjfQps/lqhaxB7U5mGTVOLtrnSTQInrkruXFUwNaLfXfsyhrV9Ij0z+fHpqdK
7Ss3oIw1ibj9f1zfY5D310ENeookDkWGSdFB3u0LwCRAa4ldTojXZMBIuP2ZoQ+x
OG4TgZOQdt8yPlcX5fjvo8CSSJuFP9Vkb/mEUU4J/JwixqfnPkVOHBWonIWxv6B1
AU3lip0Pywmk7URzGiX7VEZgoPL8HOUPG17q6uuxnOZ5CRkyYttDYv9MXHKMIYU9
vjG2yJstwvVNHn+NVwJ2NKcT1Kp1OSjeVokp9hb8sQAHgAgHq5sub73H5c5NPYgL
6BTPoKPiIMynab6lfxqDaJ2W4FhjzQ19gbwaycjZle+GHj6AkNktQJevkDCV5lPx
jE5lQS3XFtlfiO7j6Ol6fmfrOb5mRKSh8n3vChQI7Qzqntky44tHJzicTQ+azeBS
miJGFs+l6vQrj/elTwXqWOYKZv3djTonnPJhZsIpIltPEhZd7PjxzsnLBknYYxwy
LY9slDRjQs2i7e1oCeGm/e7jFoP/uup78QhJtmkLAG4E/SgprtFKUYjeitHLktJK
dlCm0mmjt3+/7wotC3zJDITIjgh9uwc3aSM1q2Gv0fM/ri/Ltss=
=nupU
-----END PGP SIGNATURE-----