From dfb00f2b61e09605595b46b8e4906cda042f4c83 Mon Sep 17 00:00:00 2001 From: Paul Rastoin <45004772+prastoin@users.noreply.github.com> Date: Thu, 13 Mar 2025 19:12:05 +0100 Subject: [PATCH] [FIX] Omition on previous integ of upgrade command compare version based on integer result (#10864) --- .../commands/command-runners/upgrade.command-runner.ts | 10 ++++++---- .../__tests__/compare-version-minor-and-major.spec.ts | 7 +++++-- .../utils/version/compare-version-minor-and-major.ts | 5 ++++- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/packages/twenty-server/src/database/commands/command-runners/upgrade.command-runner.ts b/packages/twenty-server/src/database/commands/command-runners/upgrade.command-runner.ts index 7d213b342..81dbf7695 100644 --- a/packages/twenty-server/src/database/commands/command-runners/upgrade.command-runner.ts +++ b/packages/twenty-server/src/database/commands/command-runners/upgrade.command-runner.ts @@ -13,7 +13,10 @@ import { EnvironmentService } from 'src/engine/core-modules/environment/environm import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; import { SyncWorkspaceMetadataCommand } from 'src/engine/workspace-manager/workspace-sync-metadata/commands/sync-workspace-metadata.command'; -import { compareVersionMajorAndMinor } from 'src/utils/version/compare-version-minor-and-major'; +import { + CompareVersionMajorAndMinorReturnType, + compareVersionMajorAndMinor, +} from 'src/utils/version/compare-version-minor-and-major'; type ValidateWorkspaceVersionEqualsWorkspaceFromVersionOrThrowArgs = { workspaceId: string; @@ -91,7 +94,7 @@ export abstract class UpgradeCommandRunner extends ActiveOrSuspendedWorkspacesMi private async retrieveWorkspaceVersionAndCompareToWorkspaceFromVersion({ appVersion, workspaceId, - }: ValidateWorkspaceVersionEqualsWorkspaceFromVersionOrThrowArgs) { + }: ValidateWorkspaceVersionEqualsWorkspaceFromVersionOrThrowArgs): Promise { if (!isDefined(appVersion)) { throw new Error( 'Cannot run upgrade command when APP_VERSION is not defined', @@ -103,9 +106,8 @@ export abstract class UpgradeCommandRunner extends ActiveOrSuspendedWorkspacesMi this.logger.warn( 'VALIDATE_WORKSPACE_VERSION_FEATURE_FLAG set to true ignoring workspace versions validation step', ); - const equalVersions = 0; - return equalVersions; + return 'equal'; } const workspace = await this.workspaceRepository.findOneByOrFail({ diff --git a/packages/twenty-server/src/utils/version/__tests__/compare-version-minor-and-major.spec.ts b/packages/twenty-server/src/utils/version/__tests__/compare-version-minor-and-major.spec.ts index 2bf5b919c..e8ec84bf9 100644 --- a/packages/twenty-server/src/utils/version/__tests__/compare-version-minor-and-major.spec.ts +++ b/packages/twenty-server/src/utils/version/__tests__/compare-version-minor-and-major.spec.ts @@ -1,11 +1,14 @@ import { EachTestingContext } from 'twenty-shared'; -import { compareVersionMajorAndMinor } from 'src/utils/version/compare-version-minor-and-major'; +import { + CompareVersionMajorAndMinorReturnType, + compareVersionMajorAndMinor, +} from 'src/utils/version/compare-version-minor-and-major'; type IsSameVersionTestCase = EachTestingContext<{ version1: string; version2: string; - expected?: ReturnType; + expected?: CompareVersionMajorAndMinorReturnType; expectToThrow?: boolean; }>; describe('is-same-major-and-minor-version', () => { diff --git a/packages/twenty-server/src/utils/version/compare-version-minor-and-major.ts b/packages/twenty-server/src/utils/version/compare-version-minor-and-major.ts index 796d9ac2e..110641444 100644 --- a/packages/twenty-server/src/utils/version/compare-version-minor-and-major.ts +++ b/packages/twenty-server/src/utils/version/compare-version-minor-and-major.ts @@ -1,6 +1,9 @@ import * as semver from 'semver'; -type CompareVersionMajorAndMinorReturnType = 'lower' | 'equal' | 'higher'; +export type CompareVersionMajorAndMinorReturnType = + | 'lower' + | 'equal' + | 'higher'; export function compareVersionMajorAndMinor( rawVersion1: string, rawVersion2: string,