Skip to content
This repository was archived by the owner on Aug 7, 2021. It is now read-only.

NS 6.0 RC - Webpack crash w/ JS plugins #983

Closed
NathanaelA opened this issue Jul 12, 2019 · 4 comments
Closed

NS 6.0 RC - Webpack crash w/ JS plugins #983

NathanaelA opened this issue Jul 12, 2019 · 4 comments
Labels

Comments

@NathanaelA
Copy link

Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):

  • CLI: 6.0.0-2019-07-12-114039-13633
  • Cross-platform modules: 6.0.1
  • Android Runtime: 6.0.0
  • Plugin(s): added a included dummy plugin.
  • Node.js: 10.15.3
  • nativescript-dev-webpack": "1.0.0"
    also tried
  • "nativescript-dev-webpack": "^1.0.0-next-2019-07-04-112332-01"

Please note; this is as stock as possible -- I did the following:

tns create demo --js
cd demo
tns migrate
tns plugin add ../src
<edit main-page.json to add the require to add the plugin>
tns buld android
  • [] Attached is the complete test project, including package/webpack... However, other than one minor change (to the main-page to reference the plugin) and a tns plugin add ../src everything should be 100% stock.

Describe the bug

ERROR in /home/nathanael/projects/NativeScript/repos/test-plugin/src/test.js
Module not found: Error: Can't resolve 'tns-core-modules/file-system' in '/home/nathanael/projects/NativeScript/repos/test-plugin/src'
 @ /home/nathanael/projects/NativeScript/repos/test-plugin/src/test.js 1:11-50
 @ ./main-page.js
 @ . sync (?<!App_Resources.*).(xml|css|js|(?<!d.)ts|scss)$
 @ ./app.js
Webpack compilation complete.
Executing webpack failed with exit code 2.

To Reproduce
tns build android (or tns run android)

Expected behavior
Works. 😀

Sample project
Attached.

Additional context
This is on Linux. I have not tested this on Windows or Mac. Appears though to be a webpack issue with symlinked plugins.

test-plugin.zip

More information
This appears to be a symlink issue -- if I delete the symlink out of the node_modules folder, and then COPY the plugins "src" folder into the demo node_modules folder (and rename src back to the proper name); then building actually works.

@DimitarTachev
Copy link
Contributor

Hi @NathanaelA,

Thanks for investigating that!

The resolve property of the JavaScript Webpack config was not properly configured for symlinked packages and the Webpack compilation was not searching fornode_modules in the app dir when a symlink is followed.

I've opened a pull request with the proper resolve configuration. You could give it a try by applying the same changes to your local webpack.config.js.

@NathanaelA
Copy link
Author

@DimitarTachev - Awesome; that fixes the demo project... I'll be trying with a couple real plugins tomorrow. :D

@rosen-vladimirov
Copy link
Contributor

Hey @NathanaelA ,
Did you have time to give it a try? Can we mark this issue as resolved?

@NathanaelA
Copy link
Author

Yes, v1.01 I believe fixes the issue. I'll close this unless I run into another one that breaks...

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

3 participants