From 1024859b12a8f3744e486af25d585ff6f1743807 Mon Sep 17 00:00:00 2001 From: Kris Kowal Date: Wed, 20 Nov 2024 15:39:03 -0800 Subject: [PATCH] fix(compartment-mapper): Development condition only implies devDependencies for entry package --- packages/compartment-mapper/src/node-modules.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/compartment-mapper/src/node-modules.js b/packages/compartment-mapper/src/node-modules.js index a3f41ace75..ab9d8412cd 100644 --- a/packages/compartment-mapper/src/node-modules.js +++ b/packages/compartment-mapper/src/node-modules.js @@ -360,7 +360,7 @@ const graphPackage = async ( for (const name of Object.keys(optionalDependencies)) { optionals.add(name); } - if (dev !== undefined && dev !== null ? dev : conditions.has('development')) { + if (dev) { assign(allDependencies, devDependencies); } @@ -863,17 +863,22 @@ export const compartmentMapForNodeModules = async ( moduleSpecifier, options = {}, ) => { - const { dev = undefined, commonDependencies = {}, policy } = options; + const { dev = false, commonDependencies = {}, policy } = options; const { maybeRead, canonical } = unpackReadPowers(readPowers); const languageOptions = makeLanguageOptions(options); + // dev is only set for the entry package, and implied by the development + // condition. + // The dev option is deprecated in favor of using conditions, since that + // covers more intentional behaviors of the development mode. + const graph = await graphPackages( maybeRead, canonical, packageLocation, conditions, packageDescriptor, - dev, + dev || (conditions && conditions.has('development')), commonDependencies, languageOptions, );