In coordination with Desktop and Android, iOS will be using all-numeric
fingerprints, aka "Safety Numbers".
Furthermore, the concept of verifying one identity and then the other
has been removed. Instead we ask users to exchange a single number, or
scan a single QR code. These credentials are built by combining the
users identities.
// FREEBIE
If we have a serialized object in our data store that wasn't properly
removed, we can be faced with an exception when enumerating objects in
the database, e.g. when we add a new Yap Index.
// FREEBIE
This would especially affect users with large databases on older
devices.
Some of these database extensions aren't strictly necessary to launch
the app. Theoretically we could see weird read receipt behavior for
the initial 10-30 seconds after the app is launched for first time.
// FREEBIE
I botched a migration 6 months ago, which left some lingering TSRecipients serialized in our data store, laying in wait to explode the next time we enumerate every object in the database (e.g. when we add an index).
The bloom filter migration failed to remove TSRecipients in the somewhat rare event that the local user had no downloaded bloom filters. This could happen e.g. if they were low on disk space at the time of running the migration, I believe the app would remove the bloom filter cache.
// FREEBIE
A botched migration 6 months ago left some lingering TSRecipients
serialized in our data store, laying in wait to explode the next time we
enumerate every object in the database (e.g. when we add an index).
// FREEBIE
Initially we don't have device messages for our remote device. We need to send the empty device list to get the updated list of remote devices.
Introduced lots of dependency injection to make MessagesManager more testable.
// FREEBIE
* Don't attempt to send a message unless we've successfully built device-messages
* Only process message exception when we're done with retries.
// FREEBIE
* Don't attempt to send a message unless we've successfully built a deveice-messages
* Only process message exception when we're done with retries.
// FREEBIE
Even though it's pretty obvious why we need your camera when you push a
"take photo" button...
Unfortunately this warning will be confusing if someone's first exposure
to it is to scan an identity code, but that seems like an edge case not
worth pegging an extra sentence of copy to an already unnecessary
warning.
Also, we're enabling push notifications for dev, per apple build
submission feedback.
// FREEBIE
Also, more nullability annotations.
NSURL can't be given a nil filepath. This can occur when a previously
supported attachment was downloaded, and then viewed after that
attachment was no longer supported (e.g. when installing back and forth
across versions)
// FREEBIE
* New bg (Bulgarian) localization!
* New sq (Albanian) localization!
* replace unfinished bg_BG localization with complete bg localization
* caps keys to make it easier to see missing localizations
* pull with newly pushed source keys
// FREEBIE