fix(@angular/cli): merge npmrc files values · angular/angular-cli@259e269

Original file line numberDiff line numberDiff line change

@@ -143,7 +143,7 @@ function readOptions(

143143

// See: https://github.com/npm/npm-registry-fetch/blob/ebddbe78a5f67118c1f7af2e02c8a22bcaf9e850/index.js#L99-L126

144144

const rcConfig: PackageManagerOptions = yarn ? lockfile.parse(data) : ini.parse(data);

145145
146-

rcOptions = normalizeOptions(rcConfig, location);

146+

rcOptions = normalizeOptions(rcConfig, location, rcOptions);

147147

}

148148

}

149149

@@ -166,17 +166,15 @@ function readOptions(

166166

envVariablesOptions[normalizedName] = value;

167167

}

168168
169-

return {

170-

...rcOptions,

171-

...normalizeOptions(envVariablesOptions),

172-

};

169+

return normalizeOptions(envVariablesOptions, undefined, rcOptions);

173170

}

174171
175172

function normalizeOptions(

176173

rawOptions: PackageManagerOptions,

177174

location = process.cwd(),

175+

existingNormalizedOptions: PackageManagerOptions = {},

178176

): PackageManagerOptions {

179-

const options: PackageManagerOptions = {};

177+

const options = { ...existingNormalizedOptions };

180178
181179

for (const [key, value] of Object.entries(rawOptions)) {

182180

let substitutedValue = value;