diff --git a/e2e/release/src/independent-projects.test.ts b/e2e/release/src/independent-projects.test.ts index f630be84be..52e89f769b 100644 --- a/e2e/release/src/independent-projects.test.ts +++ b/e2e/release/src/independent-projects.test.ts @@ -191,6 +191,7 @@ describe('nx release - independent projects', () => { {project-name} 📄 Resolved the current version as 0.0.0 from {project-name}/package.json {project-name} 📄 Using the provided version specifier "999.9.9-package.3". {project-name} ✍️ New version 999.9.9-package.3 written to {project-name}/package.json + {project-name} ✍️ Applying new version 999.9.9-package.3 to 1 package which depends on {project-name} "name": "@proj/{project-name}", diff --git a/packages/js/src/generators/release-version/release-version.ts b/packages/js/src/generators/release-version/release-version.ts index c426bbe4a1..592a410873 100644 --- a/packages/js/src/generators/release-version/release-version.ts +++ b/packages/js/src/generators/release-version/release-version.ts @@ -619,7 +619,7 @@ To fix this you will either need to add a package.json file at that location, or const allDependentProjects = Object.values(localPackageDependencies) .flat() .filter((localPackageDependency) => { - return localPackageDependency.target === project.name; + return localPackageDependency.target === projectName; }); const includeTransitiveDependents = @@ -643,10 +643,14 @@ To fix this you will either need to add a package.json file at that location, or const dependentProjectsOutsideCurrentBatch = []; // Track circular dependencies using value of project1:project2 const circularDependencies = new Set(); + const projectsDependOnCurrentProject = + localPackageDependencies[projectName]?.map( + (localPackageDependencies) => localPackageDependencies.target + ) ?? []; for (const dependentProject of allDependentProjects) { // Track circular dependencies (add both directions for easy look up) - if (dependentProject.target === projectName) { + if (projectsDependOnCurrentProject.includes(dependentProject.source)) { circularDependencies.add( `${dependentProject.source}:${dependentProject.target}` );