Skip to content

github generated Co-authored-by breaks module versioning #299

@wfscheper

Description

@wfscheper

Describe the bug
Release process in GitHub fails with:

Error: no module foo/bar

--------- found

When merging a commit GitHub will append "Co-authored-by" entries if multiple users contributed to the PR:

release: multiple modules

Modules: foo
Modules: foo/bar

---------

Co-authored-by: github-user <github-user@email>

gotagger is parsing the last module name as

foo/bar

---------

Parsing of footers happens in parseMessageBody, and uses this regex to determine if the current line is a new footer. gotagger just adds following lines to the current footer until we find a new footer or run out of lines. That's the source of the bug.

Looks like git has rules for multi-line values that require leading whitespace (see https://git-scm.com/docs/git-interpret-trailers):

The may be split over multiple lines with each subsequent line starting with at least one whitespace, like the "folding" in RFC 822.

May be worth seeing how git interpret-trailers parses a similar commit message.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions