Commit Graph

4712 Commits

Author SHA1 Message Date
Sasha Weiss
5d7241d038
Add parsing support for the pni capability 2023-03-24 10:07:39 -07:00
Max Radermacher
ebf6b8f5e7
Support PNIs in SignalServiceAddress 2023-03-23 12:43:01 -07:00
Sasha Weiss
be4b132ea6
Rename StorageServiceManagerProtocol 2023-03-23 09:29:38 -07:00
Max Radermacher
fa7f0e98fa
Clear “display badge” when your last badge expires
Also, explicitly track “old badges” vs. “new badges” when redeeming.
2023-03-23 00:32:42 -07:00
Evan Hahn
a77b45c6de Remove Dependencies from the three launch jobs
This change should have no user impact.

`FailedMessagesJob`, `IncompleteCallsJob`, and
`FailedAttachmentDownloadsJob` used to inherit from `Dependencies`. Now,
they explicitly take their one dependency: a database.

I also made a few methods private because they didn't need to be
exposed.
2023-03-20 11:01:29 -05:00
Harry
5ad17c4f2d
Support change number in registration coordinator
* Factor out RegistrationCoordinatorLoader

* Add PNI change number state to regcoordinatorloader

* Don't exit change number flow once we start a pni operation

* Add ChangePhoneNumberPniManager to reg coordinator dependencies

* add params required for pni to change number registration mode

* change number from regcoordinator

* rename ChangePhoneNumber -> LegacyChangePhoneNumber

* remove pni change number support from LegacyChangePhoneNumber

* remove codable conformance from pni change number manager's pending state

* Update ts account manager state when finalizing change number

* Add message processor deps to reg coordinator

* addAsyncCompletion on dbv2 write transactions

* Suspend message processing while doing a reg coordinator change number

* hook up change number

* Add handler-free message processing suspension method

* odds and ends

* minor cleanup

* slight refactor to finalize change phone number in the export function

* Put wait for message processing + suspend onto messageProcessor

* kick of prekey refresh after pni change number finalize transaction ends

* nit
2023-03-17 17:55:06 -07:00
Sasha Weiss
8047472f68
Rename SubscriptionManagerProtocol 2023-03-14 17:44:38 -07:00
Pete Walters
3e3e0e5acf
Add manager to periodically validate usernames 2023-03-14 09:56:08 -05:00
Harry
a146e18aaf
Set up account state and exit registration
* Go to chat list view after registration

* sync system contacts during registration

* Use explicit local credentials for storage service operations during registration

* fix tests

* Quick hack to get through double pin confirmation

* Finishing touches

* lint

* fix build

* reload phone number discoverability after storage service sync

* fix tests again

* Take chat auth on account and contact record initializers

* Change around branches for clarity in OWSUserProfile

* pr comments

* Split ChatServiceAuth into the same and AuthedAccount

* fix tests

* merge woes
2023-03-09 21:54:51 -08:00
Sasha Weiss
cd67e81baa
Wire up PNI change-number to ChangePhoneNumber 2023-03-09 17:37:37 -08:00
Max Radermacher
174ee9ae86 "Bump build to 6.17.0.0." (nightly-03-08-2023) 2023-03-08 16:12:45 -08:00
Max Radermacher
93d97da82b
Split “in progress” & “saved” voice message drafts 2023-03-08 15:31:56 -08:00
Igor Solomennikov
396bda69ef
Improve media viewer open/close animations for partially obscured media.
Do not let media animate over navigation bar at the top or chat input field
at the bottom. This is done by clipping top / bottom areas of a view where animation takes place.
2023-03-03 22:47:14 -08:00
Evan Hahn
b733bffa2c
Wipe debug logs from very old versions 2023-03-01 17:00:58 -06:00
Max Radermacher
b2512dc85e
Add StorageServiceManager.waitForPendingRequests() 2023-03-01 13:07:38 -08:00
Evan Hahn
fb2a462f2d
Remove some DateUtil methods
This change should have no user impact.

I noticed that a few of these methods weren't used. Also, one of the
formatters was not used externally, so I removed it from the `.h`.
2023-02-28 19:35:56 -08:00
Max Radermacher
b0d89429f4
Optimize storage service operation scheduling 2023-02-28 19:12:22 -08:00
Max Radermacher
45b8aeec3b
Handle storage service items that are missing 2023-02-28 16:27:03 -08:00
Max Radermacher
faea834c5e
Clean up unknown identifier type handling 2023-02-28 16:26:18 -08:00
Harry
23368e413f
Only mark APNS tokens as , preventing rotation, for up to 60 days 2023-02-28 15:52:21 -08:00
Evan Hahn
41ff3c142b
Rewrite debug log scrubbing logic in Swift
Also introduces additional defense-in-depth improvements.
2023-02-28 15:55:00 -06:00
Max Radermacher
9e77e297e7 Merge records with unknown fields once per version 2023-02-27 14:34:04 -08:00
Max Radermacher
898fd2c4d5
Clean up queue names 2023-02-27 14:16:09 -08:00
Max Radermacher
bccb797e8b End operation after committing db transaction 2023-02-27 14:08:28 -08:00
Harry
cb6e99dd1d
Mark registration complete in RegistrationCoordinator 2023-02-24 11:12:22 -08:00
Max Radermacher
218663e430
Fix when ExitShareExtension gets called 2023-02-24 00:55:42 -08:00
Max Radermacher
fdbdc9716d Swiftify formatDuration(seconds:…) 2023-02-22 14:05:35 -08:00
Max Radermacher
0598c3f9b9
Clean up JobRecordFinder 2023-02-22 13:54:56 -08:00
Max Radermacher
b9a345bd36 Remove contactDiscoveryV2 feature flag
It’s enabled for all users, so we don’t need the flag.
2023-02-22 13:46:13 -08:00
Max Radermacher
59593c3c97
Add ServiceId & E164 types
* Use the new E164 type in a few places
* Use the new ServiceId type in a few places
2023-02-21 23:13:46 -08:00
Sasha Weiss
a6a17dcb6c
"Create a username" megaphone 2023-02-17 11:21:54 -08:00
Evan Hahn
96ef31f130
Add new (dormant) registration profile setup screen
Most notably, this required making a change to `AvatarBuilder` to let us
get a default avatar with no current user.
2023-02-17 11:39:19 -06:00
Sasha Weiss
5e0586ba7f
Add a flag for showing username education 2023-02-16 12:11:48 -08:00
Max Radermacher
77977fb597 Add background tasks for orphan data cleaner 2023-02-15 09:49:17 -08:00
Max Radermacher
37603f1906 Fix build error in username code 2023-02-14 18:07:05 -08:00
Sasha Weiss
44a6fa24ab
Add contacts' usernames to ContactRecord, if nothing better available 2023-02-14 13:42:53 -08:00
Sasha Weiss
bb7013ec71
Store the local username on AccountRecord 2023-02-14 11:25:48 -08:00
Harry
9501a5bbf5
Populate AccountAttributes in RegistrationCoordinator
* Populate AccountAttributes in RegistrationCoordinator

* pr comments and cleanup
2023-02-14 10:40:47 -08:00
Max Radermacher
56154557dd
Add isStructurallyValidE164
This merges & replaces `resemblesE164:` and `isValidE164`.

Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>
2023-02-13 13:45:00 -08:00
Max Radermacher
2f0bc4a690
Require a serviceId for storage service contacts 2023-02-13 12:44:45 -08:00
Max Radermacher
db2678e86b
Filter storage service contacts more consistently 2023-02-13 10:48:54 -08:00
Max Radermacher
1a0efe6fbb Don’t mark recipients without a UUID as registered 2023-02-13 10:46:18 -08:00
Max Radermacher
5259866822
Delete invalid storage service identifiers 2023-02-10 18:03:08 -08:00
Max Radermacher
c13ebc7482
Consolidate storage service code 2023-02-10 17:58:51 -08:00
Max Radermacher
0b10138c5a
Send sync request messages once per version 2023-02-10 10:24:41 -08:00
Max Radermacher
3c0c309048
Ignore update/delete requests that are empty
This isn’t required for correctness; it’s a performance optimization.
2023-02-09 13:51:04 -08:00
Evan Hahn
8e33543e7a Change Promise to Guarantee because it always resolves
This promise always resolves, so let's make it a `Guarantee`.

This change should have no user impact.
2023-02-08 14:11:30 -08:00
Max Radermacher
57b21b308d Swiftify pre key request parameters 2023-02-08 12:08:00 -08:00
Sasha Weiss
e5f1af6c2e
Support lookup-by-username 2023-02-08 10:16:57 -08:00
Harry
003cc19e62
Update SignalCoreKit. Use explicit DispatchQueue instead of relying on the implicit type on promise 'on' params
* Use explicit DispatchQueue instead of relying on the implicit type on promise 'on' params

* Update SignalCoreKit
2023-02-07 16:14:39 -08:00