Skip to content

Commit 6ccb3b2

Browse files
committed
Consolidate general settings migration into single setValue call as requested in code review
1 parent 09506b3 commit 6ccb3b2

File tree

1 file changed

+27
-35
lines changed

1 file changed

+27
-35
lines changed

packages/cli/src/config/settings.ts

Lines changed: 27 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -862,42 +862,34 @@ export function migrateDeprecatedSettings(
862862
| (Record<string, unknown> & typeof settings.context)
863863
| undefined;
864864

865-
// Migrate general.disableAutoUpdate -> general.enableAutoUpdate
866-
if (
867-
generalSettings &&
868-
typeof generalSettings['disableAutoUpdate'] === 'boolean'
869-
) {
870-
const oldValue = generalSettings['disableAutoUpdate'] as boolean;
871-
debugLogger.log(
872-
`Migrating deprecated general.disableAutoUpdate to general.enableAutoUpdate from ${scope} settings (inverting value: ${oldValue} -> ${!oldValue})...`,
873-
);
874-
const newGeneral: Record<string, unknown> = {
875-
...generalSettings,
876-
enableAutoUpdate: !oldValue,
877-
};
878-
delete newGeneral['disableAutoUpdate'];
879-
loadedSettings.setValue(scope, 'general', newGeneral);
880-
}
865+
// Migrate general settings (disableAutoUpdate, disableUpdateNag)
866+
if (generalSettings) {
867+
const newGeneral: Record<string, unknown> = { ...generalSettings };
868+
let modified = false;
869+
870+
if (typeof newGeneral['disableAutoUpdate'] === 'boolean') {
871+
const oldValue = newGeneral['disableAutoUpdate'] as boolean;
872+
debugLogger.log(
873+
`Migrating deprecated general.disableAutoUpdate to general.enableAutoUpdate from ${scope} settings (inverting value: ${oldValue} -> ${!oldValue})...`,
874+
);
875+
newGeneral['enableAutoUpdate'] = !oldValue;
876+
delete newGeneral['disableAutoUpdate'];
877+
modified = true;
878+
}
881879

882-
// Migrate general.disableUpdateNag -> general.enableUpdatePrompts
883-
if (
884-
generalSettings &&
885-
typeof generalSettings['disableUpdateNag'] === 'boolean'
886-
) {
887-
const oldValue = generalSettings['disableUpdateNag'] as boolean;
888-
debugLogger.log(
889-
`Migrating deprecated general.disableUpdateNag to general.enableUpdatePrompts from ${scope} settings (inverting value: ${oldValue} -> ${!oldValue})...`,
890-
);
891-
// Re-read in case we just updated it above
892-
const currentGeneral = loadedSettings.forScope(scope).settings.general as
893-
| Record<string, unknown>
894-
| undefined;
895-
const newGeneral: Record<string, unknown> = {
896-
...currentGeneral,
897-
enableUpdatePrompts: !oldValue,
898-
};
899-
delete newGeneral['disableUpdateNag'];
900-
loadedSettings.setValue(scope, 'general', newGeneral);
880+
if (typeof newGeneral['disableUpdateNag'] === 'boolean') {
881+
const oldValue = newGeneral['disableUpdateNag'] as boolean;
882+
debugLogger.log(
883+
`Migrating deprecated general.disableUpdateNag to general.enableUpdatePrompts from ${scope} settings (inverting value: ${oldValue} -> ${!oldValue})...`,
884+
);
885+
newGeneral['enableUpdatePrompts'] = !oldValue;
886+
delete newGeneral['disableUpdateNag'];
887+
modified = true;
888+
}
889+
890+
if (modified) {
891+
loadedSettings.setValue(scope, 'general', newGeneral);
892+
}
901893
}
902894

903895
// Migrate ui.accessibility.disableLoadingPhrases -> ui.accessibility.enableLoadingPhrases

0 commit comments

Comments
 (0)