firebase / firebase-ios-sdk

Firebase SDK for Apple App Development
https://firebase.google.com
Apache License 2.0
5.56k stars 1.45k forks source link

[Auth] Handle corrupt keychain value resulting from incomplete v11 port #13643

Closed ncooke3 closed 2 days ago

ncooke3 commented 5 days ago

This should be covered in the changelog for entry for the previous PR that added back the missing key.

Addressing the second case described in https://github.com/firebase/firebase-ios-sdk/issues/13584#issuecomment-2352608025:

There is another case I'm still investigating where a user (again with auth configured with a keychain access group and shareAuthStateAcrossDevices == true) is stored on 11.0, 11.1, or 11.2 and missing that key. In this case, such entries will not be read properly when 11.3 adds back the missing key (basically, the same problem you reported but from the upgrade path 11.0/ 11.1/11.2 -> 11.3 (fixed) rather than from 10.x -> 11.0/ 11.1/11.2). I'll leave this issue open until I have a fix for this case also staged in 11.3.

This was tricky enough where I thought it better for the explanation to be embedded next to the code for future us. See diff.

Alternatives considered

Risks

Test observations

Current behavior on buggy versions:

Fix https://github.com/firebase/firebase-ios-sdk/issues/13584

google-oss-bot commented 5 days ago
1 Warning
:warning: Did you forget to add a changelog entry? (Add #no-changelog to the PR description to silence this warning.)

Generated by :no_entry_sign: Danger