Skip to content

Fix workspace gaps: test deps, bunfig, TSX, Windows PATH#2

Merged
arcaputo3 merged 3 commits into
mainfrom
fix-bun-workspace-gaps
Apr 2, 2026
Merged

Fix workspace gaps: test deps, bunfig, TSX, Windows PATH#2
arcaputo3 merged 3 commits into
mainfrom
fix-bun-workspace-gaps

Conversation

@arcaputo3
Copy link
Copy Markdown
Contributor

Summary

  • Fix BunTypeScriptTests dropping test-only npm/tsDeps — now merged as devDependencies with deduplication against outer packages
  • Propagate bunfig.toml to compile, bundle, run, and test workspaces (TypeScript + Scala.js) while actively removing .npmrc from non-install workspaces
  • Add .tsx fallback entrypoints (main.tsx, index.tsx) for React-style projects
  • Make findOnPath respect PATHEXT on Windows (bun.exe, bun.cmd)
  • Fix bunfigFiles to use Task.Input for Mill sandbox-safe workspace root access
  • Use Task.Source for npmRc in BunScalaJSModule for sandbox compliance

Test plan

  • 4 new unit tests: PATHEXT executable candidate generation
  • Integration test: test-only deps land in devDependencies, not dependencies
  • Integration test: bunfig propagates to TS compile workspace, .npmrc removed
  • Integration test: bunfig propagates to Scala.js linked/compile/test workspaces, .npmrc removed
  • Integration test: TSX entrypoint fallback resolves main.tsx
  • All 11 unit tests pass
  • All 20 integration tests pass (12 TS + 8 Scala.js)

🤖 Generated with Claude Code

arcaputo3 and others added 3 commits March 30, 2026 11:25
…indows PATH

- Merge test-side npm/tsDeps into devDependencies (not dependencies) in
  BunTypeScriptTests.npmInstall, matching upstream Mill's test dep handling
- Propagate bunfig.toml and .npmrc into compile, bundle, run, and test
  workspaces on both TypeScript and Scala.js sides
- Add .tsx fallback entrypoints (main.tsx, index.tsx) for React-style projects
- Make findOnPath respect PATHEXT on Windows (bun.exe, bun.cmd)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Unit tests: PATHEXT executable candidate generation (4 cases)
- Integration test: test-only deps land in devDependencies, not dependencies
- Integration test: bunfig.toml propagates to compile workspace
- Integration test: TSX entrypoint fallback (.tsx resolved when no .ts entry)
- Fix bunfigFiles to use Task.Input for sandbox-safe workspace root access

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add removeInstallOnlyConfigs to strip .npmrc from compile/bundle/test
  workspaces after tscCopySources copies it from the source tree
- Deduplicate test devDeps against outer package names to avoid version
  conflicts in the merged package.json
- Use Task.Source for npmRc in BunScalaJSModule for sandbox-safe access
- Add Scala.js bunfig propagation integration test covering linked,
  compile executable, and test workspaces
- Separate typescript-bunfig moduleDir from workspace root to prove
  explicit propagation (not source tree walk)
- Assert is-even stays out of test devDependencies

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@arcaputo3 arcaputo3 merged commit 388c020 into main Apr 2, 2026
2 checks passed
@arcaputo3 arcaputo3 deleted the fix-bun-workspace-gaps branch April 2, 2026 14:35
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