refactor: scope the runtime package as @tskm/core - #4
Merged
Conversation
npm rejects the unscoped name `tskm` as too similar to existing packages (tsm/tsx/tsc/...), so rename the runtime library to @tskm/core, matching the @tskm/compiler and @tskm/vite family. The compiler discovers schemas imported from the runtime module and emits imports for it, so update its RUNTIME_MODULE constant and generated import to @tskm/core, and bump @tskm/compiler to 0.0.2 (the already-published 0.0.1 still targets the old name). README, examples, compiler test fixtures, and the publish/smoke scripts are updated to match. The `tskm` CLI command (the @tskm/compiler bin) and the Standard Schema vendor string are intentionally left unchanged. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Why
npm rejects the unscoped name
tskmwith E403 — "too similar to existing packages (tsm, tsx, tsc, …)" (typosquat protection). So the runtime library is renamed to@tskm/core, consistent with the@tskm/compiler/@tskm/vitefamily.What changed
packages/tskmpackage name →@tskm/core(directory kept aspackages/tskm).@tskm/compiler:RUNTIME_MODULEand the generatedimportnow target@tskm/core; the compiler discovers schemas imported from the runtime module, so this is load-bearing. Bumped to 0.0.2 (the already-published0.0.1still targets the old name).examples/basic, compiler test fixtures (thefrom "@tskm/core"andimport("@tskm/core").Infer*forms), and thepublish/smokescripts updated to match.tskmCLI command (the@tskm/compilerbin) and the Standard Schemavendor: "tskm"string — these are not the package import name.Versions after this PR
@tskm/core@0.0.1,@tskm/compiler@0.0.2,@tskm/vite@0.0.1.Verification (local)
build, the full test suite (560), lint, tsgo typecheck, publint, attw, the publish dry-run (order
@tskm/compiler → @tskm/core → @tskm/vite), and the clean-room install+run smoke all pass.Follow-up
After merge, re-run the bootstrap publish for the three packages, then configure Trusted Publishers;
@tskm/compiler@0.0.1can be deprecated once0.0.2is up. Seedocs/RELEASING.md.🤖 Generated with Claude Code