Commit Graph

72 Commits

Author SHA1 Message Date
Matthew Chen
87ace3779d Respond to CR and proto schema/reconciliation review. 2021-04-06 13:57:06 -03:00
Matthew Chen
a00d14ddc4 Payments: Models 2021-04-06 13:57:06 -03:00
Matthew Chen
86b8eb08b8 Remove YapDatabase.
Apply asset from design.

Fix rebase breakage.
2021-03-25 11:41:16 -03:00
Matthew Chen
d0cbf8cfd0 Rework dependency access. 2021-03-25 09:24:27 -03:00
Nora Trapp
3669066e42 Begone OWSBatchMessageProcessor 2021-02-23 10:45:50 -08:00
Nora Trapp
91d2953843 Begone OWSMessageReceiver 2021-02-23 10:45:50 -08:00
Nora Trapp
16708b9dd7 Batch message decryption and processing 2021-02-23 10:45:50 -08:00
Matthew Chen
584a638993 Create a new GRDB storage adapter after grdb schema migrations. 2021-01-27 09:45:12 -03:00
Matthew Chen
025fc61cd7 Port attachment downloads logic to Swift. 2021-01-21 20:40:24 -03:00
Nora Trapp
b32c5bda4a Add scaffolding for Group Call messages 2020-11-19 16:02:22 -08:00
Matthew Chen
686aee752c Rename OWSMessageSender -> MessageSender. 2020-09-17 21:35:35 -03:00
Matthew Chen
516defef39 Remote deprecation. 2020-09-02 16:51:59 -03:00
Nora Trapp
e8ec5330a0 Add mentions to the database 2020-08-04 14:08:29 -07:00
Matthew Chen
6d09545892 Resumable attachment download. 2020-08-01 12:18:13 -03:00
Matthew Chen
2d3b6f9018 Implement attachment upload v3. 2020-08-01 12:06:58 -03:00
Matthew Chen
28b43544b3 Implement attachment upload v3. 2020-08-01 12:06:57 -03:00
Michelle Linington
b276e8eb02 IOS-445: Do CDS lookup during message send for recipients without UUID
This adds a new async operation in the message send flow. MessageSender
will now verify that the intended recipients of a message all have UUIDs
before proceeding. If any recipients are missing a UUID, it'll kick off
a CDS lookup for the invalid recipients.

While this code appears to work, this is a first pass. Looking to get
some inital feedback in a pull request. It's unclear to me whether or
not this pattern fits in with the existing error propogation flow in
MessagSender promises. It's also unclear whether or not the error I'm
using is correct.

Some other changes that come along for the ride:
- Add a -perform() method to ContactDiscoveryService to automatically
  submit itself and its dependencies to its static operation queue
2020-07-22 21:27:22 -07:00
Michelle Linington
5c7e82bbe3 Adopt changes from precommit linting scripts 2020-07-06 13:48:59 -07:00
Michelle Linington
5b0656060e IOS-641: Introduce various synchronization utilities
This commit adds two new synchronization utilities:

- Unfair locks: This adds an Objective-C wrapper around os_unfair_lock
  to help bridge it to Swift. (Swift's handling of the underlying C
  struct can lead to surprising TSan failures). This will be useful as a
  simple, performant lock in cases where fairness is not a concern.

- Shared serial queues: Private serial queues that are untargeted will
  target the global concurrent queues. Sometimes this is what we want,
  especially for potentially long-running work items. But for cases
  where work items are brief private serial queues risk spinning up a
  new thread.

  For private queues where the individual work items are brief and there
  isn't a more appropriate queue to target, the shared serial queues
  are a potential candidate.

This change also introduces tests for these new utilities and some QoS
management helper methods.
2020-07-06 13:48:59 -07:00
Nora Trapp
fc63f37329 New safety number sheet 2020-06-25 19:04:12 -03:00
Nora Trapp
aab95db806 Strip out message request special casing 2020-06-16 12:28:21 -07:00
Matthew Chen
26a1e4a8e8 Do all profile fetches for message sends in parallel. 2020-06-11 17:42:43 -07:00
Matthew Chen
ba801f05ce Label the "slow write transactions" logging with the source of the transaction. 2020-06-07 10:37:55 -03:00
Nora Trapp
f0d7a9cb9c Add early message handling for delivery receipts, reactions, and delete for everyone 2020-04-16 19:44:45 -07:00
Nora Trapp
a8c32a92e6 Decouple PINs and registration lock 2020-04-03 11:17:01 -07:00
Michael Kirk
414bcbab95 New CDS endpoint 2020-03-04 10:08:55 -07:00
Matthew Chen
bcc2a4593c Add support for v2 groups to storage service. 2020-02-27 10:01:34 -03:00
Matthew Chen
6e7a0bff5e Add support for avatars to v2 groups.
* Log upload failures.
* Finalize group avatar uploads.
* Encrypt & decrypt group avatars.
2020-02-26 15:24:35 -03:00
Matthew Chen
c0547f33d2 Merge remote-tracking branch 'private/release/3.5.0' 2020-02-24 20:29:33 -03:00
Nora Trapp
e7591df991 Sync message request response 2020-02-20 17:06:24 -08:00
Matthew Chen
4903d313bd Add group v2 capability and improve handling of network errors. 2020-02-10 14:24:09 -03:00
Matthew Chen
db0adf077a Respond to CR. 2020-01-23 12:00:42 -03:00
Matthew Chen
892ce5c135 Rework message processing to handle groups v2. 2020-01-17 17:34:37 -03:00
Matthew Chen
36c6cb1263 Create and fetch groups v2. 2020-01-17 17:26:18 -03:00
Michael Kirk
9be32858d0 permissively parse legacy and modern mexican phone number formats 2020-01-16 11:41:48 -07:00
Michael Kirk
11575926b1 remove unused ContactQuery 2020-01-15 14:28:04 -07:00
Nora Trapp
35cd3a4d64 Allow conforming to sync manager stuff in Swift 2019-11-19 18:07:51 -08:00
Nora Trapp
14c8f4175e Add Reaction Model 2019-11-14 13:22:47 -08:00
Michael Kirk
0fca274e62 Sync Groups and Contacts 2019-11-04 14:06:54 -08:00
Matthew Chen
04b2863311 Add TestModel. 2019-09-18 09:04:19 -03:00
Nora Trapp
129535f2d7 Merge branch 'release/2.42.0' 2019-08-29 15:21:40 -07:00
Nora Trapp
0c69664da9 Fix missing import 2019-08-29 10:30:08 -07:00
Michael Kirk
967780b5e7 Run perf tests with real-world optimizations 2019-08-29 09:47:52 -06:00
Michael Kirk
ec18ab33c0 fixup build 2019-08-22 16:58:54 -06:00
Michael Kirk
34ba50bd02 broadcast media operation
Only upload once when sending to multiple via the camera first flow
2019-08-15 09:36:57 -06:00
Matthew Chen
2a5683b843 Introduce storage coordinator. 2019-08-13 16:52:38 -03:00
Nora Trapp
81783c253a Remove Contacts Offer 2019-07-29 12:40:09 -07:00
Michael Kirk
796b1ebb73 modern CDS vs. UUID 2019-07-25 14:06:06 -06:00
Matthew Chen
88e89b5b53 Remove YDB connections. 2019-07-25 10:35:19 -03:00
Matthew Chen
189e366209 Remove YDB connections. 2019-07-25 10:25:45 -03:00