Fixes dependencies using bins from their own dependencies (#6712)

This commit is contained in:
Maël Nison
2018-11-21 14:32:50 +00:00
committed by GitHub
parent 0d4861052f
commit 77f04c3497
4 changed files with 45 additions and 3 deletions

View File

@@ -203,11 +203,21 @@ export async function makeEnv(
}
}
const pnpFile = `${config.lockfileFolder}/${constants.PNP_FILENAME}`;
if (await fs.exists(pnpFile)) {
let pnpFile;
if (process.versions.pnp) {
pnpFile = dynamicRequire.resolve('pnpapi');
} else {
const candidate = `${config.lockfileFolder}/${constants.PNP_FILENAME}`;
if (await fs.exists(candidate)) {
pnpFile = candidate;
}
}
if (pnpFile) {
const pnpApi = dynamicRequire(pnpFile);
const packageLocator = pnpApi.findPackageLocator(`${config.cwd}/`);
const packageLocator = pnpApi.findPackageLocator(`${cwd}/`);
const packageInformation = pnpApi.getPackageInformation(packageLocator);
for (const [name, reference] of packageInformation.packageDependencies.entries()) {