googleapis / googleapis/release-please
inline-code @mentions are linkified in default changelog notes
- Dominant language
- TypeScript
- Stars
- 7.5k
- Forks
- 588
- Avg merge
- 12h 16m
- Merged PRs (30d)
- 7
Description
#### Environment details
- OS: Ubuntu 24.04
- Node.js version: v22.22.0
- npm version: 10.x
- `release-please` version: 17.3.0
#### Steps to reproduce
1. Generate release notes using the default changelog path from a commit subject that contains an inline-code mention-like token, for example:
- `` feat: add `@spawn` macro ``
- `` fix: bug in `@unsafe` macro ``
2. Inspect the generated markdown output.
Actual behavior:
- mention-like text inside inline code spans is rewritten into a GitHub user link, e.g.
- `` `[@spawn](https://github.com/spawn)` ``
- `` `[@unsafe](https://github.com/unsafe)` ``
Expected behavior:
- mention-like text inside inline code spans should remain literal inline code:
- `` `@spawn` ``
- `` `@unsafe` ``
Notes:
- This seems to come from the default changelog generation stack used by `release-please` via `conventional-changelog-conventionalcommits`.
- In `conventional-changelog-conventionalcommits/writer-opts.js`, the subject transform rewrites `@user` to `[@user](...)` without distinguishing plain text from inline-code content.
- `release-please` already preserves inline code specially for `<` / `>` escaping in `src/changelog-notes/default.ts`, so it seems reasonable to also preserve inline-code `@...` literally.
cc @MilesCranmer
Contributor guide
Assessment
This issue has not been assessed yet.