Fix: upgrade babel eslint & vue-cli electron dependancies. #299
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.
Hi,
When working with the electron app we noticed ES2020 was not being compiled correctly. Features such as optional chaining were throwing compilation errors as the loader for these files were outdated. This was also the case for files imported from
node_modules
meaning any library that used this modern JS syntax would not compile.To fix this we updated the vue-cli-plugins and noticed that
babel-eslint
is deprecated, so updated this to use@babel/eslint-parser
.This had a side effect of also upgrading webpack to version 5+.
Webpack 5+ no longer polyfills node.js modules, this caused a few errors across the frontend so we added
node-polyfill-webpack-plugin
to ensure these necessary modules were available in the frontend.A side effect of bumping the babel and vue-cli versions were that automated linting occurred when building and serving the electron app blocking compilation. To get around this we added a temporary
.eslintignore
file to discard these complaints for now.TLDR: This PR updates the vue-cli and babel/eslint dependancies so that they are able to compile JS files and modules that use modern ES2020 syntax, aligning with the vue (.vue) file loader.
Let us know if you have any feedback,
Thanks!