googleapis / googleapis/release-please

In a Monorepo, if a subpackage has changes but not the root package, the PR Title will not be created according to pull-request-title-pattern

Open
#2,386 2 comments 0 reactions 1 assignee Claimed by @chingor13 View on GitHub
priority: p3 type: bug
Dominant language
TypeScript
Stars
7.5k
Forks
588
Avg merge
12h 16m
Merged PRs (30d)
7

Description

#### Environment details

- OS: Sonoma 14.7
- Node.js version: 20.11.1
- npm version: 10.8.2
- `release-please` version: 4

#### Steps to reproduce

1. Have a Monorepo with subpackages
2. Have these settings in release-please-config.json:
```json
{
"include-component-in-tag": true,
"include-v-in-tag": true,
"tag-separator": "@",
"plugins": ["node-workspace", "sentence-case"],
"release-type": "node",
"commit-search-depth": 1,
"group-pull-request-title-pattern": "chore: release ${component} ${version}",
"pull-request-title-pattern": "chore: release ${component} ${version}",
"packages": {
".": {
"packageName": "@packageTeam/root",
"extra-label": "core",
"exclude-paths": [
"packages/package-a",
"packages/package-b",
"packages/package-c",
...
],
"pull-request-title-pattern": "chore: release ${component} ${version}"
},
"packages/package-a": {
"path": "packages/package-a",
"packageName": "@packageTeam/package-a",
"extra-label": "react-components",
"pull-request-title-pattern": "chore: release ${component} ${version}"
},
"packages/package-b": {
"path": "packages/package-b",
"packageName": "@packageTeam/package-b",
"extra-label": "web-components",
"pull-request-title-pattern": "chore: release ${component} ${version}"
},
...
},
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json"
}
```
3. When a release (via release-please-action) is created, and there are changes in the root package as well, everything works fine. I'll get a PR with the requested PR format.

The problem starts when I only have changes in my subpackage, then my PR title will just plainly be "chore: release (#issueNr)"

When release-please reruns, it stumbles and can't find the correct PR to the release, the autorelease: pending tag will not be removed, no release will be created.

Solution, for now, is to manually adjust every Pull Request's title and squash commit message, which is pretty time consuming and error prone.

Can you guys help?

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.