Skip to content

hatch_build.py: install the interface's and the plugin's dependencies when absent - #4

Merged
echarles merged 2 commits into
mainfrom
fix/hatch-build-installs-every-half
Sep 26, 2026
Merged

echarles merged 2 commits into
mainfrom
fix/hatch-build-installs-every-half

Conversation

@echarles

Copy link
Copy Markdown
Member

make publish-pypi (and any python -m build after a git clean) failed in the interface build: The version of the SWC Wasm plugin you're using might not be compatible with builtin:swc-loader. app/ and plugins/ai-agents/ are packages of their own, not workspace members, so nothing hoists their dependencies; with app/node_modules gone, the interface resolved the rsbuild the workspace hoisted (1.7) instead of the 2.x it declares. The hook now installs each one's dependencies when its node_modules is missing, which is what CI does. Proven from a clean export with app/node_modules wiped: the wheel builds and carries both halves.

Note that a release no longer needs make publish-pypi: pushing the tag is the release (RELEASE.md).

… when absent

They are packages of their own, not workspace members, so nothing hoists
them; after a git clean the interface resolved whatever rsbuild the
workspace hoisted (1.7, with an SWC plugin mismatch: 'The version of the
SWC Wasm plugin you're using might not be compatible') instead of the 2.x
it declares. Installed when node_modules is missing, as CI does. Proven
from a clean export with app/node_modules wiped: the wheel builds and
carries both halves.
Copilot AI lite review requested due to automatic review settings September 26, 2026 03:11

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟢 Approval recommended

No unresolved issues were identified.

Review effort: Lite
Findings: None

What changed in this PR

Updates the Hatch build hook so clean wheel builds install missing dependencies for the standalone interface and AI-agents plugin.

Changes:

  • Installs app/ dependencies when absent.
  • Installs plugins/ai-agents/ dependencies when absent.
  • Preserves the existing JavaScript build flow.
File Description
hatch_build.py Adds conditional dependency installation for the interface and plugin packages.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

…space

plugins/* is in the workspace's globs, so its dependencies are hoisted
and an npm install inside it would redirect to the whole workspace;
only a plain checkout installs it. The interface is never a member.
@echarles
echarles merged commit 764ba08 into main Sep 26, 2026
4 checks 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.

2 participants