GeezerVison is showing github.com — fix(webpack): find ExternalModuleFactoryPlugin where webpack 5.112 moved it by edusperoni · Pull Request #11633 · NativeScript/NativeScript
Conversation
PR Checklist
What is the current behavior?
NativeScriptBuiltinModulesPlugin (#11626) loads webpack/lib/ExternalModuleFactoryPlugin. webpack 5.112 moved that file to webpack/lib/externals/, so on current webpack the config fails to load with Cannot find module 'webpack/lib/ExternalModuleFactoryPlugin'. This is the same kind of move #11547 fixed for WorkerDependency.
What is the new behavior?
The plugin loads webpack/lib/externals/ExternalModuleFactoryPlugin and falls back to the old path, matching the worker loader's approach. The class's constructor and apply(normalModuleFactory) are unchanged between 5.99 and 5.112.
Tested __tests__/plugins/NativeScriptBuiltinModulesPlugin.spec.ts (real ESM and CommonJS compiles) against:
- webpack 5.99.9 (the repo's version): passes.
- webpack 5.112.2, mapped in through a temporary jest config: passes with this change. Without it the suite fails to load.
CI only runs the repo's webpack version, so the 5.112 run was manual. The rest of the webpack suite is unchanged; its 14 failing snapshot tests also fail on main.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
…ved it
webpack 5.112 moved lib/ExternalModuleFactoryPlugin.js to lib/externals/, so loading NativeScriptBuiltinModulesPlugin threw "Cannot find module". Try the new location first and fall back to the old one, as the worker loader does for WorkerDependency.
nx-cloud
Bot
commented
Nov 10, 2026
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
|
View your CI Pipeline Execution ↗ for commit c1eceb0
| Command |
Status |
Duration |
Result |
nx test apps-automated -c=android |
✅ Succeeded |
3m 38s |
View ↗ |
nx run-many --target=test --configuration=ci --... |
✅ Succeeded |
<1s |
View ↗ |
💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗
☁️ Nx Cloud last updated this comment at 2026-11-10 15:24:36 UTC
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
Open in StackBlitz
npm i https://pkg.pr.new/@nativescript/core@11633
npm i https://pkg.pr.new/@nativescript/vite@11633
npm i https://pkg.pr.new/@nativescript/webpack@11633
commit: c1eceb0
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
@edusperoni I have confirmed this change fixes the problem in one of my apps.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Assignees
No one assigned
Milestone
No milestone
Development
Successfully merging this pull request may close these issues.
Uh oh!
There was an error while loading. Please reload this page.
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.