Repository navigation
build(deps)!: move webcrypto-core, asn1-schema and json-schema to peer dependencies - #99
Merged
Merged
Conversation
This was referenced Oct 27, 2026
Closed
donskov
force-pushed
the
donskov/webcrypto-5-utils
branch
from
October 27, 2026 11:10
e5d2030 to
640fb71
Compare
…r dependencies webcrypto-core ^2.0.0, @peculiar/asn1-schema ^3.0.0 and @peculiar/json-schema ^3.0.0 become peer dependencies (and dev dependencies). webcrypto parses and serializes keys with classes that webcrypto-core registers in the asn1-schema and json-schema storages, and re-exports core's CryptoKey, so the app must have exactly one copy of each. src doesn't import asn1js; it arrives as a peer of core and asn1-schema. @peculiar/utils ^4.1.0 stays a regular dependency. No source changes were needed. .oxlintrc.json now matches pvtsutils: the import/namespace false positives on core.asn1.* are gone with core 2. The base64url rules for EC and RSA JWK members, which core decodes, are unchanged from 1.7.1 and covered by a spec. BREAKING CHANGE: webcrypto-core ^2.0.0, @peculiar/asn1-schema ^3.0.0 and @peculiar/json-schema ^3.0.0 are peer dependencies (1.7.1 depended on webcrypto-core ^1.9.2, @peculiar/asn1-schema ^2.7.0 and @peculiar/json-schema ^1.1.12), and @peculiar/utils moves from ^2.0.2 to ^4.1.0. npm 7+ installs peers automatically; a conflicting major now fails at install (ERESOLVE) instead of at runtime. Code that uses webcrypto-core 1 next to webcrypto 2 gets a second core copy, and its CryptoKey class does not match the one webcrypto 2 exports.
donskov
force-pushed
the
donskov/webcrypto-6-peers
branch
from
October 27, 2026 11:13
f25c33c to
7c50fc2
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #98 (part 6 of 7 for @peculiar/webcrypto 2.0.0; merge in order).
webcrypto-core ^2.0.0,@peculiar/asn1-schema ^3.0.0,@peculiar/json-schema ^3.0.0→ peers (+ dev).srcdoesn't importasn1js(it comes as a peer of core/asn1-schema), so it isn't declared. No source changes;.oxlintrc.jsonis now byte-for-byte pvtsutils. JWK base64url results with core 2 are identical to 1.7.1 (new spec for ECd/ RSAn).BEGIN_COMMIT_OVERRIDE
build(deps)!: move webcrypto-core, asn1-schema and json-schema to peer dependencies
BREAKING CHANGE: webcrypto-core ^2.0.0, @peculiar/asn1-schema ^3.0.0 and @peculiar/json-schema ^3.0.0 are peer dependencies (1.x depended on webcrypto-core ^1.9.2, @peculiar/asn1-schema ^2.7.0 and @peculiar/json-schema ^1.1.12), and @peculiar/utils moves from ^2.0.2 to ^4.1.0. webcrypto parses keys with classes that webcrypto-core registers in the asn1-schema and json-schema storages, and CryptoKey is webcrypto-core's class, so an app needs exactly one copy of each. npm 7+ installs peers automatically; a conflicting major now fails at install (ERESOLVE) instead of at runtime. Code that uses webcrypto-core 1 next to webcrypto 2 gets a second core copy, and its CryptoKey class does not match the one webcrypto 2 exports.
END_COMMIT_OVERRIDE