Pass assumptions set in presets to plugins (#13321)

This commit is contained in:
Nicolò Ribaudo
2021-05-17 22:00:01 +02:00
committed by GitHub
parent 0d0950f341
commit f85c6437c5
4 changed files with 68 additions and 4 deletions

View File

@@ -68,10 +68,9 @@ export default gensync<(inputOpts: unknown) => ResolvedConfig | null>(
throw new Error("Assertion failure - plugins and presets exist");
}
const pluginContext: Context.FullPlugin = {
const presetContext: Context.FullPreset = {
...context,
targets: options.targets,
assumptions: options.assumptions ?? {},
};
const toDescriptor = (item: PluginItem) => {
@@ -110,7 +109,7 @@ export default gensync<(inputOpts: unknown) => ResolvedConfig | null>(
presets.push({
preset: yield* loadPresetDescriptor(
descriptor,
pluginContext,
presetContext,
),
pass: [],
});
@@ -118,7 +117,7 @@ export default gensync<(inputOpts: unknown) => ResolvedConfig | null>(
presets.unshift({
preset: yield* loadPresetDescriptor(
descriptor,
pluginContext,
presetContext,
),
pass: pluginDescriptorsPass,
});
@@ -168,6 +167,11 @@ export default gensync<(inputOpts: unknown) => ResolvedConfig | null>(
const opts: any = optionDefaults;
mergeOptions(opts, options);
const pluginContext: Context.FullPlugin = {
...presetContext,
assumptions: opts.assumptions ?? {},
};
yield* enhanceError(context, function* loadPluginDescriptors() {
pluginDescriptorsByPass[0].unshift(...initialPluginsDescriptors);