Bump the RustSDK, bump the app minor version and force user logout

This commit is contained in:
Stefan Ceriu
2023-03-31 14:42:05 +03:00
committed by Stefan Ceriu
parent bb18ed1e91
commit 2359910857
6 changed files with 13 additions and 9 deletions
@@ -136,11 +136,9 @@ class AppCoordinator: AppCoordinatorProtocol {
private func performMigrationsIfNecessary(from oldVersion: Version, to newVersion: Version) {
guard oldVersion != newVersion else { return }
if oldVersion < Version(1, 0, 20) {
// Version 1.0.20 introduced a new format for restoration tokens.
// Remove user data to prevent conflict in the crypto store
// with the newly generated device ID when signing in again.
MXLog.warning("Clearing user data for hardcoded proxy.")
if oldVersion < Version(1, 1, 0) {
// Version 1.1.0 switched the Rust crypto store to SQLite
// There are no migrations in place so we need to reset everything
wipeUserData()
}
}
@@ -36,6 +36,7 @@ final class AppSettings: ObservableObject {
private static var store: UserDefaults! = UserDefaults(suiteName: suiteName)
static func reset() {
MXLog.warning("Resetting the AppSettings.")
store.removePersistentDomain(forName: suiteName)
}
@@ -68,6 +68,8 @@ class KeychainController: KeychainControllerProtocol {
}
func removeRestorationTokenForUsername(_ username: String) {
MXLog.warning("Removing restoration token for user: \(username).")
do {
try keychain.remove(username)
} catch {
@@ -76,6 +78,8 @@ class KeychainController: KeychainControllerProtocol {
}
func removeAllRestorationTokens() {
MXLog.warning("Removing all user restoration tokens.")
do {
try keychain.removeAll()
} catch {
@@ -38,6 +38,7 @@ class UserSessionStore: UserSessionStoreProtocol {
/// Deletes all data stored in the shared container and keychain
func reset() {
MXLog.warning("Resetting the UserSessionStore. All accounts will be affected.")
try? FileManager.default.removeItem(at: baseDirectory)
keychainController.removeAllRestorationTokens()
}