refactor(uniku)!: prepare v1 release candidate - #100
Open
jkomyno wants to merge 12 commits into
Open
Conversation
commit: |
Contributor
Benchmark ResultsGeneration
Validation
Cold Start (Node)
Comparison vs Main
Bundle Impact
*Excludes external dependencies (e.g., @noble/hashes) Generated by workflow run 31753469792 |
Contributor
|
🚀 View the docs preview at https://jkomyno.github.io/uniku/pr-preview/pr-100/ Built by workflow run 31753470056. |
jkomyno
force-pushed
the
release/uniku-v1-rc.0
branch
from
August 13, 2026 01:20
9e0baf4 to
d0ce298
Compare
Collapse the per-file accumulators threaded through seven transform functions into a single MigrationContext, and gather the import, call-expression, and string-literal node lists once per file instead of re-walking the tree in each pass. The cuidv2 collision scan is memoized so it still runs only for files importing the legacy module. Extract the duplicated legacy-CUID binding rewrite shared by the static and dynamic import paths, hoist the transparent-wrapper kind sets to module constants, and share the "references in this file" traversal. In the integration test, delegate parseAuditOutput to findAuditRecords and extract the repeated workflow invocation. In cuid/v2.ts, use the package's isIntegerInRange helper for the length check. No behavior change.
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.
Summary
uniku@0.6.0migration release, wheresecs,seq, and Nanoid object-formsizeare deprecated with JSDoc pointing to their replacementsuniku/cuid/v2andcuidv2the sole CUID v2 package and API surfaceuniku@1.0.0-rc.1without adding special rejection paths for retired keysCONFLICTING_OPTIONSvalue from the v1 error-code catalogBreaking changes
uniku/cuid2andcuid2are removed; useuniku/cuid/v2andcuidv2secsis removed from KSUID, ObjectID, and XID options; use millisecond-basedmsecsseqis removed from UUID v7 and TypeID options; usecountersizeis removed; uselength(the positionalnanoid(number)overload remains supported)Verification
pnpm typecheckpnpm lint:cipnpm buildwith docs prerendering, Publint, and Are the Types Wrongpnpm examples:checkpnpm --filter uniku smoke:publishRelease state
uniku@0.6.0is published underlatestas the final deprecation release.uniku@1.0.0-rc.0is already published underrc; this PR now materializesuniku@1.0.0-rc.1while keeping@uniku/cliat0.7.0.