@powerlines/engine 0.43.31 → 0.44.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/_internal/worker.cjs +187 -169
  2. package/dist/_internal/worker.d.cts.map +1 -1
  3. package/dist/_internal/worker.d.mts.map +1 -1
  4. package/dist/_internal/worker.mjs +188 -170
  5. package/dist/_internal/worker.mjs.map +1 -1
  6. package/dist/api.cjs +6 -5
  7. package/dist/api.d.cts.map +1 -1
  8. package/dist/api.d.mts.map +1 -1
  9. package/dist/api.mjs +4 -3
  10. package/dist/api.mjs.map +1 -1
  11. package/dist/{base-context-CPoqO4io.cjs → base-context-DkGTyGX0.cjs} +34 -44
  12. package/dist/{base-context-SmQ6OfXm.mjs → base-context-Dv5OTHxZ.mjs} +35 -45
  13. package/dist/base-context-Dv5OTHxZ.mjs.map +1 -0
  14. package/dist/context/index.cjs +3 -3
  15. package/dist/context/index.d.cts +40 -36
  16. package/dist/context/index.d.cts.map +1 -1
  17. package/dist/context/index.d.mts +40 -36
  18. package/dist/context/index.d.mts.map +1 -1
  19. package/dist/context/index.mjs +3 -3
  20. package/dist/{engine-context-CEu21ZZf.cjs → engine-context-CDSR7PHF.cjs} +1 -1
  21. package/dist/{engine-context-D7CWyTsr.mjs → engine-context-CytME-Ht.mjs} +2 -2
  22. package/dist/{engine-context-D7CWyTsr.mjs.map → engine-context-CytME-Ht.mjs.map} +1 -1
  23. package/dist/{execution-context-DsT6s1du.cjs → execution-context-B-CVP76S.cjs} +148 -105
  24. package/dist/{execution-context-C_7IC8er.mjs → execution-context-F7RyGqff.mjs} +150 -107
  25. package/dist/execution-context-F7RyGqff.mjs.map +1 -0
  26. package/dist/index.cjs +8 -12
  27. package/dist/index.mjs +8 -12
  28. package/dist/index.mjs.map +1 -1
  29. package/package.json +3 -3
  30. package/dist/base-context-SmQ6OfXm.mjs.map +0 -1
  31. package/dist/execution-context-C_7IC8er.mjs.map +0 -1
@@ -1,9 +1,8 @@
1
1
  import { EnvPaths } from "@stryke/env/get-env-paths";
2
- import { BaseContext, Context, EmitEntryOptions, EmitOptions, EngineContext, EngineOptions, EnvironmentContext, EnvironmentContextPlugin, EnvironmentResolvedConfig, ExecutionContext, ExecutionOptions, ExecutionState, FetchOptions, HooksList, InlineConfig, LogFn, LogLevel, Logger, MetaInfo, ParseOptions, ParsedTypeScriptConfig, ParsedUserConfig, Plugin, PluginContext, ResolveOptions, ResolveResult, ResolvedConfig, ResolvedEngineOptions, ResolvedEntryTypeDefinition, ResolvedExecutionOptions, Resolver, SelectHookResult, SelectHooksOptions, TransformResult, VirtualFile, VirtualFileSystemInterface } from "@powerlines/core";
3
2
  import { FlatCache } from "flat-cache";
4
3
  import { ParseResult } from "oxc-parser";
5
4
  import { RequestInfo, Response } from "undici";
6
- import { UnpluginMessage } from "unplugin";
5
+ import { BaseContext, Context, EmitEntryOptions, EmitOptions, EngineContext, EngineOptions, EnvironmentContext, EnvironmentContextPlugin, EnvironmentResolvedConfig, ExecutionContext, ExecutionOptions, ExecutionState, FetchOptions, HooksList, InlineConfig, LogLevelResolvedConfig, LogMessage, Logger, LoggerMessage, LoggerOptions, MetaInfo, ParseOptions, ParsedTypeScriptConfig, ParsedUserConfig, Plugin, PluginContext, ResolveOptions, ResolveResult, ResolvedConfig, ResolvedEngineOptions, ResolvedEntryTypeDefinition, ResolvedExecutionOptions, Resolver, SelectHookResult, SelectHooksOptions, TransformResult, VirtualFile, VirtualFileSystemInterface } from "@powerlines/core";
7
6
  import { Unstable_ContextInternal, Unstable_EnvironmentContext, Unstable_PluginContext } from "@powerlines/core/types/_internal";
8
7
  import { PackageJson } from "@stryke/types/package-json";
9
8
  import { Range } from "semver";
@@ -32,15 +31,14 @@ declare class PowerlinesBaseContext implements BaseContext {
32
31
  */
33
32
  configFile: ParsedUserConfig;
34
33
  /**
35
- * A timestamp representing when the context was initialized
34
+ * The logger instance for the context, which can be used to create log messages with consistent formatting and metadata. This logger is extended by plugin contexts to include additional metadata such as the plugin name and category, which can be used to filter and format log messages in a more granular way.
36
35
  */
37
- get timestamp(): Date;
38
- get logLevel(): LogLevel | null;
39
- set logLevel(level: LogLevel | null);
36
+ get logger(): Logger;
40
37
  /**
41
- * The logger function
38
+ * A timestamp representing when the context was initialized
42
39
  */
43
- get log(): LogFn;
40
+ get timestamp(): number;
41
+ get logLevel(): LogLevelResolvedConfig;
44
42
  /**
45
43
  * The environment paths for the project
46
44
  */
@@ -59,37 +57,37 @@ declare class PowerlinesBaseContext implements BaseContext {
59
57
  *
60
58
  * @param message - The message to log.
61
59
  */
62
- fatal(message: string | UnpluginMessage): void;
60
+ fatal(message: string | LogMessage): void;
63
61
  /**
64
62
  * A logging function for error messages
65
63
  *
66
64
  * @param message - The message to log.
67
65
  */
68
- error(message: string | UnpluginMessage): void;
66
+ error(message: string | LogMessage): void;
69
67
  /**
70
68
  * A logging function for warning messages
71
69
  *
72
70
  * @param message - The message to log.
73
71
  */
74
- warn(message: string | UnpluginMessage): void;
72
+ warn(message: string | LogMessage): void;
75
73
  /**
76
74
  * A logging function for informational messages
77
75
  *
78
76
  * @param message - The message to log.
79
77
  */
80
- info(message: string | UnpluginMessage): void;
78
+ info(message: string | LogMessage): void;
81
79
  /**
82
80
  * A logging function for debug messages
83
81
  *
84
82
  * @param message - The message to log.
85
83
  */
86
- debug(message: string | UnpluginMessage): void;
84
+ debug(message: string | LogMessage): void;
87
85
  /**
88
86
  * A logging function for trace messages
89
87
  *
90
88
  * @param message - The message to log.
91
89
  */
92
- trace(message: string | UnpluginMessage): void;
90
+ trace(message: string | LogMessage): void;
93
91
  /**
94
92
  * A function to create a timer for measuring the duration of asynchronous operations
95
93
  *
@@ -107,21 +105,17 @@ declare class PowerlinesBaseContext implements BaseContext {
107
105
  /**
108
106
  * Create a new logger instance
109
107
  *
110
- * @param source - The source name to use for the logger instance, which can be used to identify the origin of log messages in the logs for better traceability. This is typically the name of the plugin or module that is creating the logger instance.
111
- * @returns A logger function
108
+ * @param options - The configuration options to use for the logger instance, which can be used to customize the appearance and behavior of the log messages generated by the logger. This is typically the name of the plugin or module that is creating the logger instance.
109
+ * @returns A logger client instance that can be used to generate log messages with consistent formatting and metadata.
112
110
  */
113
- createLog(source?: string | null): LogFn;
111
+ createLogger(options: LoggerOptions, callback?: (message: string | LoggerMessage) => void): Logger;
114
112
  /**
115
- * Extend the current logger instance with a new source
113
+ * Extend the base logger with additional configuration options
116
114
  *
117
- * @param source - The source name to use for the extended logger instance, which can be used to identify the origin of log messages in the logs for better traceability. This is typically the name of the plugin or module that is creating the logger instance.
118
- * @returns A logger function
115
+ * @param options - The configuration options to extend the base logger with, which can be used to add additional metadata or customize the appearance of log messages generated by the logger. This is typically the name of the plugin or module that is creating the logger instance, as well as any additional metadata such as the plugin category or environment.
116
+ * @returns A new logger client instance that extends the base logger with the provided configuration options.
119
117
  */
120
- extendLog(source: string): LogFn;
121
- /**
122
- * A logger function specific to this context
123
- */
124
- protected logger: Logger;
118
+ extendLogger(options: LoggerOptions): Logger;
125
119
  /**
126
120
  * Initialize the context with the provided configuration options
127
121
  *
@@ -264,6 +258,10 @@ declare class PowerlinesContext<TResolvedConfig extends ResolvedConfig = Resolve
264
258
  * This includes both the built-in module aliases as well as any custom aliases defined in the build configuration.
265
259
  */
266
260
  get alias(): Record<string, string>;
261
+ /**
262
+ * The logger instance for the context, which can be used to create log messages with consistent formatting and metadata. This logger is extended by plugin contexts to include additional metadata such as the plugin name and category, which can be used to filter and format log messages in a more granular way.
263
+ */
264
+ get logger(): Logger;
267
265
  /**
268
266
  * Gets the parser cache.
269
267
  */
@@ -516,18 +514,17 @@ declare class PowerlinesEnvironmentContext<TResolvedConfig extends ResolvedConfi
516
514
  /**
517
515
  * Create a new logger instance
518
516
  *
519
- * @param source - The source name to use for the logger instance, which can be used to identify the origin of log messages in the logs for better traceability. This is typically the name of the plugin or module that is creating the logger instance.
520
- * @returns A logger function
517
+ * @param options - The configuration options to use for the logger instance, which can be used to customize the appearance and behavior of the log messages generated by the logger. This is typically the name of the plugin or module that is creating the logger instance.
518
+ * @returns A logger client instance that can be used to generate log messages with consistent formatting and metadata.
521
519
  */
522
- createLog(source?: string | null): LogFn;
520
+ createLogger(options: LoggerOptions, callback?: (message: string | LoggerMessage) => void): Logger;
523
521
  /**
524
- * Extend the current logger instance with a new name
522
+ * Extend the base logger with additional configuration options
525
523
  *
526
- * @param source - The name of the source to use for the extended logger instance
527
- * @param plugin - An optional plugin name to use for the extended logger instance, which can be used to identify the origin of log messages in the logs for better traceability. This is typically the name of the plugin or module that is creating the logger instance.
528
- * @returns A logger function
524
+ * @param options - The configuration options to extend the base logger with, which can be used to add additional metadata or customize the appearance of log messages generated by the logger. This is typically the name of the plugin or module that is creating the logger instance, as well as any additional metadata such as the plugin category or environment.
525
+ * @returns A new logger client instance that extends the base logger with the provided configuration options.
529
526
  */
530
- extendLog(source: string, plugin?: string): LogFn;
527
+ extendLogger(options: LoggerOptions): Logger;
531
528
  /**
532
529
  * Creates a clone of the current context with the same configuration and workspace settings. This can be useful for running multiple builds in parallel or for creating isolated contexts for different parts of the build process.
533
530
  *
@@ -611,10 +608,17 @@ declare class PowerlinesExecutionContext<TResolvedConfig extends ResolvedConfig
611
608
  /**
612
609
  * Create a new logger instance
613
610
  *
614
- * @param source - The source name to use for the logger instance, which can be used to identify the origin of log messages in the logs for better traceability. This is typically the name of the plugin or module that is creating the logger instance.
615
- * @returns A logger function
611
+ * @param options - The configuration options to use for the logger instance, which can be used to customize the appearance and behavior of the log messages generated by the logger. This is typically the name of the plugin or module that is creating the logger instance.
612
+ * @returns A logger client instance that can be used to generate log messages with consistent formatting and metadata.
613
+ */
614
+ createLogger(options: LoggerOptions, callback?: (message: string | LoggerMessage) => void): Logger;
615
+ /**
616
+ * Extend the base logger with additional configuration options
617
+ *
618
+ * @param options - The configuration options to extend the base logger with, which can be used to add additional metadata or customize the appearance of log messages generated by the logger. This is typically the name of the plugin or module that is creating the logger instance, as well as any additional metadata such as the plugin category or environment.
619
+ * @returns A new logger client instance that extends the base logger with the provided configuration options.
616
620
  */
617
- createLog(source?: string | null): LogFn;
621
+ extendLogger(options: LoggerOptions): Logger;
618
622
  /**
619
623
  * Creates a clone of the current context with the same configuration and workspace settings. This can be useful for running multiple builds in parallel or for creating isolated contexts for different parts of the build process.
620
624
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/context/base-context.ts","../../src/context/context.ts","../../src/context/engine-context.ts","../../src/context/environment-context.ts","../../src/context/execution-context.ts","../../src/context/plugin-context.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/context/base-context.ts","../../src/context/context.ts","../../src/context/engine-context.ts","../../src/context/environment-context.ts","../../src/context/execution-context.ts","../../src/context/plugin-context.ts"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { t as PowerlinesBaseContext } from "../base-context-SmQ6OfXm.mjs";
2
- import { t as PowerlinesEngineContext } from "../engine-context-D7CWyTsr.mjs";
3
- import { n as PowerlinesEnvironmentContext, o as PowerlinesContext, r as createPluginContext, t as PowerlinesExecutionContext } from "../execution-context-C_7IC8er.mjs";
1
+ import { t as PowerlinesBaseContext } from "../base-context-Dv5OTHxZ.mjs";
2
+ import { t as PowerlinesEngineContext } from "../engine-context-CytME-Ht.mjs";
3
+ import { n as PowerlinesEnvironmentContext, o as PowerlinesContext, r as createPluginContext, t as PowerlinesExecutionContext } from "../execution-context-F7RyGqff.mjs";
4
4
 
5
5
  export { PowerlinesBaseContext, PowerlinesContext, PowerlinesEngineContext, PowerlinesEnvironmentContext, PowerlinesExecutionContext, createPluginContext };
@@ -1,5 +1,5 @@
1
1
  const require_chunk = require('./chunk-C0xms8kb.cjs');
2
- const require_base_context = require('./base-context-CPoqO4io.cjs');
2
+ const require_base_context = require('./base-context-DkGTyGX0.cjs');
3
3
  let _stryke_unique_id_uuid = require("@stryke/unique-id/uuid");
4
4
 
5
5
  //#region src/context/engine-context.ts
@@ -1,4 +1,4 @@
1
- import { t as PowerlinesBaseContext } from "./base-context-SmQ6OfXm.mjs";
1
+ import { t as PowerlinesBaseContext } from "./base-context-Dv5OTHxZ.mjs";
2
2
  import { uuid } from "@stryke/unique-id/uuid";
3
3
 
4
4
  //#region src/context/engine-context.ts
@@ -63,4 +63,4 @@ var PowerlinesEngineContext = class PowerlinesEngineContext extends PowerlinesBa
63
63
 
64
64
  //#endregion
65
65
  export { PowerlinesEngineContext as t };
66
- //# sourceMappingURL=engine-context-D7CWyTsr.mjs.map
66
+ //# sourceMappingURL=engine-context-CytME-Ht.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine-context-D7CWyTsr.mjs","names":["#executions"],"sources":["../src/context/engine-context.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type {\n EngineContext,\n EngineOptions,\n ExecutionState\n} from \"@powerlines/core\";\nimport { uuid } from \"@stryke/unique-id/uuid\";\nimport { PowerlinesBaseContext } from \"./base-context\";\n\nexport class PowerlinesEngineContext\n extends PowerlinesBaseContext\n implements EngineContext\n{\n #executions: ExecutionState[] = [];\n\n /**\n * Creates a new instance of the PowerlinesEngineContext class.\n *\n * @param options - The options to initialize the context with.\n * @returns A promise that resolves to an instance of the PowerlinesEngineContext class.\n */\n public static async fromOptions(\n options: EngineOptions\n ): Promise<PowerlinesEngineContext> {\n const context = new PowerlinesEngineContext();\n await context.init(options);\n\n if (!context.configFile?.config) {\n context.fatal(\n \"No configuration file found. Please ensure you have a valid configuration file in your project.\"\n );\n throw new Error(\"No configuration file found\");\n }\n\n if (Array.isArray(context.configFile.config)) {\n context.#executions = await Promise.all(\n context.configFile.config.map(async (_, executionIndex) => {\n const executionId = uuid();\n\n return {\n executionId,\n options: { ...context.options, executionId, executionIndex },\n active: {\n command: null,\n hook: null,\n plugin: null\n }\n };\n })\n );\n } else {\n const executionId = uuid();\n context.#executions = [\n {\n executionId,\n options: { ...context.options, executionId, executionIndex: 0 },\n active: {\n command: null,\n hook: null,\n plugin: null\n }\n }\n ];\n }\n\n return context;\n }\n\n /**\n * A list of all command executions that will be run during the lifecycle of the engine\n *\n * @returns An array of {@link ExecutionState} representing each execution context for the engine.\n */\n public get executions(): ExecutionState[] {\n return this.#executions;\n }\n}\n"],"mappings":";;;;AA0BA,IAAa,0BAAb,MAAa,gCACH,sBAEV;CACE,cAAgC,EAAE;;;;;;;CAQlC,aAAoB,YAClB,SACkC;EAClC,MAAM,UAAU,IAAI,yBAAyB;AAC7C,QAAM,QAAQ,KAAK,QAAQ;AAE3B,MAAI,CAAC,QAAQ,YAAY,QAAQ;AAC/B,WAAQ,MACN,kGACD;AACD,SAAM,IAAI,MAAM,8BAA8B;;AAGhD,MAAI,MAAM,QAAQ,QAAQ,WAAW,OAAO,CAC1C,UAAQA,aAAc,MAAM,QAAQ,IAClC,QAAQ,WAAW,OAAO,IAAI,OAAO,GAAG,mBAAmB;GACzD,MAAM,cAAc,MAAM;AAE1B,UAAO;IACL;IACA,SAAS;KAAE,GAAG,QAAQ;KAAS;KAAa;KAAgB;IAC5D,QAAQ;KACN,SAAS;KACT,MAAM;KACN,QAAQ;KACT;IACF;IACD,CACH;OACI;GACL,MAAM,cAAc,MAAM;AAC1B,YAAQA,aAAc,CACpB;IACE;IACA,SAAS;KAAE,GAAG,QAAQ;KAAS;KAAa,gBAAgB;KAAG;IAC/D,QAAQ;KACN,SAAS;KACT,MAAM;KACN,QAAQ;KACT;IACF,CACF;;AAGH,SAAO;;;;;;;CAQT,IAAW,aAA+B;AACxC,SAAO,MAAKA"}
1
+ {"version":3,"file":"engine-context-CytME-Ht.mjs","names":["#executions"],"sources":["../src/context/engine-context.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type {\n EngineContext,\n EngineOptions,\n ExecutionState\n} from \"@powerlines/core\";\nimport { uuid } from \"@stryke/unique-id/uuid\";\nimport { PowerlinesBaseContext } from \"./base-context\";\n\nexport class PowerlinesEngineContext\n extends PowerlinesBaseContext\n implements EngineContext\n{\n #executions: ExecutionState[] = [];\n\n /**\n * Creates a new instance of the PowerlinesEngineContext class.\n *\n * @param options - The options to initialize the context with.\n * @returns A promise that resolves to an instance of the PowerlinesEngineContext class.\n */\n public static async fromOptions(\n options: EngineOptions\n ): Promise<PowerlinesEngineContext> {\n const context = new PowerlinesEngineContext();\n await context.init(options);\n\n if (!context.configFile?.config) {\n context.fatal(\n \"No configuration file found. Please ensure you have a valid configuration file in your project.\"\n );\n throw new Error(\"No configuration file found\");\n }\n\n if (Array.isArray(context.configFile.config)) {\n context.#executions = await Promise.all(\n context.configFile.config.map(async (_, executionIndex) => {\n const executionId = uuid();\n\n return {\n executionId,\n options: { ...context.options, executionId, executionIndex },\n active: {\n command: null,\n hook: null,\n plugin: null\n }\n };\n })\n );\n } else {\n const executionId = uuid();\n context.#executions = [\n {\n executionId,\n options: { ...context.options, executionId, executionIndex: 0 },\n active: {\n command: null,\n hook: null,\n plugin: null\n }\n }\n ];\n }\n\n return context;\n }\n\n /**\n * A list of all command executions that will be run during the lifecycle of the engine\n *\n * @returns An array of {@link ExecutionState} representing each execution context for the engine.\n */\n public get executions(): ExecutionState[] {\n return this.#executions;\n }\n}\n"],"mappings":";;;;AA0BA,IAAa,0BAAb,MAAa,gCACH,sBAEV;CACE,cAAgC,EAAE;;;;;;;CAQlC,aAAoB,YAClB,SACkC;EAClC,MAAM,UAAU,IAAI,yBAAyB;AAC7C,QAAM,QAAQ,KAAK,QAAQ;AAE3B,MAAI,CAAC,QAAQ,YAAY,QAAQ;AAC/B,WAAQ,MACN,kGACD;AACD,SAAM,IAAI,MAAM,8BAA8B;;AAGhD,MAAI,MAAM,QAAQ,QAAQ,WAAW,OAAO,CAC1C,UAAQA,aAAc,MAAM,QAAQ,IAClC,QAAQ,WAAW,OAAO,IAAI,OAAO,GAAG,mBAAmB;GACzD,MAAM,cAAc,MAAM;AAE1B,UAAO;IACL;IACA,SAAS;KAAE,GAAG,QAAQ;KAAS;KAAa;KAAgB;IAC5D,QAAQ;KACN,SAAS;KACT,MAAM;KACN,QAAQ;KACT;IACF;IACD,CACH;OACI;GACL,MAAM,cAAc,MAAM;AAC1B,YAAQA,aAAc,CACpB;IACE;IACA,SAAS;KAAE,GAAG,QAAQ;KAAS;KAAa,gBAAgB;KAAG;IAC/D,QAAQ;KACN,SAAS;KACT,MAAM;KACN,QAAQ;KACT;IACF,CACF;;AAGH,SAAO;;;;;;;CAQT,IAAW,aAA+B;AACxC,SAAO,MAAKA"}