diff --git a/THIRD_PARTY_LICENSES.md b/THIRD_PARTY_LICENSES.md index 7425b96..c1f35d0 100644 --- a/THIRD_PARTY_LICENSES.md +++ b/THIRD_PARTY_LICENSES.md @@ -17,9 +17,9 @@ The TypeScript package depends on the following NPM packages: @flarelette/jwt-kit-env@1.8.1 │ C:\Users\chris\git\flarelette-jwt-kit │ -└─┬ @chrislyons-dev/flarelette-jwt@1.10.1 -> .\packages\flarelette-jwt-ts +└─┬ @chrislyons-dev/flarelette-jwt@1.11.0 -> .\packages\flarelette-jwt-ts │ Environment-driven JWT authentication for Cloudflare Workers with secret-name indirection - └── jose@5.10.0 + └── jose@6.1.3 JWA, JWS, JWE, JWT, JWK, JWKS for Node.js, Browser, Cloudflare Workers, Deno, Bun, and other Web-interoperable runtimes ``` @@ -77,4 +77,4 @@ This script: --- -**Last generated**: 2025-11-04 +**Last generated**: 2025-12-08 diff --git a/docs/architecture/README.md b/docs/architecture/README.md index 9475b04..8b6d8fe 100644 --- a/docs/architecture/README.md +++ b/docs/architecture/README.md @@ -1,7 +1,7 @@ # 🏗️ flarelette-jwt-kit **Architecture Documentation** -Generated 2025-11-04 00:58:21 +Generated 2025-12-07 21:02:30 ## Overview diff --git a/package-lock.json b/package-lock.json index 8041660..f345097 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@flarelette/jwt-kit-env", - "version": "0.1.0", + "version": "1.8.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@flarelette/jwt-kit-env", - "version": "0.1.0", + "version": "1.8.1", "license": "MIT", "workspaces": [ "packages/*" @@ -31,7 +31,7 @@ "miniflare": "^4.20251011.1", "prettier": "^3.3.3", "release-please": "^17.1.3", - "rimraf": "^6.0.1", + "rimraf": "^6.1.2", "typescript": "^5.9.3", "typescript-eslint": "^8.46.2", "vitest": "^4.0.4", @@ -5109,15 +5109,15 @@ } }, "node_modules/glob": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz", - "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.1.0.tgz", + "integrity": "sha512-vuNwKSaKiqm7g0THUBu2x7ckSs3XJLXE+2ssL7/MfTGPLLcrJQ/4Uq1CjPTtO5cCIiRxqvN6Twy1qOwhL0Xjcw==", "dev": true, - "license": "ISC", + "license": "BlueOak-1.0.0", "dependencies": { "foreground-child": "^3.3.1", "jackspeak": "^4.1.1", - "minimatch": "^10.0.3", + "minimatch": "^10.1.1", "minipass": "^7.1.2", "package-json-from-dist": "^1.0.0", "path-scurry": "^2.0.0" @@ -5688,9 +5688,9 @@ } }, "node_modules/jose": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/jose/-/jose-5.10.0.tgz", - "integrity": "sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg==", + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/jose/-/jose-6.1.3.tgz", + "integrity": "sha512-0TpaTfihd4QMNwrz/ob2Bp7X04yuxJkjRGi4aKmOqwhov54i6u79oCv7T+C7lo70MKH6BesI3vscD1yb/yzKXQ==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/panva" @@ -7539,14 +7539,14 @@ "license": "MIT" }, "node_modules/rimraf": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz", - "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.1.2.tgz", + "integrity": "sha512-cFCkPslJv7BAXJsYlK1dZsbP8/ZNLkCAQ0bi1hf5EKX2QHegmDFEFA6QhuYJlk7UDdc+02JjO80YSOrWPpw06g==", "dev": true, - "license": "ISC", + "license": "BlueOak-1.0.0", "dependencies": { - "glob": "^11.0.0", - "package-json-from-dist": "^1.0.0" + "glob": "^13.0.0", + "package-json-from-dist": "^1.0.1" }, "bin": { "rimraf": "dist/esm/bin.mjs" @@ -9616,18 +9616,18 @@ }, "packages/flarelette-jwt-ts": { "name": "@chrislyons-dev/flarelette-jwt", - "version": "0.1.0", + "version": "1.11.0", "license": "MIT", "dependencies": { - "jose": "^5.3.0" + "jose": "^6.1.3" }, "bin": { "flarelette-jwt-keygen": "dist/keygen.js", "flarelette-jwt-secret": "dist/cli.js" }, "devDependencies": { - "rimraf": "^6.0.1", - "typescript": "^5.6.3" + "rimraf": "^6.1.2", + "typescript": "^5.9.3" }, "engines": { "node": ">=18.0.0" diff --git a/package.json b/package.json index 0adcb35..575ce49 100644 --- a/package.json +++ b/package.json @@ -70,7 +70,7 @@ "miniflare": "^4.20251011.1", "prettier": "^3.3.3", "release-please": "^17.1.3", - "rimraf": "^6.0.1", + "rimraf": "^6.1.2", "typescript": "^5.9.3", "typescript-eslint": "^8.46.2", "vitest": "^4.0.4", diff --git a/packages/flarelette-jwt-py/pyproject.toml b/packages/flarelette-jwt-py/pyproject.toml index ae0a303..5c121b4 100644 --- a/packages/flarelette-jwt-py/pyproject.toml +++ b/packages/flarelette-jwt-py/pyproject.toml @@ -1,10 +1,10 @@ [build-system] -requires = ["setuptools>=68.0", "wheel"] +requires = ["setuptools>=75.0", "wheel"] build-backend = "setuptools.build_meta" [project] name = "flarelette-jwt" -version = "1.11.0" +version = "1.12.0" description = "Environment-driven JWT authentication for Cloudflare Workers Python with secret-name indirection" readme = "README.md" requires-python = ">=3.11" diff --git a/packages/flarelette-jwt-ts/package.json b/packages/flarelette-jwt-ts/package.json index fe6f591..9f6c8ee 100644 --- a/packages/flarelette-jwt-ts/package.json +++ b/packages/flarelette-jwt-ts/package.json @@ -1,6 +1,6 @@ { "name": "@chrislyons-dev/flarelette-jwt", - "version": "1.11.0", + "version": "1.12.0", "type": "module", "description": "Environment-driven JWT authentication for Cloudflare Workers with secret-name indirection", "keywords": [ @@ -54,11 +54,11 @@ "prepublishOnly": "npm run prepare && npm run build" }, "dependencies": { - "jose": "^5.3.0" + "jose": "^6.1.3" }, "devDependencies": { - "typescript": "^5.6.3", - "rimraf": "^6.0.1" + "typescript": "^5.9.3", + "rimraf": "^6.1.2" }, "engines": { "node": ">=18.0.0" diff --git a/packages/flarelette-jwt-ts/tests/sign-verify.test.ts b/packages/flarelette-jwt-ts/tests/sign-verify.test.ts index c853017..5f64a47 100644 --- a/packages/flarelette-jwt-ts/tests/sign-verify.test.ts +++ b/packages/flarelette-jwt-ts/tests/sign-verify.test.ts @@ -120,7 +120,10 @@ describe('Sign and Verify - EdDSA Mode', () => { beforeEach(async () => { // Generate Ed25519 key pair - const keyPair = await generateKeyPair('EdDSA', { crv: 'Ed25519' }) + const keyPair = await generateKeyPair('EdDSA', { + crv: 'Ed25519', + extractable: true, + }) const privateJwkObj = await exportJWK(keyPair.privateKey) const publicJwkObj = await exportJWK(keyPair.publicKey) privateJwk = JSON.stringify(privateJwkObj) @@ -321,7 +324,10 @@ describe('Thumbprint Pinning (EdDSA)', () => { beforeEach(async () => { // Generate Ed25519 key pair - const keyPair = await generateKeyPair('EdDSA', { crv: 'Ed25519' }) + const keyPair = await generateKeyPair('EdDSA', { + crv: 'Ed25519', + extractable: true, + }) const privateJwkObj = await exportJWK(keyPair.privateKey) const publicJwkObj = await exportJWK(keyPair.publicKey) privateJwkObj.kid = 'pinned-key'