From 6a62c7b527d86bf4c37289ee8193f681acccb0fe Mon Sep 17 00:00:00 2001 From: FrozenPandaz Date: Fri, 21 Apr 2023 15:04:47 -0400 Subject: [PATCH] fix(core): fix cache recalculation based off of nx version --- .../nx/src/project-graph/nx-deps-cache.spec.ts | 14 +++++--------- packages/nx/src/project-graph/nx-deps-cache.ts | 13 +++++-------- 2 files changed, 10 insertions(+), 17 deletions(-) diff --git a/packages/nx/src/project-graph/nx-deps-cache.spec.ts b/packages/nx/src/project-graph/nx-deps-cache.spec.ts index 99ec136ba1de6c..e47fcce457052b 100644 --- a/packages/nx/src/project-graph/nx-deps-cache.spec.ts +++ b/packages/nx/src/project-graph/nx-deps-cache.spec.ts @@ -7,6 +7,7 @@ import { import { ProjectGraph } from '../config/project-graph'; import { ProjectsConfigurations } from '../config/workspace-json-project-json'; import { NxJsonConfiguration } from '../config/nx-json'; +import { nxVersion } from '../utils/versions'; describe('nx deps utils', () => { describe('shouldRecomputeWholeGraph', () => { @@ -34,14 +35,11 @@ describe('nx deps utils', () => { ).toEqual(true); }); - it('should be true when version of nrwl/workspace changes', () => { + it('should be true when version of nx changes', () => { expect( shouldRecomputeWholeGraph( createCache({ - deps: { - '@nx/workspace': '12.0.1', - plugin: '1.0.0', - }, + nxVersion: '12.0.1', }), createPackageJsonDeps({}), createProjectsConfiguration({}), @@ -317,10 +315,8 @@ describe('nx deps utils', () => { function createCache(p: Partial): ProjectGraphCache { const defaults: ProjectGraphCache = { version: '5.1', - deps: { - '@nx/workspace': '12.0.0', - plugin: '1.0.0', - }, + nxVersion: nxVersion, + deps: {}, pathMappings: { mylib: ['libs/mylib/index.ts'], }, diff --git a/packages/nx/src/project-graph/nx-deps-cache.ts b/packages/nx/src/project-graph/nx-deps-cache.ts index cdb1f9631e165e..0490062dcd555f 100644 --- a/packages/nx/src/project-graph/nx-deps-cache.ts +++ b/packages/nx/src/project-graph/nx-deps-cache.ts @@ -19,9 +19,11 @@ import { readJsonFile, writeJsonFile, } from '../utils/fileutils'; +import { nxVersion } from '../utils/versions'; export interface ProjectGraphCache { version: string; + nxVersion: string; deps: Record; pathMappings: Record; nxJsonPlugins: { name: string; version: string }[]; @@ -93,7 +95,8 @@ export function createCache( })); const newValue: ProjectGraphCache = { version: projectGraph.version || '5.1', - deps: packageJsonDeps, + nxVersion: nxVersion, + deps: packageJsonDeps, // TODO(v18): We can remove this in favor of nxVersion // compilerOptions may not exist, especially for package-based repos pathMappings: tsConfig?.compilerOptions?.paths || {}, nxJsonPlugins, @@ -149,13 +152,7 @@ export function shouldRecomputeWholeGraph( if (cache.version !== '5.1') { return true; } - if ( - cache.deps['@nx/workspace'] !== packageJsonDeps['@nx/workspace'] || - cache.deps['@nrwl/workspace'] !== packageJsonDeps['@nrwl/workspace'] - ) { - return true; - } - if (cache.deps['nx'] !== packageJsonDeps['nx']) { + if (cache.nxVersion !== nxVersion) { return true; }