Commit Graph

23 Commits

Author SHA1 Message Date
Pete Walters
0142d39ef4
Improve registration+backups logging 2026-03-13 10:19:47 -05:00
Sasha Weiss
d267ec8305
Run swiftformat . 2025-12-30 11:34:05 -08:00
Max Radermacher
420eaa44b7
Require a Retry-After header for automatic retries 2025-12-16 14:56:44 -06:00
Max Radermacher
39724bb08c
Remove TestScheduler & Schedulers 2025-07-17 18:11:27 -05:00
Pete Walters
9e84ada7a6
Asyncify RegistrationSessionManager & RegistrationCoordinatorTests 2025-07-10 12:04:41 -05:00
Max Radermacher
10cb6f69f7
Use HttpHeaders in more places 2025-03-21 13:53:38 -05:00
Sasha Weiss
2000b82c0b
One KeyValueStore to rule them all 2024-11-15 18:47:54 -06:00
Harry
ba2f10732e
Parametrize transaction type in DB v2 protocol 2024-10-04 16:12:52 -07:00
Harry
b286715d6e
[Atomic device creation/linking 90 day timer] Delete legacy prekey rotation method and usages 2023-11-27 12:27:05 -08:00
Pete Walters
43b7f38ac9
Remove uses of sharedBackground queues. 2023-09-28 07:46:52 -05:00
Harry
cc436e0db8
Support registering with a landline 2023-08-03 09:42:07 -07:00
Sasha Weiss
8bd39bf8d5
Consolidate network error methods 2023-07-26 17:23:40 -07:00
Harry
bace13aabb
Add logging and explicit error message for registration 3p service errors 2023-05-12 16:59:40 -07:00
Harry
7daed0ae2f
typo fix
Co-authored-by: Utsav Dave <utsavdave1997@gmail.com>
2023-04-24 10:30:09 -07:00
Harry
a31fb00368
Change all e164 references in reg coordinator to E164 type 2023-03-16 11:32:13 -07:00
Sasha Weiss
81b6201a03
Rename KeyValueStoreProtocol -> KeyValueStore 2023-03-14 13:26:06 -07:00
Harry
8ca2d81d27
Add mcc/mnc to registration session if available 2023-03-14 12:41:31 -07:00
Harry
8c42d66489
Wipe related state on RegCoordinator when session id changes
* Wipe related state on RegCoordinator when session id changes

* Update Signal/Registration/RegistrationCoordinatorImpl.swift

Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>

* Update Signal/Registration/RegistrationCoordinatorImpl.swift

Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>

---------

Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>
2023-03-06 09:50:18 -08:00
Harry
f5bdd6bafa
Hook up RegistrationVerificationViewController
* Hook up RegistrationVerificationViewController

* Fix existing tests

* add new test cases

* pr comments
2023-02-21 08:37:08 -08:00
Harry
cd63f67b3e
Retry most network failures in RegistrationCoordinator
* Retry most network failures in RegistrationCoordinator

* Update the way we identify network errors to be more flexible

* Retry remaining requests

* Automatically retry registration requests if time intervals are short

* fix error types not compiling on kbs

* Add test for reg recovery password reg with retries

* fix extra t
2023-02-17 14:50:54 -08:00
Harry
a6b2326ef3
Update registation API responses to match updated server spec
* Interpret nil nextVerificationAttempt as a code not having been sent yet, not as no code able to be submitted

* Update request and submit verification code handlers to latest server spec

* Update CreateAccountResponse codes to match server spec

* Update ChangeNumberResponse codes to match server spec

* Rename some cases for clarity, propagate up network errors vs generic errors

* pr comments
2023-02-17 14:11:43 -08:00
Harry
3d6225060d
Add RegistrationCoordinator
* Add ability to compute registration recovery password

* Add RegistrationCoordinator

* remove repeat nav controller that evan added

* Scaffolding for RegistrationCoodinator test

* Add first round of RegistrationCoordinator tests, some stuff I needed to get them working, and some fixes to RegistrationCoordinator itself I discovered thanks to the tests

* switch to owsFailBeta

* Add auth credential candidate flow tests, related fixes and additions to coordinator and friends

* Add tests for session based registration path and associated fixes

* PR comment nits
2023-02-14 08:50:24 -08:00
Harry
fc4ec188e8
Implement RegistrationSessionManager
* Add RegistrationSession object

* Add RegistrationSessionManager protocol

* Add skeleton RegistrationSessionManagerImpl - just kvstore persistence implemented

* Issue requests in RegistrationSessionManagerImpl

* let tests access the in memory kv store

* Add TSRequestOWSURLSessionMock. Rename OWSURLSessionMock

* Add DateProvider

* Take a dateProvider in RegistrationSessionManagerImpl

* Add tests for RegistrationSessionManager

* pre-emptively update timeout for tests. will remove once promise Scheduler code is merged

* PR comments

* Use Schedulers
2023-02-08 15:37:12 -08:00