Skip to content

build: resolve the Toolpath packages onto one tool-support - #10

Merged
JustinSGray merged 1 commit into
mainfrom
jsg-align-toolpath-versions
Sep 12, 2026
Merged

JustinSGray merged 1 commit into
mainfrom
jsg-align-toolpath-versions

Conversation

@JustinSGray

Copy link
Copy Markdown
Contributor

Summary

The workspace resolved two copies of @toolpath/tool-support. app-support
0.1.3 wants ^0.3.0; tool-drawing 1.0.0 and tool-scraper 3.0.0 want
^0.3.1; the workspace pinned tool-support 0.3.0 directly. A 0.x caret does
not span a minor, so nothing satisfied all four at once and the drawing and the
scraper computed a stickout against a different tool-support than the
applications read.

  • app-support 0.1.3 → 0.1.4
  • tool-drawing 1.0.0 → 1.0.1
  • tool-scraper 3.0.0 → 3.0.1
  • tool-support 0.3.0 → 0.4.0

All three now depend on ^0.4.0, and pnpm-lock.yaml resolves a single copy.

Behaviour that moves

gripsShank's tolerance became a thousandth of an inch in tool-support 0.3.1,
up from a float artifact's last bit, because four Kennametal collets were
refusing the shank they are sold for. A shank within a thousandth of a collet's
stated size now matches it — a 9.5 mm shank fits a 3/8" collet.
packages/catalog-data/src/toolholding.test.ts pinned only the float case and
now pins both sides of the boundary.

tool-support 0.4.0 is additive over 0.3.1: two new entry points, export and
export/fusion. Nothing existing changed shape.

Not in this PR

@toolpath/api stays at 0.4.1 against 0.6.0 published. That is two minors on a
0.x package and moves computed datasheet values, so it wants its own change
and its own testing.

Validation

pnpm check passes — style, lint, build, types, and 291 tests across six
packages. pnpm-lock.yaml carries one @toolpath/tool-support entry, and every
app and sibling resolves to tool-support@0.4.0.

`@toolpath/app-support` 0.1.3 depends on `@toolpath/tool-support` `^0.3.0` and
`@toolpath/tool-drawing` 1.0.0 and `@toolpath/tool-scraper` 3.0.0 both depend
on `^0.3.1`, while the workspace pinned `tool-support` itself at 0.3.0. A `0.x`
caret does not span a minor, so no single version satisfied all four and the
install carried two copies — the drawing and the scraper computing a stickout
against one `tool-support` while the applications read another.

The three are at 0.1.4, 1.0.1 and 3.0.1, each depending on `^0.4.0`, and
`tool-support` is 0.4.0 here. `pnpm-lock.yaml` now resolves one copy.

`gripsShank`'s tolerance is a thousandth of an inch as of `tool-support` 0.3.1,
where it had been a float artifact's last bit, so a 9.5 mm shank is within a
3/8" collet's size. `toolholding.test.ts` pins both sides of that boundary
rather than only the float below it.

`@toolpath/api` stays at 0.4.1. Reaching 0.6.0 crosses two minors on a `0.x`
package and moves datasheet values, which is its own change.
@JustinSGray
JustinSGray merged commit 59b268b into main Sep 12, 2026
1 check passed
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