Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] v6.x #747

Closed
wants to merge 24 commits into from
Closed

[WIP] v6.x #747

wants to merge 24 commits into from

Conversation

panva
Copy link
Owner

@panva panva commented Feb 17, 2025

⚠ BREAKING CHANGES

  • The PEMImportOptions type interface is renamed to KeyImportOptions.
  • all builds and bundles now use ES2022 as target
  • createRemoteJWKSet now uses fetch, because of that its Node.js only options.agent property has been removed and new fetch-related options were added
  • drop support for Ed448 and X448
  • drop support for JWK key_ops and CryptoKey usages "(un)wrapKey" and "deriveKey"
  • resolved keys returned as part of verify/decrypt operations (when get key functions are used) are always normalized to either Uint8Array / CryptoKey depending on what's more efficient for the executed operation
  • Key "Type" Generics are removed
  • CJS-style require is now only possible when require(esm) support is present in the Node.js runtime
  • private KeyObject instances can no longer be used for verify operations
  • private KeyObject instances can no longer be used for encryption operations
  • generateSecret, generateKeyPair, importPKCS8, importSPKI, importJWK, and importX509 now yield a CryptoKey instead of a KeyObject in Node.js
  • drop support for Node.js 18.x and earlier
  • remove secp256k1 support
  • remove deprecated APIs

Features

  • enable CryptoKey and KeyObject inputs in JWK thumbprint functions
  • JSON Web Key is now an allowed input everywhere

@panva panva force-pushed the v6.x-wip branch 5 times, most recently from fea02f4 to 59d6329 Compare February 21, 2025 13:33
BREAKING CHANGE: removed deprecated experimental APIs
BREAKING CHANGE: removed RSA1_5 JWE support
BREAKING CHANGE: CJS-style require is now only possible when require(esm) support is present in the Node.js runtime
BREAKING CHANGE: private KeyObject instances can no longer be used for verify operations
BREAKING CHANGE: private KeyObject instances can no longer be used for encryption operations
BREAKING CHANGE: generateSecret, generateKeyPair, importPKCS8, importSPKI, importJWK, and importX509 now yield a CryptoKey instead of a KeyObject in Node.js
BREAKING CHANGE: drop support for Node.js 18.x and earlier
BREAKING CHANGE: runtime-specific npm releases (jose-browser-runtime, jose-node-cjs-runtime, and jose-node-esm-runtime) are no longer maintained or supported
BREAKING CHANGE: resolved keys returned as part of verify/decrypt operations (when get key functions are used) are always normalized to either Uint8Array / CryptoKey depending on what's more efficient for the executed operation
BREAKING CHANGE: Key "Type" Generics are removed
@panva panva closed this Feb 22, 2025
@panva panva deleted the v6.x-wip branch February 22, 2025 14:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant