-
#1124 (minor)
pick/omiton@import()now accept the same selectors as--filter:#tagto import items tagged with@tag()in the imported file, and!selectorto exclude matches (e.g.pick=[#frontend, !#internal]orpick=[API_*, !API_SECRET]). Previously a#tagentry silently matched nothing.@setValuesBulkpick/omitgain!exclusions too; decorator selectors like@sensitiveare rejected with a clear error in both.New
varlock.filteroption inpackage.json: a default--filterforvarlock load/run, valid alongsidevarlock.loadPath, so a package can point at a shared root schema and take just its tagged items without a.env.schemaof its own. -
#1112 (minor)
uuidtype now accepts UUID versions 6-8 (RFC 9562, including UUIDv7) and the MAX UUID, and takes an optionalversionoption (e.g.@type=uuid(version=7)) to require a specific version. -
#1107 (patch)
varlock auditno longer tries to lex string, template and regex literals while scanning source files. A quote inside a regex (such ass.replace(/'/g, "")), JSX text or a docstring could throw that lexer off and silently hide every env var reference after it in the same file. The scanner now only skips lines that are entirely comments, and references mentioned inside string literals are reported like any other.New
@auditIgnoreKeys(KEY, PREFIX_*)root decorator: keys the audit should never report as missing from the schema, for scanner false positives such as aprocess.env.FOOmentioned inside a string. -
#1108 (patch)
Fix an infinite spawn loop whenvarlock/auto-loadis preloaded via bun'sbunfig.tomland bun also serves asnode(as in bun-only containers): the CLI process spawned by auto-load was preloaded too, and spawned another. The spawned CLI is now tagged with__VARLOCK_CLI_CHILDand a preloaded auto-load inside it skips resolving. -
#1110 (patch)
Fix duplicate encryption daemons, and the repeated Touch ID / Windows Hello prompts they cause, when many varlock processes start at once (an MCP host launching several stdio servers, a parallel task runner). Switching between projects on different varlock versions now only restarts the daemon when its binary actually differs, so versions that ship the same daemon share one biometric session. -
#1114 (patch)
Plugins whose build is split into several files no longer fail with "No active plugin context" when a chunk loads after the plugin has initialized -
#1109 (patch)
Auto-load and framework integrations now always run the varlock CLI installed alongside the imported package, and only fall back to avarlockon PATH when there is no local install. Previously a globally installed CLI could win over the local one when an app was started directly withnode, so the runtime library and the CLI could be different versions. -
#1121 (patch)
varlock runnow waits for a child's shutdown handler to finish after forwardingSIGTERMorSIGINT. Previously, in published builds, varlock exited right after forwarding the signal and killed the child mid-shutdown (for example ondocker stopwithvarlock runas the container entrypoint).varlock proxy runnow handles signals the same way: it forwards them to the child and waits, instead of killing it immediately, and propagates the child's real exit status. Theproxy startdaemon's shutdown cleanup is no longer cut short by the same exit hook. -
#1120 (patch)
Fix duplicate encryption daemons on Windows when many varlock processes start at once, which made each daemon ask for Windows Hello separately.
Published to
- ✅ npm