Skip to content
This repository has been archived by the owner on Aug 22, 2023. It is now read-only.

@oclif/config should be a production dependency #59

Closed
ersinakinci opened this issue Apr 26, 2019 · 4 comments · Fixed by #68
Closed

@oclif/config should be a production dependency #59

ersinakinci opened this issue Apr 26, 2019 · 4 comments · Fixed by #68

Comments

@ersinakinci
Copy link

ersinakinci commented Apr 26, 2019

In https://github.com/oclif/command/blob/master/src/command.ts#L51, @oclif/config is used as part of the run method. So why is it that in package.json, it's not listed as a production dependency? Is it because it's listed as such in the main oclif package here?

The current arrangement breaks monorepo projects whose dependencies are managed by pnpm because of the way each monorepo dependency's dependencies are isolated from each other. If we could move the @oclif/config dependency out of devDependencies and into dependencies, that would be 🔥 🔥 🔥 . It's also more correct since @oclif/config is being used at runtime.

PR: #60

CC: @zkochan

@ersinakinci ersinakinci changed the title Why is @oclif/plugin not a production dependency? Why is @oclif/config not a production dependency? Apr 26, 2019
@ersinakinci ersinakinci changed the title Why is @oclif/config not a production dependency? @oclif/config should be a production dependency Apr 26, 2019
@mrkishi
Copy link

mrkishi commented Jun 8, 2019

Just came across this with netlify-cli. Since @oclif/config is unconditionally imported, it really needs to be either a production or a peer dependency.

@aparajita
Copy link

Tip for all package maintainers: try installing your package with pnpm. It's the quickest way to uncover missing dependencies.

@RasPhilCo
Copy link
Contributor

Added as peerDependency 903785b

@aparajita
Copy link

@RasPhilCo Just curious why it's a peerDependency and not a dependency.

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