Commit Graph

6858 Commits

Author SHA1 Message Date
Matthew Chen
1adc997422 Elaborate logging around NSE lifecycle & memory usage. 2021-10-08 10:32:54 -03:00
Michelle Linington
2f64ad9f74 Revert "Minor improvements."
This reverts commit ed47125c5f.
2021-10-07 20:16:50 -07:00
Matthew Chen
ed47125c5f Minor improvements. 2021-10-07 22:06:29 -03:00
Michelle Linington
d8233ca364 Small changes suggested by Jordan 2021-10-07 14:37:01 -07:00
Matthew Chen
76cb9141fa Default errors for message processing. 2021-10-07 18:33:17 -03:00
Michelle Linington
33ebf39d1a Lint 2021-10-07 18:30:37 -03:00
Michelle Linington
0f211f7461 Resend requests should not be encrypted with the 1:1 session 2021-10-07 18:30:37 -03:00
Matthew Chen
5a10f3080b Elaborate logging around reaction messages. 2021-10-07 17:09:18 -03:00
Matthew Chen
0cd10e9a17 Improve logging around main app launch detection. 2021-10-06 16:41:14 -03:00
Matthew Chen
5437f39c6f Fix how timestamps are logged in message processing. 2021-10-06 16:01:02 -03:00
Michelle Linington
4b95abc692 Fix build issue with conditional compilation 2021-10-05 23:03:36 -07:00
Michelle Linington
3fe573fb49 Remove variant visibility from public releases 2021-10-05 21:35:49 -07:00
Matthew Chen
b7ec3cf521 Tweak build commit handling. 2021-10-05 20:43:43 -07:00
Michelle Linington
13a2e75fb6 A couple small changes to improve visibility of build configuration 2021-10-05 20:43:42 -07:00
Matthew Chen
af3020a323 Respond to CR. 2021-10-05 18:20:10 -03:00
Matthew Chen
c3802fc5ef Post notifications off the main thread in the NSE. 2021-10-05 16:24:31 -03:00
Matthew Chen
2b0594596a Refine NSE coordination via darwin notifications. 2021-10-05 16:24:31 -03:00
Matthew Chen
1a066dc19b Block NSE REST fetches upon pending ACK count. 2021-10-05 16:24:31 -03:00
Matthew Chen
c653ef659c Block NSE REST fetches upon pending ACK count. 2021-10-05 16:24:31 -03:00
Matthew Chen
b2b3c312b6 Cancel notifications off the main thread. 2021-10-05 16:24:31 -03:00
Matthew Chen
5b2bfbdf15 Fire cross-process write notifications sync even if inactive. 2021-10-05 16:24:30 -03:00
Matthew Chen
0a71ec0c56 Skip ACKs for incoming messages that were recently successfully ACK'd. 2021-10-05 16:24:30 -03:00
Matthew Chen
a6b7f634a3 Debounce "cross process write" notifications in database change observer. 2021-10-05 16:24:30 -03:00
Matthew Chen
71ca6d7b2e Fix edge cases around short video. 2021-10-05 10:06:01 -03:00
Matthew Chen
87167b594e Improve logging around outage detection. 2021-10-05 09:53:11 -03:00
Matthew Chen
beed107dd7 Refine outage detection. 2021-10-05 09:49:54 -03:00
Matthew Chen
96090420e2 Refine outage detection. 2021-10-05 09:49:54 -03:00
Michelle Linington
bd894f6600 NSE shouldn't wake for group rings until we support it 2021-10-05 09:42:20 -03:00
Matthew Chen
45c21f8702 Merge branch 'release/5.21.3' 2021-10-04 14:40:49 -03:00
Matthew Chen
d6c120ae06 "Feature flags for .beta." 2021-10-04 13:31:25 -03:00
Matthew Chen
1f53af5dc6 "Feature flags for .production." 2021-10-04 13:31:19 -03:00
Matthew Chen
c2abf0b9ea Elaborate logging around NSE message processing. 2021-10-04 13:31:12 -03:00
Matthew Chen
879105bb56 "Feature flags for .beta." 2021-10-04 11:25:47 -03:00
Matthew Chen
b0ab9c0b02 "Feature flags for .production." 2021-10-04 11:25:40 -03:00
Matthew Chen
cea81733e7 Refine logging around NSE message processing. 2021-10-04 11:23:01 -03:00
Matthew Chen
27d8d511f2 Merge branch 'release/5.21.3' 2021-10-04 09:59:43 -03:00
Matthew Chen
74a09daee3 "Feature flags for .beta." 2021-10-04 09:57:16 -03:00
Matthew Chen
821c1c9638 "Feature flags for .production." 2021-10-04 09:57:06 -03:00
Michelle Linington
e1241eef76 Fix database path KVO 2021-10-04 09:53:37 -03:00
Michelle Linington
e8d7e7b930 Additional logging 2021-10-04 09:53:37 -03:00
Michelle Linington
6f4d3ea56a Remove debug log messages and lint 2021-10-04 09:53:37 -03:00
Michelle Linington
8446ab4069 Minor changes to folder selection and restoration cleanup 2021-10-04 09:53:36 -03:00
Michelle Linington
417c135fc9 Lint 2021-10-04 09:53:36 -03:00
Michelle Linington
25740a25ed Wait until new database has opened before finalizing 2021-10-04 09:53:36 -03:00
Michelle Linington
85bdc19dea Better handling of KVO unregistration 2021-10-04 09:53:36 -03:00
Michelle Linington
738a4aae44 Remove ability to open database in other directory modes
This is unsafe in a cross-process world
2021-10-04 09:53:36 -03:00
Michelle Linington
ccf9383533 Improvements to database swap flow
Added a bunch of comments clarifying the database swap requirements.
Also, removed the baseDir parameter from GRDBDatabaseStorageAdapter.
2021-10-04 09:53:36 -03:00
Michelle Linington
fdc983519a Dynaically update database location at runtime
Fixes an issue where users were no longer receiving messages after
restoration. During restoration, the restoring device copies the
transferred database files to a special "hotswap" directory since we
don't want to overwrite our currently in-use database. Once finished, it
re-opens the database pointing to our hotswap directory. It would then
move the hotswap database to its primary location on the next app
launch.

The problem here is our extensions don't know how to read the hotswap
directory. Even if we added that capability, it's going to be tricky to
coordinate which database they read and when as the main app shuffles
files around.

This fix adjusts our restoration flow. Instead of having a special
"primary" and "hotswap" directory that we need to fix up on the next
launch, we instead record a UserDefaults entry that points to our
current database directory.

Once transfer has completed, the main app only needs to update the
current database directory in UserDefaults. No post-launch swapping
needs to occur.

Extensions will listen for updates to this database location by
registering KVO on NSUserDefaults.

This change also adjusts the restoration flow to break it up into
discrete stages. The motivation here is we need to make sure that a
partial restoration doesn't put the extensions in an inconsistent state.
2021-10-04 09:53:35 -03:00
Michelle Linington
4d3cff87c5 "Feature flags for .qa." 2021-10-01 13:09:54 -07:00
Matthew Chen
b157c3b9a1 Merge branch 'release/5.21.2' 2021-09-30 23:40:22 -03:00