Skip to content

Commit

Permalink
fix: update of linked external dependency
Browse files Browse the repository at this point in the history
  • Loading branch information
medikoo committed Nov 9, 2018
1 parent 731d1fa commit c9f250c
Showing 1 changed file with 16 additions and 1 deletion.
17 changes: 16 additions & 1 deletion lib/private/setup-dependencies/npm-link-dependency/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,17 @@ const setupExternal = async (dependencyContext, progressData) => {
await resolveExternalMeta(dependencyContext, progressData);
const {
latestSupportedVersion,
linkedPath,
dependencyName,
dependencyPath,
dependentName,
dependentPath,
externalMeta: { currentVersion, latestVersion },
versionRange
} = dependencyContext;

if (latestSupportedVersion !== latestVersion) {
// Latest version not supported, dependency installed directly (not linked)
if (!latestSupportedVersion) {
// Non semver version range, install in place
await rm(dependencyPath, { loose: true, recursive: true, force: true });
Expand All @@ -33,6 +36,7 @@ const setupExternal = async (dependencyContext, progressData) => {
});
return;
}

log.warn(
"%s depends on outdated %s version (%s)", dependentName, dependencyName, versionRange
);
Expand All @@ -48,7 +52,18 @@ const setupExternal = async (dependencyContext, progressData) => {
return;
}

if (currentVersion) return;
// Lastest version supported, ensure it's linked
if (currentVersion !== latestVersion) {
log.notice(
"external dependency %s outdated at global folder (got %s expected %s), upgrading",
dependencyName, currentVersion, latestVersion
);
// Global node_modules hosts outdated version, cleanup
await rm(linkedPath, { loose: true, recursive: true, force: true });
} else if (await isSymlink(dependencyPath, { linkPath: linkedPath })) {
return;
}

log.info("%s link external dependency %s", dependentName, dependencyName);
await rm(dependencyPath, { loose: true, recursive: true, force: true });
await runProgram("npm", ["link", `${ dependencyName }@${ latestVersion }`], {
Expand Down

0 comments on commit c9f250c

Please sign in to comment.