* Add splash controller for change number flow
* Add copy of change number phone number entry controller
* add copy of change number confirmation view controller
* hook up change number phone number entry screens
* fix header color
* fix change number error view
* add some spacing before error label
* run auto genstrings
* actually fix string comment
* 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
* add whoami request to reg coordinator
* Add pni change number params to reg bravo change number request
* Remove username as a requirement for reg coordinator's account identity
* pr feedback
If your app needs to be updated during registration, we'll show an
alert. This can happen if:
- The build has expired
- We receive an unexpected challenge (or a push challenge we cannot
fulfill, but must)
* 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
* Rename and move out RegistrationMode
* Group RegCoordinatorImpl dependencies together
* Take a registration mode on reg coordinator init
* Implement exiting registration if allowed
* Allow restoring previous registration mode directly
* Proceed from last mode on app startup
* Hook up new re-registration
* allow submitting phone number for re-registration
* skip device transfer in rereg
* Don't implicitly enable reglock by setting the token on account attributes. add a test to validate this going forward.
* pr comments
* 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
* Hook up RegistrationPhoneNumberViewController
* Fix existing tests
* add some new tests; fix test scaffolding bug
* Show an error before going back to phone number entry if the session is invalidated
* 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
* 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
* 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
This test-only change should have no user impact.
I wrote these tests last year (in
c5bdf6c094). They test every single
string, which proves annoying to update and offers little value. This
updates the tests in an effort to make them more useful.
We plan to support PayPal and credit/debit cards for gift badges. This
change, invisible to external users, is a step towards that.
Before this change, Apple Pay was always shown as the only payment
method. Now, all supported payment methods are shown.
PayPal and card don't do anything right now—they show an error UI if
tapped.