Minor Changes
-
#436
eaf6c10- fix: switch plugins to CJS output to fix plugin loading errors in the standalone binaryPreviously plugins were built as ESM and the loader performed a fragile regex-based ESM→CJS transformation. Plugins now build as CJS directly and are loaded via
new Functionin the main runtime context, which avoids both the ESM parse errors and Node.js internal assertion failures (e.g.DOMExceptionlazy getter crashing in vm sandbox contexts). -
#438
b540985- general cleanup and standardization of pluginsfeat: add
standardVarsplugin property for automatic env var detection warningsPlugins can now declaratively set
plugin.standardVarsto define well-known env vars they use. The loading infrastructure automatically checks for these vars in the environment and shows non-blocking warnings (in pretty output or on failure) when they are detected but not wired into the schema or plugin decorator. Green highlighting indicates items that need to be added.
Patch Changes
-
#421
7b31afe- feat: addifs()function and updateremap()to support positional arg pairs-
New
ifs()function: Excel-style conditional that evaluates condition/value pairs and returns the value for the first truthy condition. An optional trailing default value is used when no condition matches.API_URL=ifs( eq($ENV, production), https://api.example.com, eq($ENV, staging), https://staging-api.example.com, http://localhost:3000 ) -
Updated
remap()function: Now supports positional(match, result)pairs as the preferred syntax. The old key=value syntax (result=match) is still supported but deprecated.# new preferred syntax (match first, result second) APP_ENV=remap($CI_BRANCH, "main", production, regex(.*), preview, undefined, development) # old syntax (still works but deprecated) APP_ENV=remap($CI_BRANCH, production="main", preview=regex(.*), development=undefined)
-
-
#429
dbf0bd4- fix: defer plugin auth errors until resolver is actually used, and prefix resolution errors with resolver function name for clearer error messages -
#431
ab417d7- Fix: Exclude.env.localfiles and their imports from generated TypeScript types.