* 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
* Move AccountAttributes into shared file
* Add AccountAttributesRequestFactory
* Add new AccountAttributes generators
* Migrate verifyPrimaryDeviceRequest
* Migrate verifySecondaryDeviceRequest
* clarify the role of secondary device account attributes
* Remove AuthKey from AccountAttributes; it was unused on the server and therefore totally vestigial
* remove old updatePrimaryDeviceAttributes request and associated code
* Add registration recovery password to AccountAttributes
* Unconditionally set account attributes when changing or setting the PIN
* fix tests
* easy pr comments
* dont set v1 2fa pin unless no kbs backups exist
* Catch re-entrant MockDBv2 transactions in tests
* Fix some promise + transaction issues in RegCoordinator
* undo dumdum changes; dont handle errors on a guarantee
* 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
This change should have no user impact.
Two changes:
1. Calling `advance(to: timeInThePast)` is now a fatal error.
2. Calling `advance(to: currentTime)` is now tested.
* 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
* Finish registration in RegistrationCoordinator
* Get tests to compile again (but not pass)
* Tests passing again
* Test session happy path all the way through to completion
* Test KBS auth credential happy path all the way through to completion
* Test KBS reg recovery password happy path all the way through to completion
* PR comments
* 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