diff --git a/.bumpy/audit-python-env-attr.md b/.bumpy/audit-python-env-attr.md deleted file mode 100644 index 18a60a531..000000000 --- a/.bumpy/audit-python-env-attr.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -varlock: patch ---- - -`varlock audit` now detects `ENV.KEY` (from `@generatePythonEnv`) and `os.environ.get()` reads in Python files diff --git a/.bumpy/aws-secrets-nested-json-keys.md b/.bumpy/aws-secrets-nested-json-keys.md deleted file mode 100644 index 5bab44dbf..000000000 --- a/.bumpy/aws-secrets-nested-json-keys.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@varlock/aws-secrets-plugin": minor ---- - -`awsSecret()` and `awsParam()` can read nested JSON values with a dot-separated key, such as `awsSecret("db-config#db.host")`. An exact top-level key with the same name still takes precedence. diff --git a/.bumpy/azure-dedupe-token-requests.md b/.bumpy/azure-dedupe-token-requests.md deleted file mode 100644 index 42a23010f..000000000 --- a/.bumpy/azure-dedupe-token-requests.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@varlock/azure-key-vault-plugin": patch ---- - -Fetch the Azure access token once per service when resolving many secrets at once, run `az account get-access-token` without blocking other requests, and read the Azure CLI token cache from `AZURE_CONFIG_DIR` when set diff --git a/.bumpy/concurrent-item-resolve.md b/.bumpy/concurrent-item-resolve.md deleted file mode 100644 index 0201d0e99..000000000 --- a/.bumpy/concurrent-item-resolve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"varlock": patch ---- - -An item reached by several resolvers at the same time is resolved and validated once instead of once per caller diff --git a/.bumpy/csharp-encrypted-injected-env.md b/.bumpy/csharp-encrypted-injected-env.md deleted file mode 100644 index 05aad597a..000000000 --- a/.bumpy/csharp-encrypted-injected-env.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -varlock: minor ---- - -Generated C# modules now decrypt @encryptInjectedEnv blobs using _VARLOCK_ENV_KEY, instead of rejecting them. diff --git a/.bumpy/cycle-with-schema-error.md b/.bumpy/cycle-with-schema-error.md deleted file mode 100644 index 45a15fbbc..000000000 --- a/.bumpy/cycle-with-schema-error.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"varlock": patch ---- - -A dependency cycle is now reported even when another item has a schema error, instead of the load stopping with "varlock stopped before the command finished" diff --git a/.bumpy/darwin-adhoc-build-flag.md b/.bumpy/darwin-adhoc-build-flag.md deleted file mode 100644 index 7b7e9ca72..000000000 --- a/.bumpy/darwin-adhoc-build-flag.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -"@varlock/native-helper-darwin": none ---- diff --git a/.bumpy/decorator-error-once.md b/.bumpy/decorator-error-once.md deleted file mode 100644 index d9dd31c70..000000000 --- a/.bumpy/decorator-error-once.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"varlock": patch ---- - -An error from a decorator's value (for example `@required=forEnv(prod)` when the current environment is not set) is reported once instead of twice diff --git a/.bumpy/env-source-drift-created-files.md b/.bumpy/env-source-drift-created-files.md deleted file mode 100644 index 3f2b75e5a..000000000 --- a/.bumpy/env-source-drift-created-files.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -varlock: patch ---- - -Reusing an injected env blob (auto-load under `varlock run`) now also re-resolves when an env file it would load, like `.env.local`, was created after the blob was made diff --git a/.bumpy/faster-large-schema-resolve.md b/.bumpy/faster-large-schema-resolve.md deleted file mode 100644 index 888e1ff27..000000000 --- a/.bumpy/faster-large-schema-resolve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"varlock": patch ---- - -Resolving a large schema no longer slows down quadratically with the number of items (3,000 items: about 245 ms to 50 ms) diff --git a/.bumpy/fix-run-utf8-chunk-decoding.md b/.bumpy/fix-run-utf8-chunk-decoding.md deleted file mode 100644 index 50fbc68c9..000000000 --- a/.bumpy/fix-run-utf8-chunk-decoding.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -varlock: patch ---- - -Fix `varlock run` corrupting multi-byte UTF-8 characters split across chunks of piped output diff --git a/.bumpy/glob-backtracking.md b/.bumpy/glob-backtracking.md deleted file mode 100644 index 8ebfaf9e7..000000000 --- a/.bumpy/glob-backtracking.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"varlock": patch ---- - -Key globs with many `*` (in `pick`/`omit`, `--filter` and `@auditIgnoreKeys`) no longer take seconds or minutes to match diff --git a/.bumpy/native-helpers-independent-versions.md b/.bumpy/native-helpers-independent-versions.md deleted file mode 100644 index 1a5c22d3f..000000000 --- a/.bumpy/native-helpers-independent-versions.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -varlock: patch ---- - -Native helper packages (`@varlock/native-helper-*`) are now versioned independently and only re-released when their binaries change. varlock still pins exact helper versions. diff --git a/.bumpy/nextjs-vercel-frozen-boot.md b/.bumpy/nextjs-vercel-frozen-boot.md deleted file mode 100644 index 1a727250e..000000000 --- a/.bumpy/nextjs-vercel-frozen-boot.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@varlock/nextjs-integration": patch ---- - -Fix frozen builds exiting at boot on Vercel, where Next.js leaves the config `env` out of the build output. Rewritten Turbopack runtime files now also get matching content hashes in the build's file traces. diff --git a/.bumpy/nuxt-skip-close-refresh.md b/.bumpy/nuxt-skip-close-refresh.md deleted file mode 100644 index d17174390..000000000 --- a/.bumpy/nuxt-skip-close-refresh.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@varlock/nuxt-integration": patch ---- - -Stop re-resolving env (and re-triggering auth prompts like 1Password) when the Nuxt dev server shuts down or reloads without an env file change diff --git a/.bumpy/parser-crlf-locations.md b/.bumpy/parser-crlf-locations.md deleted file mode 100644 index 654e0b3ec..000000000 --- a/.bumpy/parser-crlf-locations.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@env-spec/parser": patch ---- - -Fix item and syntax error offsets being wrong for files that use Windows (CRLF) line endings diff --git a/.bumpy/proxy-binary-text-body.md b/.bumpy/proxy-binary-text-body.md deleted file mode 100644 index 5ff576427..000000000 --- a/.bumpy/proxy-binary-text-body.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -varlock: patch ---- - -Proxy: response scrubbing and body substitution no longer corrupt non-UTF-8 bodies (e.g. Go checksum database tiles served as text/plain), HEAD responses keep their `content-length`, and 206 partial responses are no longer rewritten diff --git a/.bumpy/release-smoke-test-fixes.md b/.bumpy/release-smoke-test-fixes.md deleted file mode 100644 index a845151cc..000000000 --- a/.bumpy/release-smoke-test-fixes.md +++ /dev/null @@ -1,2 +0,0 @@ ---- ---- diff --git a/.bumpy/run-piped-output-drain.md b/.bumpy/run-piped-output-drain.md deleted file mode 100644 index 0c2576c4f..000000000 --- a/.bumpy/run-piped-output-drain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -varlock: patch ---- - -Fix `varlock run` and `varlock proxy run` dropping piped output: output still unread when the command exits, output from background processes it started, and output that a slow reader had not consumed within 1 second diff --git a/.bumpy/spawn-async-stdio-race.md b/.bumpy/spawn-async-stdio-race.md deleted file mode 100644 index a646f4e71..000000000 --- a/.bumpy/spawn-async-stdio-race.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -varlock: patch -"@varlock/1password-plugin": patch -"@varlock/bitwarden-plugin": patch -"@varlock/keepass-plugin": patch -"@varlock/pass-plugin": patch -"@varlock/proton-pass-plugin": patch ---- - -Fix CLI calls occasionally losing stdout/stderr when the command exits quickly under load, which could surface as a vague "unknown" error instead of the real one diff --git a/.bumpy/sveltekit-cf-dev-skip-loader.md b/.bumpy/sveltekit-cf-dev-skip-loader.md deleted file mode 100644 index 8851cacb0..000000000 --- a/.bumpy/sveltekit-cf-dev-skip-loader.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@varlock/vite-integration": patch ---- - -Fix `vite dev` 500s on SvelteKit with adapter-cloudflare 8 ("no __VARLOCK_ENV binding found"): the Workers env loader is now only injected into builds diff --git a/.bumpy/sveltekit-cf-legacy-plugin.md b/.bumpy/sveltekit-cf-legacy-plugin.md deleted file mode 100644 index 2264f6328..000000000 --- a/.bumpy/sveltekit-cf-legacy-plugin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@varlock/cloudflare-integration": patch ---- - -The deprecated `varlockSvelteKitCloudflarePlugin` now uses the same adapter detection as `varlockVitePlugin()` (fixing `vite dev` on adapter-cloudflare 8) and logs a deprecation warning diff --git a/.bumpy/timezone-data-type.md b/.bumpy/timezone-data-type.md deleted file mode 100644 index 15af90fa3..000000000 --- a/.bumpy/timezone-data-type.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -varlock: minor -env-spec-language: patch ---- - -Add built-in `timeZone` data type that validates IANA time zone names. Rename the `simple-object` data type to `simpleObject` so all built-in type names are camelCase (`simple-object` still works but logs a deprecation warning). diff --git a/.bumpy/varlock-config-var-aliases.md b/.bumpy/varlock-config-var-aliases.md deleted file mode 100644 index 7d0c06fb0..000000000 --- a/.bumpy/varlock-config-var-aliases.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -varlock: patch -"@varlock/nextjs-integration": patch ---- - -Accept `VARLOCK_ENV_KEY` (and the other `_VARLOCK_*` config vars without the leading underscore) for platforms like AWS Lambda that reject env var names starting with `_` diff --git a/.bumpy/vite-env-freshness.md b/.bumpy/vite-env-freshness.md deleted file mode 100644 index 488f5c698..000000000 --- a/.bumpy/vite-env-freshness.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@varlock/vite-integration": patch ---- - -Dev server restarts only re-resolve env when an env file changed or was created, or the last load failed, and startup reuses env already resolved by varlock/auto-load, so plugin resolvers run once instead of several times diff --git a/.bumpy/vite-first-restart-reload.md b/.bumpy/vite-first-restart-reload.md deleted file mode 100644 index 88619ea62..000000000 --- a/.bumpy/vite-first-restart-reload.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@varlock/vite-integration": patch ---- - -Reload env values on the first dev server restart when Vite's root is not the working directory diff --git a/bun.lock b/bun.lock index 2e2410f4a..ac1b70839 100644 --- a/bun.lock +++ b/bun.lock @@ -59,7 +59,7 @@ }, "packages/env-spec-parser": { "name": "@env-spec/parser", - "version": "0.6.2", + "version": "0.6.3", "devDependencies": { "@types/node": "catalog:", "ansis": "catalog:", @@ -71,7 +71,7 @@ }, "packages/integrations/astro": { "name": "@varlock/astro-integration", - "version": "1.4.5", + "version": "1.4.6", "devDependencies": { "@types/node": "catalog:", "@varlock/cloudflare-integration": "workspace:*", @@ -92,7 +92,7 @@ }, "packages/integrations/cloudflare": { "name": "@varlock/cloudflare-integration", - "version": "1.6.3", + "version": "1.6.4", "bin": { "varlock-wrangler": "./bin/varlock-wrangler.js", }, @@ -134,7 +134,7 @@ }, "packages/integrations/nextjs": { "name": "@varlock/nextjs-integration", - "version": "2.0.0", + "version": "2.0.1", "devDependencies": { "@babel/parser": "^7.29.3", "@env-spec/utils": "workspace:^", @@ -151,7 +151,7 @@ }, "packages/integrations/nuxt": { "name": "@varlock/nuxt-integration", - "version": "0.1.5", + "version": "0.1.6", "dependencies": { "@nuxt/kit": "^4.0.3", }, @@ -171,7 +171,7 @@ }, "packages/integrations/vite": { "name": "@varlock/vite-integration", - "version": "1.5.5", + "version": "1.5.6", "devDependencies": { "@env-spec/utils": "workspace:^", "@types/node": "catalog:", @@ -205,7 +205,7 @@ }, "packages/plugins/1password": { "name": "@varlock/1password-plugin", - "version": "2.0.6", + "version": "2.0.7", "devDependencies": { "@1password/sdk": "0.4.1-beta.1", "@1password/sdk-core": "0.4.1-beta.1", @@ -238,7 +238,7 @@ }, "packages/plugins/aws-secrets": { "name": "@varlock/aws-secrets-plugin", - "version": "1.2.5", + "version": "1.3.0", "devDependencies": { "@aws-sdk/client-secrets-manager": "^3.700.0", "@aws-sdk/client-ssm": "^3.700.0", @@ -271,7 +271,7 @@ }, "packages/plugins/azure-key-vault": { "name": "@varlock/azure-key-vault-plugin", - "version": "1.3.1", + "version": "1.3.2", "devDependencies": { "@env-spec/utils": "workspace:^", "@types/node": "catalog:", @@ -287,7 +287,7 @@ }, "packages/plugins/bitwarden": { "name": "@varlock/bitwarden-plugin", - "version": "2.0.2", + "version": "2.0.3", "devDependencies": { "@env-spec/utils": "workspace:^", "@types/node": "catalog:", @@ -404,7 +404,7 @@ }, "packages/plugins/keepass": { "name": "@varlock/keepass-plugin", - "version": "2.0.4", + "version": "2.0.5", "devDependencies": { "@env-spec/utils": "workspace:^", "@types/node": "catalog:", @@ -453,7 +453,7 @@ }, "packages/plugins/pass": { "name": "@varlock/pass-plugin", - "version": "1.0.3", + "version": "1.0.4", "devDependencies": { "@env-spec/utils": "workspace:^", "@types/node": "catalog:", @@ -487,7 +487,7 @@ }, "packages/plugins/proton-pass": { "name": "@varlock/proton-pass-plugin", - "version": "2.0.2", + "version": "2.0.3", "devDependencies": { "@env-spec/utils": "workspace:^", "@types/node": "catalog:", @@ -519,7 +519,7 @@ }, "packages/varlock": { "name": "varlock", - "version": "1.24.0", + "version": "1.25.0", "bin": { "varlock": "./bin/cli.js", }, @@ -606,7 +606,7 @@ }, "packages/vscode-plugin": { "name": "env-spec-language", - "version": "0.5.0", + "version": "0.5.1", "devDependencies": { "@env-spec/parser": "workspace:*", "@types/node": "catalog:", diff --git a/packages/env-spec-parser/CHANGELOG.md b/packages/env-spec-parser/CHANGELOG.md index 6e57f232e..e97e84b5d 100644 --- a/packages/env-spec-parser/CHANGELOG.md +++ b/packages/env-spec-parser/CHANGELOG.md @@ -13,6 +13,12 @@ + +## 0.6.3 +2026-11-13 + +- [#1282](https://github.com/dmno-dev/varlock/pull/1282) *(patch)* Thanks [@voiys](https://github.com/voiys)! - Fix item and syntax error offsets being wrong for files that use Windows (CRLF) line endings + ## 0.6.2 2026-10-13 diff --git a/packages/env-spec-parser/package.json b/packages/env-spec-parser/package.json index 8015b3d57..6686c0bdd 100644 --- a/packages/env-spec-parser/package.json +++ b/packages/env-spec-parser/package.json @@ -1,6 +1,6 @@ { "name": "@env-spec/parser", - "version": "0.6.2", + "version": "0.6.3", "type": "module", "description": "Parser for @env-spec enabled dotenv files", "homepage": "https://varlock.dev", diff --git a/packages/integrations/astro/CHANGELOG.md b/packages/integrations/astro/CHANGELOG.md index 6bd186787..41368c067 100644 --- a/packages/integrations/astro/CHANGELOG.md +++ b/packages/integrations/astro/CHANGELOG.md @@ -16,6 +16,12 @@ + +## 1.4.6 +2026-11-13 + +- *(patch)* Version bump from `@varlock/vite-integration` v1.5.6 + ## 1.4.5 2026-10-29 diff --git a/packages/integrations/astro/package.json b/packages/integrations/astro/package.json index 0444db082..c682d1918 100644 --- a/packages/integrations/astro/package.json +++ b/packages/integrations/astro/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/astro-integration", "description": "Astro integration to use varlock for .env file loading - adds validation, type-safety, and extra security features", - "version": "1.4.5", + "version": "1.4.6", "repository": { "type": "git", "url": "git+https://github.com/dmno-dev/varlock.git", @@ -45,7 +45,7 @@ "peerDependencies": { "varlock": "workspace:^", "astro": ">=4", - "@varlock/cloudflare-integration": "^1.6.3" + "@varlock/cloudflare-integration": "^1.6.4" }, "peerDependenciesMeta": { "@varlock/cloudflare-integration": { diff --git a/packages/integrations/cloudflare/CHANGELOG.md b/packages/integrations/cloudflare/CHANGELOG.md index cdbb132fd..35239de44 100644 --- a/packages/integrations/cloudflare/CHANGELOG.md +++ b/packages/integrations/cloudflare/CHANGELOG.md @@ -22,6 +22,13 @@ + + +## 1.6.4 +2026-11-13 + +- [#1273](https://github.com/dmno-dev/varlock/pull/1273) *(patch)* + The deprecated `varlockSvelteKitCloudflarePlugin` now uses the same adapter detection as `varlockVitePlugin()` (fixing `vite dev` on adapter-cloudflare 8) and logs a deprecation warning ## 1.6.3 2026-10-29 diff --git a/packages/integrations/cloudflare/package.json b/packages/integrations/cloudflare/package.json index 418765a7c..d733fb684 100644 --- a/packages/integrations/cloudflare/package.json +++ b/packages/integrations/cloudflare/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/cloudflare-integration", "description": "Cloudflare Workers integration for varlock - deploy secrets via wrangler and auto-configure Vite", - "version": "1.6.3", + "version": "1.6.4", "repository": { "type": "git", "url": "git+https://github.com/dmno-dev/varlock.git", @@ -63,7 +63,7 @@ "node": ">=22" }, "peerDependencies": { - "varlock": "workspace:^1.24.0", + "varlock": "workspace:^1.25.0", "vite": ">=5", "wrangler": ">=3", "@cloudflare/vite-plugin": ">=1" @@ -84,7 +84,7 @@ "@varlock/vite-integration": "workspace:^", "dotenv": "^16.6.1", "tsdown": "catalog:", - "varlock": "workspace:^1.24.0", + "varlock": "workspace:^1.25.0", "vite": "^7.1.0", "vitest": "catalog:" } diff --git a/packages/integrations/nextjs/CHANGELOG.md b/packages/integrations/nextjs/CHANGELOG.md index 902284cd9..29b68ce79 100644 --- a/packages/integrations/nextjs/CHANGELOG.md +++ b/packages/integrations/nextjs/CHANGELOG.md @@ -19,6 +19,15 @@ + +## 2.0.1 +2026-11-13 + +- [#1295](https://github.com/dmno-dev/varlock/pull/1295) *(patch)* + Accept `VARLOCK_ENV_KEY` (and the other `_VARLOCK_*` config vars without the leading underscore) for platforms like AWS Lambda that reject env var names starting with `_` +- [#1297](https://github.com/dmno-dev/varlock/pull/1297) *(patch)* + Fix frozen builds exiting at boot on Vercel, where Next.js leaves the config `env` out of the build output. Rewritten Turbopack runtime files now also get matching content hashes in the build's file traces. + ## 2.0.0 2026-10-29 diff --git a/packages/integrations/nextjs/package.json b/packages/integrations/nextjs/package.json index 5e9813511..d57958d8e 100644 --- a/packages/integrations/nextjs/package.json +++ b/packages/integrations/nextjs/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/nextjs-integration", "description": "drop-in replacement for @next/env that uses varlock to load .env files with validation and extra security features", - "version": "2.0.0", + "version": "2.0.1", "type": "commonjs", "repository": { "type": "git", diff --git a/packages/integrations/nuxt/CHANGELOG.md b/packages/integrations/nuxt/CHANGELOG.md index 8212c6be8..8167c8426 100644 --- a/packages/integrations/nuxt/CHANGELOG.md +++ b/packages/integrations/nuxt/CHANGELOG.md @@ -5,6 +5,13 @@ + +## 0.1.6 +2026-11-13 + +- [#1270](https://github.com/dmno-dev/varlock/pull/1270) *(patch)* + Stop re-resolving env (and re-triggering auth prompts like 1Password) when the Nuxt dev server shuts down or reloads without an env file change + ## 0.1.5 2026-10-29 diff --git a/packages/integrations/nuxt/package.json b/packages/integrations/nuxt/package.json index a1cdb650b..2e3418844 100644 --- a/packages/integrations/nuxt/package.json +++ b/packages/integrations/nuxt/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/nuxt-integration", "description": "Nuxt module to use varlock for .env file loading - adds validation, type-safety, and extra security features", - "version": "0.1.5", + "version": "0.1.6", "repository": { "type": "git", "url": "git+https://github.com/dmno-dev/varlock.git", diff --git a/packages/integrations/vite/CHANGELOG.md b/packages/integrations/vite/CHANGELOG.md index 940593c92..0079a55e8 100644 --- a/packages/integrations/vite/CHANGELOG.md +++ b/packages/integrations/vite/CHANGELOG.md @@ -17,6 +17,16 @@ + +## 1.5.6 +2026-11-13 + +- [#1262](https://github.com/dmno-dev/varlock/pull/1262) *(patch)* Thanks [@fengmk2](https://github.com/fengmk2)! - Reload env values on the first dev server restart when Vite's root is not the working directory +- [#1273](https://github.com/dmno-dev/varlock/pull/1273) *(patch)* + Fix `vite dev` 500s on SvelteKit with adapter-cloudflare 8 ("no __VARLOCK_ENV binding found"): the Workers env loader is now only injected into builds +- [#1270](https://github.com/dmno-dev/varlock/pull/1270) *(patch)* + Dev server restarts only re-resolve env when an env file changed or was created, or the last load failed, and startup reuses env already resolved by varlock/auto-load, so plugin resolvers run once instead of several times + ## 1.5.5 2026-10-29 diff --git a/packages/integrations/vite/package.json b/packages/integrations/vite/package.json index 3ac45986d..283353339 100644 --- a/packages/integrations/vite/package.json +++ b/packages/integrations/vite/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/vite-integration", "description": "Vite plugin to use varlock for .env file loading - adds validation, type-safety, and extra security features", - "version": "1.5.5", + "version": "1.5.6", "repository": { "type": "git", "url": "git+https://github.com/dmno-dev/varlock.git", diff --git a/packages/plugins/1password/CHANGELOG.md b/packages/plugins/1password/CHANGELOG.md index f26a1add1..e23149371 100644 --- a/packages/plugins/1password/CHANGELOG.md +++ b/packages/plugins/1password/CHANGELOG.md @@ -12,6 +12,13 @@ + +## 2.0.7 +2026-11-13 + +- [#1271](https://github.com/dmno-dev/varlock/pull/1271) *(patch)* + Fix CLI calls occasionally losing stdout/stderr when the command exits quickly under load, which could surface as a vague "unknown" error instead of the real one + ## 2.0.6 2026-10-29 diff --git a/packages/plugins/1password/package.json b/packages/plugins/1password/package.json index 1eff6c879..e49577d24 100644 --- a/packages/plugins/1password/package.json +++ b/packages/plugins/1password/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/1password-plugin", "description": "Varlock plugin to load data from 1Password vaults", - "version": "2.0.6", + "version": "2.0.7", "type": "module", "homepage": "https://varlock.dev/plugins/1password/", "bugs": "https://github.com/dmno-dev/varlock/issues", diff --git a/packages/plugins/aws-secrets/CHANGELOG.md b/packages/plugins/aws-secrets/CHANGELOG.md index 4a02c6e5b..f898e149d 100644 --- a/packages/plugins/aws-secrets/CHANGELOG.md +++ b/packages/plugins/aws-secrets/CHANGELOG.md @@ -8,6 +8,13 @@ + +## 1.3.0 +2026-11-13 + +- [#1291](https://github.com/dmno-dev/varlock/pull/1291) *(minor)* Thanks [@jsskeen-utah](https://github.com/jsskeen-utah)! + `awsSecret()` and `awsParam()` can read nested JSON values with a dot-separated key, such as `awsSecret("db-config#db.host")`. An exact top-level key with the same name still takes precedence. + ## 1.2.5 2026-10-09 diff --git a/packages/plugins/aws-secrets/package.json b/packages/plugins/aws-secrets/package.json index f3c8f6d7e..0c0b59e04 100644 --- a/packages/plugins/aws-secrets/package.json +++ b/packages/plugins/aws-secrets/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/aws-secrets-plugin", "description": "Varlock plugin to load secrets from AWS (supports both Secrets Manager and Systems Manager Parameter Store)", - "version": "1.2.5", + "version": "1.3.0", "type": "module", "homepage": "https://varlock.dev/plugins/aws-secrets/", "bugs": "https://github.com/dmno-dev/varlock/issues", diff --git a/packages/plugins/azure-key-vault/CHANGELOG.md b/packages/plugins/azure-key-vault/CHANGELOG.md index 2364b4d8a..0046c0311 100644 --- a/packages/plugins/azure-key-vault/CHANGELOG.md +++ b/packages/plugins/azure-key-vault/CHANGELOG.md @@ -8,6 +8,13 @@ + +## 1.3.2 +2026-11-13 + +- [#1298](https://github.com/dmno-dev/varlock/pull/1298) *(patch)* + Fetch the Azure access token once per service when resolving many secrets at once, run `az account get-access-token` without blocking other requests, and read the Azure CLI token cache from `AZURE_CONFIG_DIR` when set + ## 1.3.1 2026-10-09 diff --git a/packages/plugins/azure-key-vault/package.json b/packages/plugins/azure-key-vault/package.json index 0f2fd58cb..13a667964 100644 --- a/packages/plugins/azure-key-vault/package.json +++ b/packages/plugins/azure-key-vault/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/azure-key-vault-plugin", "description": "Varlock plugin to load secrets from Azure Key Vault and settings from Azure App Configuration", - "version": "1.3.1", + "version": "1.3.2", "type": "module", "homepage": "https://varlock.dev/plugins/azure-key-vault/", "bugs": "https://github.com/dmno-dev/varlock/issues", diff --git a/packages/plugins/bitwarden/CHANGELOG.md b/packages/plugins/bitwarden/CHANGELOG.md index d910c962f..fde6b5a04 100644 --- a/packages/plugins/bitwarden/CHANGELOG.md +++ b/packages/plugins/bitwarden/CHANGELOG.md @@ -5,6 +5,13 @@ + +## 2.0.3 +2026-11-13 + +- [#1271](https://github.com/dmno-dev/varlock/pull/1271) *(patch)* + Fix CLI calls occasionally losing stdout/stderr when the command exits quickly under load, which could surface as a vague "unknown" error instead of the real one + ## 2.0.2 2026-10-09 diff --git a/packages/plugins/bitwarden/package.json b/packages/plugins/bitwarden/package.json index 3aba658af..e62d175c1 100644 --- a/packages/plugins/bitwarden/package.json +++ b/packages/plugins/bitwarden/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/bitwarden-plugin", "description": "Varlock plugin to load secrets from Bitwarden Secrets Manager and Password Manager (and Vaultwarden)", - "version": "2.0.2", + "version": "2.0.3", "type": "module", "homepage": "https://varlock.dev/plugins/bitwarden/", "bugs": "https://github.com/dmno-dev/varlock/issues", diff --git a/packages/plugins/keepass/CHANGELOG.md b/packages/plugins/keepass/CHANGELOG.md index 1816c020c..186a3a83a 100644 --- a/packages/plugins/keepass/CHANGELOG.md +++ b/packages/plugins/keepass/CHANGELOG.md @@ -6,6 +6,13 @@ + +## 2.0.5 +2026-11-13 + +- [#1271](https://github.com/dmno-dev/varlock/pull/1271) *(patch)* + Fix CLI calls occasionally losing stdout/stderr when the command exits quickly under load, which could surface as a vague "unknown" error instead of the real one + ## 2.0.4 2026-10-09 diff --git a/packages/plugins/keepass/package.json b/packages/plugins/keepass/package.json index 7c679aeb7..2a1af6e77 100644 --- a/packages/plugins/keepass/package.json +++ b/packages/plugins/keepass/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/keepass-plugin", "description": "Varlock plugin to load secrets from KeePass databases (KDBX 4.0) and KeePassXC desktop app", - "version": "2.0.4", + "version": "2.0.5", "type": "module", "homepage": "https://varlock.dev/plugins/keepass/", "bugs": "https://github.com/dmno-dev/varlock/issues", diff --git a/packages/plugins/pass/CHANGELOG.md b/packages/plugins/pass/CHANGELOG.md index b81284ba6..feb319787 100644 --- a/packages/plugins/pass/CHANGELOG.md +++ b/packages/plugins/pass/CHANGELOG.md @@ -4,6 +4,13 @@ + +## 1.0.4 +2026-11-13 + +- [#1271](https://github.com/dmno-dev/varlock/pull/1271) *(patch)* + Fix CLI calls occasionally losing stdout/stderr when the command exits quickly under load, which could surface as a vague "unknown" error instead of the real one + ## 1.0.3 2026-10-09 diff --git a/packages/plugins/pass/package.json b/packages/plugins/pass/package.json index 8c07faec0..8cc58697d 100644 --- a/packages/plugins/pass/package.json +++ b/packages/plugins/pass/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/pass-plugin", "description": "Varlock plugin to load secrets from pass (the standard unix password manager)", - "version": "1.0.3", + "version": "1.0.4", "type": "module", "homepage": "https://varlock.dev/plugins/pass/", "bugs": "https://github.com/dmno-dev/varlock/issues", diff --git a/packages/plugins/proton-pass/CHANGELOG.md b/packages/plugins/proton-pass/CHANGELOG.md index 5ed59ab80..f937d7ce3 100644 --- a/packages/plugins/proton-pass/CHANGELOG.md +++ b/packages/plugins/proton-pass/CHANGELOG.md @@ -7,6 +7,13 @@ + +## 2.0.3 +2026-11-13 + +- [#1271](https://github.com/dmno-dev/varlock/pull/1271) *(patch)* + Fix CLI calls occasionally losing stdout/stderr when the command exits quickly under load, which could surface as a vague "unknown" error instead of the real one + ## 2.0.2 2026-10-09 diff --git a/packages/plugins/proton-pass/package.json b/packages/plugins/proton-pass/package.json index b330759d7..a1a33bf24 100644 --- a/packages/plugins/proton-pass/package.json +++ b/packages/plugins/proton-pass/package.json @@ -1,7 +1,7 @@ { "name": "@varlock/proton-pass-plugin", "description": "Varlock plugin to load secrets from Proton Pass using the Proton Pass CLI", - "version": "2.0.2", + "version": "2.0.3", "type": "module", "homepage": "https://varlock.dev/plugins/proton-pass/", "bugs": "https://github.com/dmno-dev/varlock/issues", diff --git a/packages/varlock/CHANGELOG.md b/packages/varlock/CHANGELOG.md index 4bc40b9d0..94fd86b5e 100644 --- a/packages/varlock/CHANGELOG.md +++ b/packages/varlock/CHANGELOG.md @@ -34,6 +34,36 @@ + + +## 1.25.0 +2026-11-13 + +- [#1300](https://github.com/dmno-dev/varlock/pull/1300) *(minor)* + Add built-in `timeZone` data type that validates IANA time zone names. Rename the `simple-object` data type to `simpleObject` so all built-in type names are camelCase (`simple-object` still works but logs a deprecation warning). +- [#1281](https://github.com/dmno-dev/varlock/pull/1281) *(minor)* Thanks [@jsskeen-utah](https://github.com/jsskeen-utah)! - Generated C# modules now decrypt @encryptInjectedEnv blobs using _VARLOCK_ENV_KEY, instead of rejecting them. +- [#1265](https://github.com/dmno-dev/varlock/pull/1265) *(patch)* + Proxy: response scrubbing and body substitution no longer corrupt non-UTF-8 bodies (e.g. Go checksum database tiles served as text/plain), HEAD responses keep their `content-length`, and 206 partial responses are no longer rewritten +- [#1269](https://github.com/dmno-dev/varlock/pull/1269) *(patch)* - `varlock audit` now detects `ENV.KEY` (from `@generatePythonEnv`) and `os.environ.get()` reads in Python files +- [#1271](https://github.com/dmno-dev/varlock/pull/1271) *(patch)* + Fix CLI calls occasionally losing stdout/stderr when the command exits quickly under load, which could surface as a vague "unknown" error instead of the real one +- [#1270](https://github.com/dmno-dev/varlock/pull/1270) *(patch)* + Reusing an injected env blob (auto-load under `varlock run`) now also re-resolves when an env file it would load, like `.env.local`, was created after the blob was made +- [#1295](https://github.com/dmno-dev/varlock/pull/1295) *(patch)* + Accept `VARLOCK_ENV_KEY` (and the other `_VARLOCK_*` config vars without the leading underscore) for platforms like AWS Lambda that reject env var names starting with `_` +- [#1253](https://github.com/dmno-dev/varlock/pull/1253) *(patch)* + Native helper packages (`@varlock/native-helper-*`) are now versioned independently and only re-released when their binaries change. varlock still pins exact helper versions. +- [#1296](https://github.com/dmno-dev/varlock/pull/1296) *(patch)* + Fix `varlock run` and `varlock proxy run` dropping piped output: output still unread when the command exits, output from background processes it started, and output that a slow reader had not consumed within 1 second +- [#1299](https://github.com/dmno-dev/varlock/pull/1299) *(patch)* - Fix `varlock run` corrupting multi-byte UTF-8 characters split across chunks of piped output +- [#1286](https://github.com/dmno-dev/varlock/pull/1286) *(patch)* Thanks [@voiys](https://github.com/voiys)! + A dependency cycle is now reported even when another item has a schema error, instead of the load stopping with "varlock stopped before the command finished" +- [#1284](https://github.com/dmno-dev/varlock/pull/1284) *(patch)* Thanks [@voiys](https://github.com/voiys)! + Resolving a large schema no longer slows down quadratically with the number of items (3,000 items: about 245 ms to 50 ms) +- [#1283](https://github.com/dmno-dev/varlock/pull/1283) *(patch)* Thanks [@voiys](https://github.com/voiys)! - Key globs with many `*` (in `pick`/`omit`, `--filter` and `@auditIgnoreKeys`) no longer take seconds or minutes to match +- [#1285](https://github.com/dmno-dev/varlock/pull/1285) *(patch)* Thanks [@voiys](https://github.com/voiys)! + An error from a decorator's value (for example `@required=forEnv(prod)` when the current environment is not set) is reported once instead of twice +- [#1288](https://github.com/dmno-dev/varlock/pull/1288) *(patch)* Thanks [@voiys](https://github.com/voiys)! - An item reached by several resolvers at the same time is resolved and validated once instead of once per caller ## 1.24.0 2026-10-29 diff --git a/packages/varlock/package.json b/packages/varlock/package.json index b80d27073..441bdc2b3 100644 --- a/packages/varlock/package.json +++ b/packages/varlock/package.json @@ -1,6 +1,6 @@ { "name": "varlock", - "version": "1.24.0", + "version": "1.25.0", "description": "AI-safe .env files: Schemas for agents, Secrets for humans.", "main": "./dist/index.mjs", "types": "./dist/index.d.mts", diff --git a/packages/vscode-plugin/CHANGELOG.md b/packages/vscode-plugin/CHANGELOG.md index 05cad166b..c2ec3f4a2 100644 --- a/packages/vscode-plugin/CHANGELOG.md +++ b/packages/vscode-plugin/CHANGELOG.md @@ -18,6 +18,13 @@ + +## 0.5.1 +2026-11-13 + +- [#1300](https://github.com/dmno-dev/varlock/pull/1300) *(patch)* + Add built-in `timeZone` data type that validates IANA time zone names. Rename the `simple-object` data type to `simpleObject` so all built-in type names are camelCase (`simple-object` still works but logs a deprecation warning). + ## 0.5.0 2026-10-13 diff --git a/packages/vscode-plugin/package.json b/packages/vscode-plugin/package.json index 7f49581f1..976d70a64 100644 --- a/packages/vscode-plugin/package.json +++ b/packages/vscode-plugin/package.json @@ -7,7 +7,7 @@ "color": "#4F0049", "theme": "dark" }, - "version": "0.5.0", + "version": "0.5.1", "publisher": "varlock", "author": "dmno-dev", "license": "MIT",