googleapis / googleapis/release-please

Trigger project releases from global dependency updates

Open
#1,541 3 comments 2 reactions 0 assignees View on GitHub
priority: p3 type: feature request
Dominant language
TypeScript
Stars
7.5k
Forks
588
Avg merge
12h 16m
Merged PRs (30d)
7

Description

**Is your feature request related to a problem? Please describe.**
A few scenarios in an npm-based monorepo:
- There is a security issue in a transitive dependency. I update the package-lock, but when running release-please, it does not detect that the files in any of my configured packages have changed, so no release is generated.
- There is a security issue in a dependency which I have recorded in my root package.json, which I import in one of my packages. No package files have changed, so release is generated.
- I update one of my build tools marked as a devDependency in my root package.json and it makes my builds 20% smaller. I want to release a new build, but again no release is generated.

**Describe the solution you'd like**
At the very least, it would be great for changes to the package-lock.json to be parsed by the node-workspace plugin so that if a dependency is updated that is used transitively in a package, it is recorded as a change to that package. As far as dependencies in the root package.json, I could see that going in different ways - it could be desirable for changes there to always trigger new versions, though it does potentially mean noise in a situation where it wasn't relevant for a package. Similar deal with dev dependencies - some dev dependencies have relevance on build output, some dont. While a bit clunky, it could be configured on a per-package/per-dependency basis via include/exclude rules of some kind.

**Describe alternatives you've considered**
- Manual release
- Configure additional files to be included for consideration in a release, a la https://github.com/googleapis/release-please/issues/662 (this could aslo be useful if you wanted to include, say, a build configuration file, though including the entire package.json/package-lock.json would not be as fine-grained)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.