Summary of changes
- Audio refactor which includes:
- New audio message player, with ability to scrub/seek and change playback speed
- New mini player visible in the conversation and home screens. Tapping it will bring you back to the currently playing audio.
- New media notification shown while audio is playing.
- Landscape mode support
- Predictive back and Android 16 targeting
- Enable R8 to reduce apk size
- More crash fixes
- More detailed debug logs for message polling issues
What's Changed
- Force re-run pro details fetching worker by @SessionHero01 in #1872
- UI: Preferences settings Compose by @jbsession in #1874
- [SES-5093] - Fix user not pro during renewal by @SessionHero01 in #1877
- Update to latest Gradle by @SessionHero01 in #1878
- SES-4433 : Handle landscape mode by @jbsession in #1527
- Bump androidx.activity:activity-compose from 1.10.1 to 1.12.2 by @dependabot[bot] in #1825
- Fix : Manage members QA pt.4 by @jbsession in #1881
- SES-1971 : Enable minification by @jbsession in #1566
- Bump io.github.simophin:sqlite-web-viewer from 0.0.3 to 0.2.0 by @dependabot[bot] in #1604
- Bump androidx.core:core-ktx from 1.16.0 to 1.17.0 by @dependabot[bot] in #1580
- Bump net.zetetic:sqlcipher-android from 4.9.0 to 4.13.0 by @dependabot[bot] in #1883
- Bump org.jetbrains.kotlinx:kotlinx-serialization-json from 1.9.0 to 1.10.0 by @dependabot[bot] in #1885
- Bump com.huawei.agconnect:agcp from 1.9.4.300 to 1.9.5.300 by @dependabot[bot] in #1886
- Bring release/1.31.0 to dev by @SessionHero01 in #1888
- UI : MediaPickerFolder, MediaPickerItem compose, MediaSendViewModel updates by @jbsession in #1887
- Update proguard rule and build script by @SessionHero01 in #1889
- [Automated] Update translations from Crowdin by @stfsession in #1894
- [Automated] Update translations from Crowdin by @stfsession in #1895
- SES-1785 - do not sync data extraction messages by @ThomasSession in #1897
- [Automated] Update translations from Crowdin by @stfsession in #1898
- Fix version data fetcher not working by @SessionHero01 in #1899
- Audio Refactor by @ThomasSession in #1890
- Wrong type for refund request by @ThomasSession in #1903
- Fix test setup and tidy up IP2Country by @SessionHero01 in #1904
- Bring 1.31.0 to dev by @SessionHero01 in #1905
- Update proguard-rules by @jbsession in #1906
- Backlog fixes by @ThomasSession in #1907
- Bump org.robolectric:robolectric from 4.16 to 4.16.1 by @dependabot[bot] in #1911
- UI : Help Settings Compose by @jbsession in #1892
- UI : Landscape QA fixes by @jbsession in #1909
- Fix/backlog cleanup by @ThomasSession in #1915
- [SES-4998] - Fix pro not showing on incoming MR by @SessionHero01 in #1916
- Bump huaweiPushVersion from 6.13.0.300 to 6.13.0.301 by @dependabot[bot] in #1914
- Fix/remove streams by @ThomasSession in #1917
- Bump daggerHiltVersion from 2.59 to 2.59.1 by @dependabot[bot] in #1910
- Bump media3ExoplayerVersion from 1.9.1 to 1.9.2 by @dependabot[bot] in #1912
- Audio tweaks by @ThomasSession in #1920
- Misc improvement by @SessionHero01 in #1923
- Bump gradle-wrapper from 9.1.0 to 9.3.1 by @dependabot[bot] in #1913
- Update Geolite2 Country CSVs by @KeeJef in #1922
- Release/1.31.0 into dev by @ThomasSession in #1918
- Techdebt/remove guava by @ThomasSession in #1924
- The new designs have the buttons inverted by @ThomasSession in #1926
- [SES-4612] - Fetch initial config from whole swarm by @SessionHero01 in #1928
- SES-5221 : Deleted untrusted attachment keeps showing after deletion by @jbsession in #1927
- SES-1227 : Split out parentheses from URL - Android by @jbsession in #1925
- Remove jackson related for linkpreview by @SessionHero01 in #1931
- Ticking more often to get a more precise update time displayed by @ThomasSession in #1929
- UI : Compose refactor qa by @jbsession in #1934
- SES-5048 : Restoring from Recovery Password Adds Note To Self Conversation (No Network) by @jbsession in #1930
- Remove jackson from a few more places by @SessionHero01 in #1935
- Fix/giphy models by @ThomasSession in #1936
- Bring Release/1.31.1 to dev by @SessionHero01 in #1937
- Fix : Incorrect qaTags by @jbsession in #1939
- SES-5245 - Fixed file sharing by @ThomasSession in #1942
- Fix/giphy models by @ThomasSession in #1941
- Fix : Link previews by @jbsession in #1940
- Remove jackson from UpdateMessageData by @SessionHero01 in #1938
- Remove jackson from emoji and onion request builder by @SessionHero01 in #1948
- Fix giphy not being able to send and a crash sending quote by @SessionHero01 in #1950
- Tidy up recently used emoji by @SessionHero01 in #1955
- Bump kotlinVersion from 2.3.0 to 2.3.10 by @dependabot[bot] in #1943
- Bump org.mockito.kotlin:mockito-kotlin from 6.1.0 to 6.2.3 by @dependabot[bot] in #1944
- Release/1.31.2 into dev by @ThomasSession in #1954
- Remove remaining of jackson by @SessionHero01 in #1956
- Bump com.huawei.agconnect:agcp from 1.9.5.300 to 1.9.5.301 by @dependabot[bot] in #1945
- Fix crash when sending out read receipt by @SessionHero01 in #1957
- Bump uiTestJunit4Version from 1.10.1 to 1.10.3 by @dependabot[bot] in #1946
- Added a safety layer for purchasing pro on the same google account on… by @ThomasSession in #1958
- Bump org.assertj:assertj-core from 3.27.6 to 3.27.7 by @dependabot[bot] in #1947
- Fine tune caching policy by @SessionHero01 in #1960
- Updated obfuscated id to the pro key by @ThomasSession in #1959
- Fix crashes when opening attachment by @SessionHero01 in #1961
- Making sure some classes don't get removed by R8 by @ThomasSession in #1962
- SES-5239 : Media folder missing qa-tags by @jbsession in #1963
- Add API name when logging server error by @SessionHero01 in #1964
- Fix a crash on start up by @SessionHero01 in #1966
- [Automated] Update translations from Crowdin by @stfsession in #1965
- Optimizing community joining process by @SessionHero01 in #1968
- SES-2568 : Prevent triggering the app version check on test build by @jbsession in #1969
- Propagating the location/fileId from received proto data by @ThomasSession in #1970
- Tweaking poller logic by @SessionHero01 in #1972
- The background poller can never start if the user swipe off or force … by @ThomasSession in #1974
- [Automated] Update translations from Crowdin by @stfsession in #1973
- Fix : MediaPicker button flags by @jbsession in #1978
- Bring release/1.31.3 to dev by @SessionHero01 in #1981
- "In progress" refund by @ThomasSession in #1979
- Bring Release/1.31.3 to dev by @SessionHero01 in #1983
- Update/seekbar to slider by @ThomasSession in #1987
- Add option to disable split apk by @SessionHero01 in #1988
- Fix dead poller after initial polling times out by @SessionHero01 in #1989
- Better debug logs in pollers by @SessionHero01 in #1990
- Internally managed coroutine scope for pollers by @SessionHero01 in #1991
- Fix clock resync issue by @SessionHero01 in #1998
Full Changelog: 1.31.3...1.32.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
7df52f4004889447dfead006c232c8529933d9d64fdd3bd1e2cc0c1f1cc33a3a app-play-release.aab
3146b39a636a0d624fb02ab8a092279ede2a897510d3bca96f266a1618f234ba session-1.32.0-arm64-v8a-play-release.apk
48b744925f86025e5caaeb27554ec1fe9954814ddf17171ddd4414e6ad0de96c session-1.32.0-armeabi-v7a-play-release.apk
850f67dbff85a6a0ed3abc4e4e84f9232303c5a00435ba8130203474e9556ba1 session-1.32.0-universal-huawei-release.apk
d9c2a4a8723227ce31c38347a8b53e43b42e7ecd651238820f868e560bc10350 session-1.32.0-universal-play-release.apk
d25b15434835f7f1bebfc9bfe6fc962eef605958d314967526d0ea1fad44be8f session-1.32.0-x86_64-play-release.apk
ebfb1ff384e35a8fb16ec0846cdd44b0e5bf201762bc2f697cefb85775e380f3 session-1.32.0-x86-play-release.apk
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCgAdFiEEMCXxeJf0bLVTgXjKQB55DgYLsA4FAmmdzSMACgkQQB55DgYL
sA7iFw/+OLZK3PCmcuIQZmigl4TNXE5Jf22/y13ZCKFEgaFrP5WTUOfd1JsLD4tg
QajNxkCQBKNqwaEP0KnbiKyEFjEshCdTGhkCSpiCIBNBmSuA6nNyfUUp5nnmD2KD
DHXCJPwd5g0/UVQ2KKblG2K2JndQNeAJUqfvkO/PNnMsbJedDTXM+3ywNaotFI7D
sAsB14uLvwJNEhbiLxl8ehw7N9AHlX1N8r6qkpzZddxYhBWvkMHdZrkt3xrDv8gO
gAbbmYG8hC4RK8sTDFRZRwFCvRoRw1EsUVKKijhTLdrIfGtVh9VpV+mEJt8QCJ2Q
OCbX1DFrIDHcjsOXRNHbEwbeHA08oGsYz1FtRUq/g2Gc6mNBkxc+JbUyZusB0ff+
83/w/uwgjFpdje5JHzCZ3JEABa28zJDPXIQ1s2ESWfcl5YjUkhm0GmAl1RA5OSOQ
7DXBbCn7YfGurJulZ5Kql87G/21cQtJaGsHUjgDLe1pZkuvPH/mmM7nUdfTYumhn
iozuNgDJfX/nN7E5AO/0v29YLB04XJ8fbziGtvODY+g9H9Yq6DdyMoPDBPd137bK
oXsXy8RbGjFk3XvClbhLqLYZtDTJ0jAq3vNFtpPkHE4/tZQ+t3qxYGUOJTxpv5Hn
lrcB1nAk/5Qif1X57NYaJ9hLAF1BTQl0RVFz7/ducSXTlG2SbBY=
=xZUj
-----END PGP SIGNATURE-----