fix: make sure migration still added database columns changes even if the user isn't logged in

pull/2971/head
William Grant 2 years ago
parent 48b1dd4d95
commit 250e593831

@ -1664,19 +1664,10 @@ function updateToSessionSchemaVersion34(currentVersion: number, db: BetterSqlite
return; return;
} }
// TODO we actually want to update the config wrappers that relate to disappearing messages with the type and seconds
console.log(`updateToSessionSchemaVersion${targetVersion}: starting...`); console.log(`updateToSessionSchemaVersion${targetVersion}: starting...`);
db.transaction(() => { db.transaction(() => {
try { try {
const loggedInUser = getLoggedInUserConvoDuringMigration(db); // region v34 Disappearing Messages Database Model Changes
if (!loggedInUser || !loggedInUser.ourKeys) {
throw new Error('privateEd25519 was empty. Considering no users are logged in');
}
const { privateEd25519, publicKeyHex } = loggedInUser.ourKeys;
// Conversation changes // Conversation changes
db.prepare( db.prepare(
`ALTER TABLE ${CONVERSATIONS_TABLE} ADD COLUMN expirationType TEXT DEFAULT "off";` `ALTER TABLE ${CONVERSATIONS_TABLE} ADD COLUMN expirationType TEXT DEFAULT "off";`
@ -1688,6 +1679,19 @@ function updateToSessionSchemaVersion34(currentVersion: number, db: BetterSqlite
db.prepare(`ALTER TABLE ${CONVERSATIONS_TABLE} ADD COLUMN hasOutdatedClient TEXT;`).run(); db.prepare(`ALTER TABLE ${CONVERSATIONS_TABLE} ADD COLUMN hasOutdatedClient TEXT;`).run();
// Message changes
db.prepare(`ALTER TABLE ${MESSAGES_TABLE} ADD COLUMN expirationType TEXT;`).run();
// endregion
const loggedInUser = getLoggedInUserConvoDuringMigration(db);
if (!loggedInUser || !loggedInUser.ourKeys) {
throw new Error('privateEd25519 was empty. Considering no users are logged in');
}
const { privateEd25519, publicKeyHex } = loggedInUser.ourKeys;
// region v34 Disappearing Messages Note to Self // region v34 Disappearing Messages Note to Self
const noteToSelfInfo = db const noteToSelfInfo = db
.prepare( .prepare(
@ -1888,9 +1892,6 @@ function updateToSessionSchemaVersion34(currentVersion: number, db: BetterSqlite
} }
// endregion // endregion
// Message changes
db.prepare(`ALTER TABLE ${MESSAGES_TABLE} ADD COLUMN expirationType TEXT;`).run();
} catch (e) { } catch (e) {
console.error( console.error(
`Failed to migrate to disappearing messages v2. Might just not have a logged in user yet? `, `Failed to migrate to disappearing messages v2. Might just not have a logged in user yet? `,

Loading…
Cancel
Save