-
-
Notifications
You must be signed in to change notification settings - Fork 349
feat(node): Custom HMR Bundler Runtime & Client #3849
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: module-reloaders
Are you sure you want to change the base?
Conversation
…g edge cases and performance scenarios
|
@ScriptedAlchemyBot review |
…lities - Convert MCP host from TypeScript to JavaScript for simplified runtime - Update webpack config to handle JS modules with Module Federation - Add debug logging and MCP host verification functionality - Create debug log tracking for development workflow - Configure proper build and serve targets for development 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Set config.output.publicPath = 'auto' to fix manifest plugin issue - Host now properly attempts to load remotes via HTTP - Identified root cause: remotes missing @module-federation/runtime-core dependency 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Fix MCP registry to call tool handlers directly instead of using server.request() - Add auto-shutdown after demo completion for better development workflow - Enable successful tool execution for filesystem, database, and git operations - Resolve "Not connected" errors by bypassing network transport layer 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
# Conflicts: # packages/node/src/runtimePlugin.ts # pnpm-lock.yaml
- Simplified HMR to single reloadAll approach, removing backward compatibility - Fixed module-level variable persistence using Next.js internal APIs - Updated _document.js to only check reloadAll query parameter - Updated API endpoint to only support reload-all action - Added comprehensive tests for unified HMR functionality - Verified render counter properly resets after HMR trigger 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Keep current branch version for packages/node/src/runtimePlugin.ts - Keep current branch version for packages/node/src/utils/hot-reload.ts - Use target branch (module-reloaders) version for pnpm-lock.yaml 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Fix FederationRuntimePlugin import and return type - Add missing methods to HMRClient interface and implementation - Resolve duplicate export conflicts - Fix Federation type compatibility issues - Ensure proper function signatures and return values 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Add revalidate function that checks moduleGraphDirty global state. This fixes the modern-js-plugin build that depends on this function. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Description
This pull request introduces significant improvements to the HMR (Hot Module Replacement) debugging system, transitioning from a backend-dependent approach to a flexible, provider-based architecture. It includes refactoring of the runtime state, new update provider options, enhanced force update capabilities, and expanded testing and development scripts.
Refactoring and Architecture Changes:
apps/vm-hotreload/full-demo/basic_debugging/README.md
, apps/vm-hotreload/full-demo/basic_debugging/README.mdR1-R218)createHMRRuntime
to initializecurrentUpdate
,currentUpdateRemovedChunks
, andcurrentUpdateRuntime
with more appropriate default values. (apps/vm-hotreload/full-demo/basic_debugging/hmr-runtime.js
, apps/vm-hotreload/full-demo/basic_debugging/hmr-runtime.jsL618-R620)Enhanced Force Update Capabilities:
apps/vm-hotreload/full-demo/basic_debugging/README.md
, apps/vm-hotreload/full-demo/basic_debugging/README.mdR1-R218)New Examples and Documentation:
apps/vm-hotreload/full-demo/basic_debugging/example-usage.js
, apps/vm-hotreload/full-demo/basic_debugging/example-usage.jsR1-R205)Expanded Development and Testing Scripts:
package.json
scripts to include unit, integration, end-to-end, and HMR client-specific tests, along with sequential and watch modes for testing. (apps/vm-hotreload/full-demo/basic_debugging/package.json
, apps/vm-hotreload/full-demo/basic_debugging/package.jsonL7-R20)Related Issue
Types of changes
Checklist