Releases: zulip/zulip-mobile
v27.181
Highlights for users, vs v27.178 (last prod release)
- (Android) Notifications have a distinct sound, show more context, and expand to individual conversations. (#2691, #4842, #5136, #3150)
- Fixed one cause of slow startup times. (#5226)
- Fixed a family of bugs when a stream is renamed while you're looking at it. (#4333)
- Wordle players rejoice: Zulip fully supports the emoji for large green, yellow, and black squares. (#5220)
Plus, like every release, other fixes and improvements for your Zulip experience.
Highlights for developers, vs. 27.177 (last release from main)
-
Platforms and dependencies:
-
Bumped targetSdkVersion to 31, aka Android 12. Almost a year ahead of deadline! (#5101)
-
Upgraded to Flow v0.141.0. (#5219)
-
Upgraded to React Native v0.64.3 from v0.64.2, so a new minor release. (#5167)
-
Migrated to Expo modules, from their "unimodules". This unblocks upgrading Expo packages more generally, and we did. (#5133, #5203)
-
-
Server versions and API:
-
We warn to Sentry on server versions before server-3.0. The minimum supported version, the threshold for warning users, remains server-2.1. (#5218)
-
Our code now relies on server-1.9, i.e. Zulip Server 1.9+, released in 2018. These changes affected only comments and tests; future changes to rely on 2.0 and later will change actual behavior, as did the change in v27.177 to rely on server-1.8. (#5192)
-
In
update_message
events for server stealth-edits, we handle a possible future protocol withuser_id: null
instead of omitted. (#5194)
-
-
We link separately to /policies/ on zulip.com and on the current server, rather than only to /terms/ and /privacy/ on the current server. (#5168)
-
Types and data structures:
-
Our migrations for our Redux data now have tests. These found a year-old migration didn't work; it's fixed. (#5190)
-
We now use stream IDs instead of stream names to identify streams in most places, including the Narrow type. (#5183, #5205, #4333, #5223, toward #3918)
-
We now use $ReadOnlyArray and read-only object types in lots more places, including all the array and object types in our actions and other Redux-related types. (#5186)
-
-
Resolved issues: #5145, #4840, #5168, #5156, #5162, #5171, #5101, #5187, #4687, #5195, #5206, #5133, #4333, #5130, #5218, #5220, #3150, #5223, #5226
-
Of these, #4840, #5156, and #5162 were also in the two cherry-pick releases v27.178 and v27.179.
-
#5206 was a regression in v27.180, not present in any beta or production release.
-
User-visible fixes not detailed in user highlights include: #5187, #5195, #5223, plus #5068 (in beta v27.176 highlights), plus see v27.177 and v27.176.
-
Highlights for developers in 27.177, vs. 27.176
(This was an alpha-only release.)
-
We now warn the user when the server isn't registered for push notifications. (#1507)
-
The tools/checkout-keystore script, used in preparing the published builds, now decrypts the keystore with Sequoia PGP rather than GPG. (PR #5144)
-
Resolved issues: #5136, #1507, #4631, #5138, #5031, #5140, #5143, #5153
sha256sum -c <<EOF
8c836126d4e331937a745653c6c3c1b79e5114a0cdb443b6c040268ea92e8548 app-release.apk
3c361e4a031df11439919f91fa8a122c1610ec7141ad6dacb3786b0b2b03207a app-release.aab
EOF
v27.179
This is a stable release in the v27.176 series, with cherry-picked changes atop v27.176.
Highlights for users, vs. v27.176
- Fix bug where unreads screen could lead to an empty list of messages if topic was edited (#4840)
- Add a "Mark all as read" button in PM conversations, just like in topics and streams (#5156)
- (iOS) Fix behavior when you have "Prefer Cross-Fade Transitions" chosen in system settings (#5162)
Highlights for developers, vs. v27.176
sha256sum -c <<EOF
7dcd9d97938753d7a095f51270ccf5eac74716e320ddf5b5358c4b3c1f52eea5 app-release.apk
92b54a3fc6db8b7eed81012cd11f903913eb604050335eb18e6d44a0b48f2cd2 app-release.aab
EOF
v27.178
This is a stable release in the v27.174 series, with cherry-picked changes atop v27.175.
Highlights for users, vs. v27.175
- Fix bug where unreads screen could lead to an empty list of messages if topic was edited (#4840)
- Add a "Mark all as read" button in PM conversations, just like in topics and streams (#5156)
- (iOS) Fix behavior when you have "Prefer Cross-Fade Transitions" chosen in system settings (#5162)
Highlights for developers, vs. v27.175
sha256sum -c <<EOF
a706dbea6db536f6de0028f6d8ec1df63db28f3d46b1064f70a99309c932dfbd app-release.apk
2ac4147780f23f9d83b5fe1befd738d6d282d65424c280e25add5127a0118a6e app-release.aab
EOF
v27.176
Highlights for users
- (Android) Notifications have been reworked to be more informative and easier to read. (#2691, #4842)
- (Android) The app no longer restarts when you switch between split-view mode and fullscreen mode. (#5068)
Plus, like every release, other fixes and improvements for your Zulip experience.
Highlights for developers
- Made more progress on preparing our Flow types for better multi-account support. (#5066, #5083, #5105, #5113)
- Resolved issues (earliest first): #4239, #5081, #2691, #4633, #5068
sha256sum -c <<EOF
a9c681effe344a345b1ea62e8420b90674654747624b4f1ec42b4fd836d9e992 app-release.apk
2e9e0f31ff8981831680f2da085fc200c6ef683db4484c4e250b6e7a49e5a087 app-release.aab
EOF
v27.175
This is very similar to the previous beta release v27.174, but with a build-time fix for a Sentry misconfiguration.
Highlights for users, vs v27.171 (last prod release)
- The settings menu has moved from the bottom nav bar to the Profile tab. (#4929)
- The app now respects the server's "mandatory topics" setting. (#4378)
- (Android) When sharing content from other apps, you can now send it to just yourself. (#5020)
- New translation for Sinhala. (#5071)
Plus, like every release, other fixes and improvements for your Zulip experience.
sha256sum -c <<EOF
aea4198fc68b2e76766840b5b7215534116b4bafe7085842a8c6e4f4c0efb9e6 app-release.apk
83d36149fcec6c86a80195f919c2be4df589b508e546acdffeedb32b62c22031 app-release.aab
EOF
v27.174
This was a beta-only release.
(v27.173 was an alpha-only release, due to the issue fixed in #5075 / #5076.)
Highlights for users, vs v27.171 (last prod release)
- The settings menu has moved from the bottom nav bar to the Profile tab. (#4929)
- The app now respects the server's "mandatory topics" setting. (#4378)
- (Android) When sharing content from other apps, you can now send it to just yourself. (#5020)
- New translation for Sinhala. (#5071)
Plus, like every release, other fixes and improvements for your Zulip experience.
Highlights for users, vs v27.172 (last beta)
- (Android) Fixed a bug where "No Internet connection" sometimes showed when it shouldn't. (#5065)
- The settings menu has moved from the bottom nav bar to the Profile tab. (#4929)
- The app now respects the server's "mandatory topics" setting. (#4378)
- (Android) When sharing content from other apps, you can now send it to just yourself. (#5020)
- New translation for Sinhala. (#5071)
Plus, like every release, other fixes and improvements for your Zulip experience.
Highlights for developers, vs v27.173
Highlights for developers, in v27.173 vs v27.172
-
Set
targetSdkVersion
to 30 and switched over to "scoped storage". (#4283, #4284) -
Upgraded @sentry/react-native to 3.1.1, the latest. (#5050)
-
Improved our Flow types in src/generics.js and wrote tests for them, with demos for writing more tests. (#5043, #5053, #5054)
-
Resolved issues (earliest first): #5050, part of #5038, #4929, #4866, #4811, #4812, #4378, #4747, #3998, #5020, #5061, #5065, #5060, #4283, #4284
sha256sum -c <<EOF
800c7d179f280f778ba405a4dd72bb1b5f3a2b5296a9a7a2549ba8d18faa35fc app-release.apk
68e39c69373ac47e26b259ad0a28a2b8d7a8f7d16679b96b6d94cdf323c01f50 app-release.aab
EOF
v27.172
Highlights for users
- Added a new action sheet on long-pressing a stream name. (#4899)
Plus, like every release, many other fixes and improvements for your Zulip experience.
Highlights for developers
-
(ios) Fixed some build issues with Xcode 13. (#5028)
-
Fixed a Jest test flake on ZulipAsyncStorage. (#4994)
-
Cleaned up some code in src/utils/recipients.js. (#5011)
-
Made progress on preparing our Flow types for better multi-account support. (#5016, #5017, #5023, #5030)
-
Fixed an edge case in our new persisting logic. (#5025)
-
Removed the apparently idle BackNavigationHandler component. (#5033)
-
Formatted the redux-persist code so it's closer to our style. (#5040)
-
Resolved issues (earliest first): #4994, #5012, #5011, #5016, #5017, #5003, #5028, #5025, #5023, #5030, #4899, #5021, #5033, #5035, #5040
sha256sum -c <<EOF
8d7a4788141e7ac7843a400d3d3be5c01091828132cdf1f66a7363a5862c173d app-release.apk
025dfc4a9a00d96e5385bd3677bb777f21bb95c66751dfce3b357ca57f34276a app-release.aab
EOF
v27.171
Highlights for users
- (iOS) Fixed bug that could cause notifications to make sound with device in silent mode. (#4897)
Plus, like every release, many other fixes and improvements for your Zulip experience.
Highlights for developers
-
Sentry is now fully set up for Android-native code. (PR #4996)
-
The types PmOutbox and StreamOutbox are now distinguished more fully. (PR #4998)
-
We now require sender_id, server, and realm_uri in notification data, rejecting forms from servers we no longer support. (PR #4967)
-
We've prepared the persistent-data storage code so it's easier to add transaction logic and make it sound: #4841. We've also narrowed the race window to mitigate the symptoms of that issue, by using
AsyncStorage.multiSet
and by separating the serialization step from the storage step. (PR #4694) -
Outbox values now have a stream_id. (PR #5000)
-
We've improved the Sentry logging for an unexpected report from the invariant in RawLabel. (PR #5004)
-
When reporting API errors to Sentry, the invalid-JSON case is now a bit more explicit. (PR #5002)
-
Resolved issues (earliest first): #4897, PR #4996, PR #4998, PR #4967, PR #4934, PR #4694, PR #5000, PR #5004, PR #5002
sha256sum -c <<EOF
778c166a0b0b5073c17216b1a8b5cac0d7050fc42445dc69ed131ed7b8ace26c app-release.apk
9ccbd39e62d9c7e842c5f670080e2667893d11bc716777cc68fdbf43a8c862fc app-release.aab
EOF
v27.170
Highlights for users
- Improved input-focus behavior in the compose box. (#4981)
- Messages that @-mention you now appear even if you've muted their topic or stream. (#3472)
- Fixed a "Failed to send" bug when scrolled far up in some message views. (#4973)
Plus, like every release, many other fixes and improvements for your Zulip experience.
Highlights for developers
-
The Git branch for the project has been renamed from "master" to "main", as part of the shift in the broader Git community toward this more inclusive convention. Please see "#announce > Git branch renamed to ‘main’" on the Zulip community server (CZO) to learn more.
-
Upgraded to React Native v0.64! (#4426)
This introduces two new warnings, and you can ignore them both: one
when you runyarn
, and one when you run Jest. Those will disappear
once we use a version ofjest-expo
that targets RN v0.64. (We
expect a release from them soon.) -
Resolved issues (earliest first): PR #4973, PR #4831, PR #4981, #4907, #4951, #4909, #3472, #4426, PR #4992
sha256sum -c <<EOF
bf640c36a03ac1c6afecf85984e5e5f25ca888b38ad96cbf2199e30f52d8cd15 app-release.apk
a7d23aa49554e3188acf1798e9bd65c2a9b19766e05c2ca96824918a5b980a81 app-release.aab
EOF
v27.169
Highlights for users
- Messages are no longer marked as read when scrolling in search, @-mentions, and starred-message views (#4852).
- We now offer a more complete translation for Chinese (Taiwan) (PR #4285). Many thanks to our kind volunteer translators!
Plus, like every release, many other fixes and improvements for your Zulip experience.
Highlights for developers
-
(Android) Dropped support for Android versions older than Android 6 (PR #4938).
-
Over a dozen dependencies upgraded across major versions (PRs #4949, #4950, #4952); also other minor/patch upgrades, and some deps removed.
-
Resolved issues (earliest first): #4852, #4890, #4938, #4964, #4285, #4870, #4764
sha256sum -c <<EOF
ccd9692b3a0ffe9803f318a3becad7ce54756eedae1cb7179bb7303d5c95a3cd app-release.apk
1cd6cb6ac6478257490e01e5915977f709d711874a2954cf773e93109e0ae576 app-release.aab
EOF