-
Couldn't load subscription status.
- Fork 1.9k
Description
Describe the bug
Hi all, i'm currently using NPM as package manager and working with @cubejs-client/vue3. I noticed that some dependencies are wrongly installed in the vue3 cube package causing unwanted dependencies to be included on the production build / npm package.
Included dependencies in a fresh @cubejs-client/vue3 install:
"dependencies": {
"@cubejs-client/core": "1.3.59",
"@vue/compiler-sfc": "^3.0.11",
"core-js": "^3.6.5",
"flush-promises": "^1.0.2",
"ramda": "^0.27.0",
"vue-loader": "^16.2.0"
},By reviewing source code I realized that only @cubejs-client/core and ramda are needed on the production build.
vue-loader, flush-promises, core-js, @vue/compiler-sfc can be removed since they are not needed neither during development or production build.
To Reproduce
Steps to reproduce the behavior:
- create fresh vue 3 project with
npm create vue@latest - run
npm install @cubejs-client/core @cubejs-client/vue3 - Verify that package-lock.json includes
vue-loadedand all it dependencies (included webpack, see image). Same scenario for all the other dependencies.
Expected behavior
The only two dependencies needed in production are @cubejs-client/core and ramda
Screenshots
Current install (wrong)
Minimally reproducible Cube Schema
Does not apply
Version:
[e.g. 1.3.59]
Additional context
Inclusion of devDependencies in production build is not a good practice, only end user dependencies should be released the npm.
Having this packages may lead to extra (and unneeded) package downloads, heavier bundle sized and decreased performance.