Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change dependencies -> peerDependencies #2146

Open
vadjs opened this issue Jun 24, 2024 · 1 comment · May be fixed by #2147
Open

Change dependencies -> peerDependencies #2146

vadjs opened this issue Jun 24, 2024 · 1 comment · May be fixed by #2147
Assignees
Labels
question M-T: User needs support to use the project

Comments

@vadjs
Copy link

vadjs commented Jun 24, 2024

Installation of the package @slack/bolt has next file structure:
node_modules/@slack/bolt/node_modules
Which brings complexity to the application. Also it makes it impossible to override package versions.

Renaming dependencies -> peerDependencies helps to get rid of this problem.

@vadjs vadjs linked a pull request Jun 24, 2024 that will close this issue
2 tasks
@hello-ashleyintech hello-ashleyintech self-assigned this Jun 24, 2024
@hello-ashleyintech hello-ashleyintech added the question M-T: User needs support to use the project label Jun 24, 2024
@hello-ashleyintech
Copy link
Contributor

Hi, @vadjs! Thank you for submitting this and the corresponding PR. 🙇

Admittedly, I'm not seeing the initial value in changing dependencies to peer dependencies - the idea of the dependencies is that we want these listed packages to be run when npm install is run. With peerDependencies, it appears that NPM will not attempt to install peer dependencies when doing npm install. This is because NPM expects these dependencies to be provided by other dependencies.

Since this is a public framework widely available for use, I think the preference would be to enforce the dependencies with the dependencies key rather than peerDependencies. Also, some of the dependencies require pinned or specific versions to ensure compatibility with Bolt JS, which peerDependencies would not enforce as it would support overriding package versions as you mentioned.

With that being said, I would love to get your thoughts on this and see if there's a specific use case I've been missing!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question M-T: User needs support to use the project
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants