fix(ui)!: remove squash merge committer trailer admin option #11096

Merged
0ko merged 2 commits from mahlzahn/remove_co_committer_trailer into forgejo 2026-02-07 12:58:29 +01:00 AGit
Member

fix(ui)!: Remove the instance configuration option repository.pull-request.ADD_CO_COMMITTER_TRAILERS (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were Co-authored-by: and Co-committed-by: . Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, Co-committed-by: is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in #11097.

Closes: #11097
Closes: Codeberg/Community#2030

Documentation

Release notes

  • This change will be noticed by a Forgejo user or admin (feature, bug fix, performance, etc.). I suggest to include a release note for this change.
  • This change is not visible to a Forgejo user or admin (refactor, dependency upgrade, etc.). I think there is no need to add a release note for this change.

Release notes

  • Breaking bug fixes
    • PR: fix(ui)!: Remove the instance configuration option repository.pull-request.ADD_CO_COMMITTER_TRAILERS (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were Co-authored-by: and Co-committed-by: . Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, Co-committed-by: is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in #11097.
fix(ui)!: Remove the instance configuration option `repository.pull-request.ADD_CO_COMMITTER_TRAILERS` (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were `Co-authored-by: ` and `Co-committed-by: `. Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, `Co-committed-by: ` is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in [#11097](https://codeberg.org/forgejo/forgejo/issues/11097). Closes: #11097 Closes: Codeberg/Community#2030 ### Documentation - [ ] I created a pull request [to the documentation](https://codeberg.org/forgejo/docs) to explain to Forgejo users how to use this change. - the documentation needs the update here: https://codeberg.org/forgejo/docs/src/commit/69ad143061b6bff18b13eb6b9bef2c1ed5c0f06e/docs/admin/config-cheat-sheet.md?display=source#L127 ### Release notes - [x] This change will be noticed by a Forgejo user or admin (feature, bug fix, performance, etc.). I suggest to include a release note for this change. - [ ] This change is not visible to a Forgejo user or admin (refactor, dependency upgrade, etc.). I think there is no need to add a release note for this change. <!--start release-notes-assistant--> ## Release notes <!--URL:https://codeberg.org/forgejo/forgejo--> - Breaking bug fixes - [PR](https://codeberg.org/forgejo/forgejo/pulls/11096): <!--number 11096 --><!--line 0 --><!--description Zml4KHVpKSE6IFJlbW92ZSB0aGUgaW5zdGFuY2UgY29uZmlndXJhdGlvbiBvcHRpb24gYHJlcG9zaXRvcnkucHVsbC1yZXF1ZXN0LkFERF9DT19DT01NSVRURVJfVFJBSUxFUlNgICh3YXMgZW5hYmxlZCBieSBkZWZhdWx0KS4gSXQgd2FzIHJlc3BvbnNpYmxlIGZvciBhZGRpdGlvbiBvZiB1bmV4cGVjdGVkIHRyYWlsZXJzIHRvIGNvbW1pdCBtZXNzYWdlcyBpbiBzcXVhc2ggbWVyZ2VzLiBUaGVzZSB0cmFpbGVycyB3ZXJlIGBDby1hdXRob3JlZC1ieTogYCBhbmQgYENvLWNvbW1pdHRlZC1ieTogYC4gQm90aCB1c2VkIHRoZSBwdWxsIHJlcXVlc3QgYXV0aG9yIGFzIHZhbHVlLCB3aG8gaXMgYWxzbyBhc3NpZ25lZCBhcyB0aGUgYXV0aG9yIG9mIHRoZSBzcXVhc2ggbWVyZ2UgY29tbWl0LCB3aGljaCB0aGV5IHdlcmUganVzdCByZXBlYXRpbmcuIEZ1cnRoZXJtb3JlLCBgQ28tY29tbWl0dGVkLWJ5OiBgIGlzIGFuIHVuY29tbW9uIGNvbW1pdCB0cmFpbGVyLCBhbmQgdGhlcmUgaXMgb25seSBvbmUgY29tbWl0dGVyIGZvciBhIGNvbW1pdC4gVGhlIHRyYWlsZXJzIHdlcmUgYmVpbmcgYWRkZWQgYnkgRm9yZ2VqbyB3aGlsZSBwZXJmb3JtaW5nIHRoZSBtZXJnZSwgYnlwYXNzaW5nIHVzZXIgaW5wdXQgaW4gdGhlIFVJIGFuZCB3ZXJlbid0IHNob3duIGluIGl0LiBTZWUgZnVydGhlciBkZXNjcmlwdGlvbiBhbmQgbW9yZSBleGFtcGxlcyBpbiBbIzExMDk3XShodHRwczovL2NvZGViZXJnLm9yZy9mb3JnZWpvL2Zvcmdlam8vaXNzdWVzLzExMDk3KS4=-->fix(ui)!: Remove the instance configuration option `repository.pull-request.ADD_CO_COMMITTER_TRAILERS` (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were `Co-authored-by: ` and `Co-committed-by: `. Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, `Co-committed-by: ` is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in [#11097](https://codeberg.org/forgejo/forgejo/issues/11097).<!--description--> <!--end release-notes-assistant-->
mahlzahn changed title from fix(ui)!: remove squash merge committer trailer admin option to WIP: fix(ui)!: remove squash merge committer trailer admin option 2026-01-29 15:44:11 +01:00
mahlzahn force-pushed mahlzahn/remove_co_committer_trailer from dd8508a505
Some checks failed
testing / frontend-checks (pull_request) Successful in 52s
testing / backend-checks (pull_request) Failing after 1m30s
testing / test-sqlite (pull_request) Has been skipped
testing / test-e2e (pull_request) Has been skipped
testing / test-mysql (pull_request) Has been skipped
testing / test-unit (pull_request) Has been skipped
testing / test-pgsql (pull_request) Has been skipped
testing / test-remote-cacher (redis) (pull_request) Has been skipped
testing / test-remote-cacher (garnet) (pull_request) Has been skipped
testing / test-remote-cacher (valkey) (pull_request) Has been skipped
testing / test-remote-cacher (redict) (pull_request) Has been skipped
testing / security-check (pull_request) Has been skipped
issue-labels / release-notes (pull_request_target) Has been skipped
requirements / merge-conditions (pull_request) Failing after 1s
to f7e9b50d34
All checks were successful
testing / frontend-checks (pull_request) Successful in 53s
testing / backend-checks (pull_request) Successful in 2m48s
testing / test-unit (pull_request) Successful in 4m8s
testing / test-remote-cacher (garnet) (pull_request) Successful in 1m18s
testing / test-remote-cacher (redict) (pull_request) Successful in 1m18s
testing / test-remote-cacher (redis) (pull_request) Successful in 1m19s
testing / test-remote-cacher (valkey) (pull_request) Successful in 1m19s
testing / test-e2e (pull_request) Successful in 17m23s
testing / test-mysql (pull_request) Successful in 20m51s
testing / test-sqlite (pull_request) Successful in 24m56s
testing / test-pgsql (pull_request) Successful in 28m10s
testing / security-check (pull_request) Successful in 43s
issue-labels / cascade (pull_request_target) Has been skipped
issue-labels / backporting (pull_request_target) Has been skipped
requirements / merge-conditions (pull_request) Successful in 1s
issue-labels / release-notes (pull_request_target) Successful in 51s
2026-01-29 16:13:44 +01:00
Compare
Where does that come from? The following is a preview of the release notes for this pull request, as they will appear in the upcoming release. They are derived from the content of the `release-notes/11096.md` file, if it exists, or the title of the pull request. They were also added at the bottom of the description of this pull request for easier reference.

This message and the release notes originate from a call to the release-notes-assistant.

@@ -16,2 +16,10 @@
 
 The content of the `release-notes/<pull request number>.md` file will serve as the basis for the release notes. If the file does not exist, the title of the pull request will be used instead.
+
+<!--start release-notes-assistant-->
+
+## Release notes
+<!--URL:https://codeberg.org/forgejo/forgejo-->
+- Breaking bug fixes
+  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11096): <!--number 11096 --><!--line 0 --><!--description Zml4KHVpKSE6IHJlbW92ZSBzcXVhc2ggbWVyZ2UgY29tbWl0dGVyIHRyYWlsZXIgYWRtaW4gb3B0aW9u-->fix(ui)!: remove squash merge committer trailer admin option<!--description-->
+<!--end release-notes-assistant-->

Release notes

  • Breaking bug fixes
    • PR: fix(ui)!: remove squash merge committer trailer admin option
<details> <summary>Where does that come from?</summary> The following is a preview of the release notes for this pull request, as they will appear in the upcoming release. They are derived from the content of the `release-notes/11096.md` file, if it exists, or the title of the pull request. They were also added at the bottom of the description of this pull request for easier reference. This message and the release notes originate from a call to the [release-notes-assistant](https://code.forgejo.org/forgejo/release-notes-assistant). ```diff @@ -16,2 +16,10 @@ The content of the `release-notes/<pull request number>.md` file will serve as the basis for the release notes. If the file does not exist, the title of the pull request will be used instead. + +<!--start release-notes-assistant--> + +## Release notes +<!--URL:https://codeberg.org/forgejo/forgejo--> +- Breaking bug fixes + - [PR](https://codeberg.org/forgejo/forgejo/pulls/11096): <!--number 11096 --><!--line 0 --><!--description Zml4KHVpKSE6IHJlbW92ZSBzcXVhc2ggbWVyZ2UgY29tbWl0dGVyIHRyYWlsZXIgYWRtaW4gb3B0aW9u-->fix(ui)!: remove squash merge committer trailer admin option<!--description--> +<!--end release-notes-assistant--> ``` </details> <!--start release-notes-assistant--> ## Release notes <!--URL:https://codeberg.org/forgejo/forgejo--> - Breaking bug fixes - [PR](https://codeberg.org/forgejo/forgejo/pulls/11096): <!--number 11096 --><!--line 0 --><!--description Zml4KHVpKSE6IHJlbW92ZSBzcXVhc2ggbWVyZ2UgY29tbWl0dGVyIHRyYWlsZXIgYWRtaW4gb3B0aW9u-->fix(ui)!: remove squash merge committer trailer admin option<!--description--> <!--end release-notes-assistant-->
0ko approved these changes 2026-02-01 19:48:24 +01:00
0ko left a comment
Owner

Why WIP?

I agree with reasoning in #11097. The way this is implemented makes no sense:

  • obscure global option
  • can't be overridden by user, even though the proper squash trailers are provided to user through the template from GetSquashMergeCommitMessages, still leaving enough ways to screw up the commit message

I don't have much expertise in Git trailers so it would be important that someone else with merge permissions also approves this before merging.

Since it will be in release notes, and in a breaking section, you may want to add well visible detailed description to either a release-notes/pr.md file or link to the reasoning in the issue at the top of the PR.

Why WIP? I agree with reasoning in https://codeberg.org/forgejo/forgejo/issues/11097. The way this is implemented makes no sense: - obscure global option - can't be overridden by user, even though the proper squash trailers are provided to user through the template from `GetSquashMergeCommitMessages`, still leaving enough ways to screw up the commit message I don't have much expertise in Git trailers so it would be important that someone else with merge permissions also approves this before merging. Since it will be in release notes, and in a breaking section, you may want to add well visible detailed description to either a `release-notes/pr.md` file or link to the reasoning in the issue at the top of the PR.
Author
Member

@0ko wrote in #11096 (comment):

Since it will be in release notes, and in a breaking section, you may want to add well visible detailed description to either a release-notes/pr.md file or link to the reasoning in the issue at the top of the PR.

What do you think about the following to add as release-notes/11096.md?

fix(ui)!: Remove the opaque global admin option repository.pull-request.ADD_CO_COMMITTER_TRAILERS, which was enabled by default. It was responsible for unnecessary and unerasable commit trailers for commits from squash merges. These trailers were Co-authored-by and Co-committed-by, both added with the pull-request author as value, who is already assigned as the author of the squash merge commit. Thus, the Co-authored-by trailer only repeated the commit author. Furthermore, Co-committed-by is an uncommon commit trailer, and there is only one committer for a commit. See further description and more examples in #11097.

@0ko wrote in https://codeberg.org/forgejo/forgejo/pulls/11096#issuecomment-10298148: > Since it will be in release notes, and in a breaking section, you may want to add well visible detailed description to either a `release-notes/pr.md` file or link to the reasoning in the issue at the top of the PR. What do you think about the following to add as `release-notes/11096.md`? > fix(ui)!: Remove the opaque global admin option `repository.pull-request.ADD_CO_COMMITTER_TRAILERS`, which was enabled by default. It was responsible for unnecessary and unerasable commit trailers for commits from squash merges. These trailers were `Co-authored-by` and `Co-committed-by`, both added with the pull-request author as value, who is already assigned as the author of the squash merge commit. Thus, the `Co-authored-by` trailer only repeated the commit author. Furthermore, `Co-committed-by` is an uncommon commit trailer, and there is only one committer for a commit. See further description and more examples in [#11097](https://codeberg.org/forgejo/forgejo/issues/11097).
Owner

Looks good. Applied a few fixes, improvements, shrunk a bit and added the part explaining how it is related to UI.

fix(ui)!: Remove the instance configuration option repository.pull-request.ADD_CO_COMMITTER_TRAILERS (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were Co-authored-by: and Co-committed-by: . Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, Co-committed-by: is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in #11097.

Looks good. Applied a few fixes, improvements, shrunk a bit and added the part explaining how it is related to UI. > fix(ui)!: Remove the instance configuration option `repository.pull-request.ADD_CO_COMMITTER_TRAILERS` (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were `Co-authored-by: ` and `Co-committed-by: `. Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, `Co-committed-by: ` is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in [#11097](https://codeberg.org/forgejo/forgejo/issues/11097).
chore: add release note for unnecessary commit trailer removal
All checks were successful
testing / frontend-checks (pull_request) Successful in 51s
requirements / merge-conditions (pull_request) Successful in 1s
issue-labels / release-notes (pull_request_target) Successful in 56s
testing / backend-checks (pull_request) Successful in 4m8s
Integration tests for the release process / release-simulation (pull_request) Successful in 5m24s
testing / test-unit (pull_request) Successful in 5m10s
testing / test-remote-cacher (garnet) (pull_request) Successful in 1m21s
testing / test-remote-cacher (redis) (pull_request) Successful in 1m23s
testing / test-remote-cacher (valkey) (pull_request) Successful in 1m24s
testing / test-remote-cacher (redict) (pull_request) Successful in 1m23s
testing / test-e2e (pull_request) Successful in 19m1s
testing / test-mysql (pull_request) Successful in 22m38s
testing / test-sqlite (pull_request) Successful in 29m44s
testing / test-pgsql (pull_request) Successful in 33m54s
testing / security-check (pull_request) Successful in 1m57s
issue-labels / backporting (pull_request_target) Has been skipped
milestone / set (pull_request_target) Successful in 3s
69f186a0cb
Co-authored-by: 0ko <0ko@noreply.codeberg.org>
Where does that come from? The following is a preview of the release notes for this pull request, as they will appear in the upcoming release. They are derived from the content of the `release-notes/11096.md` file, if it exists, or the title of the pull request. They were also added at the bottom of the description of this pull request for easier reference.

This message and the release notes originate from a call to the release-notes-assistant.

@@ -19,4 +19,4 @@
 <!--URL:https://codeberg.org/forgejo/forgejo-->
 - Breaking bug fixes
-  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11096): <!--number 11096 --><!--line 0 --><!--description Zml4KHVpKSE6IHJlbW92ZSBzcXVhc2ggbWVyZ2UgY29tbWl0dGVyIHRyYWlsZXIgYWRtaW4gb3B0aW9u-->fix(ui)!: remove squash merge committer trailer admin option<!--description-->
+  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11096): <!--number 11096 --><!--line 0 --><!--description Zml4KHVpKSE6IFJlbW92ZSB0aGUgaW5zdGFuY2UgY29uZmlndXJhdGlvbiBvcHRpb24gYHJlcG9zaXRvcnkucHVsbC1yZXF1ZXN0LkFERF9DT19DT01NSVRURVJfVFJBSUxFUlNgICh3YXMgZW5hYmxlZCBieSBkZWZhdWx0KS4gSXQgd2FzIHJlc3BvbnNpYmxlIGZvciBhZGRpdGlvbiBvZiB1bmV4cGVjdGVkIHRyYWlsZXJzIHRvIGNvbW1pdCBtZXNzYWdlcyBpbiBzcXVhc2ggbWVyZ2VzLiBUaGVzZSB0cmFpbGVycyB3ZXJlIGBDby1hdXRob3JlZC1ieTogYCBhbmQgYENvLWNvbW1pdHRlZC1ieTogYC4gQm90aCB1c2VkIHRoZSBwdWxsIHJlcXVlc3QgYXV0aG9yIGFzIHZhbHVlLCB3aG8gaXMgYWxzbyBhc3NpZ25lZCBhcyB0aGUgYXV0aG9yIG9mIHRoZSBzcXVhc2ggbWVyZ2UgY29tbWl0LCB3aGljaCB0aGV5IHdlcmUganVzdCByZXBlYXRpbmcuIEZ1cnRoZXJtb3JlLCBgQ28tY29tbWl0dGVkLWJ5OiBgIGlzIGFuIHVuY29tbW9uIGNvbW1pdCB0cmFpbGVyLCBhbmQgdGhlcmUgaXMgb25seSBvbmUgY29tbWl0dGVyIGZvciBhIGNvbW1pdC4gVGhlIHRyYWlsZXJzIHdlcmUgYmVpbmcgYWRkZWQgYnkgRm9yZ2VqbyB3aGlsZSBwZXJmb3JtaW5nIHRoZSBtZXJnZSwgYnlwYXNzaW5nIHVzZXIgaW5wdXQgaW4gdGhlIFVJIGFuZCB3ZXJlbid0IHNob3duIGluIGl0LiBTZWUgZnVydGhlciBkZXNjcmlwdGlvbiBhbmQgbW9yZSBleGFtcGxlcyBpbiBbIzExMDk3XShodHRwczovL2NvZGViZXJnLm9yZy9mb3JnZWpvL2Zvcmdlam8vaXNzdWVzLzExMDk3KS4=-->fix(ui)!: Remove the instance configuration option `repository.pull-request.ADD_CO_COMMITTER_TRAILERS` (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were `Co-authored-by: ` and `Co-committed-by: `. Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, `Co-committed-by: ` is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in [#11097](https://codeberg.org/forgejo/forgejo/issues/11097).<!--description-->
 <!--end release-notes-assistant-->

Release notes

  • Breaking bug fixes
    • PR: fix(ui)!: Remove the instance configuration option repository.pull-request.ADD_CO_COMMITTER_TRAILERS (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were Co-authored-by: and Co-committed-by: . Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, Co-committed-by: is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in #11097.
<details> <summary>Where does that come from?</summary> The following is a preview of the release notes for this pull request, as they will appear in the upcoming release. They are derived from the content of the `release-notes/11096.md` file, if it exists, or the title of the pull request. They were also added at the bottom of the description of this pull request for easier reference. This message and the release notes originate from a call to the [release-notes-assistant](https://code.forgejo.org/forgejo/release-notes-assistant). ```diff @@ -19,4 +19,4 @@ <!--URL:https://codeberg.org/forgejo/forgejo--> - Breaking bug fixes - - [PR](https://codeberg.org/forgejo/forgejo/pulls/11096): <!--number 11096 --><!--line 0 --><!--description Zml4KHVpKSE6IHJlbW92ZSBzcXVhc2ggbWVyZ2UgY29tbWl0dGVyIHRyYWlsZXIgYWRtaW4gb3B0aW9u-->fix(ui)!: remove squash merge committer trailer admin option<!--description--> + - [PR](https://codeberg.org/forgejo/forgejo/pulls/11096): <!--number 11096 --><!--line 0 --><!--description Zml4KHVpKSE6IFJlbW92ZSB0aGUgaW5zdGFuY2UgY29uZmlndXJhdGlvbiBvcHRpb24gYHJlcG9zaXRvcnkucHVsbC1yZXF1ZXN0LkFERF9DT19DT01NSVRURVJfVFJBSUxFUlNgICh3YXMgZW5hYmxlZCBieSBkZWZhdWx0KS4gSXQgd2FzIHJlc3BvbnNpYmxlIGZvciBhZGRpdGlvbiBvZiB1bmV4cGVjdGVkIHRyYWlsZXJzIHRvIGNvbW1pdCBtZXNzYWdlcyBpbiBzcXVhc2ggbWVyZ2VzLiBUaGVzZSB0cmFpbGVycyB3ZXJlIGBDby1hdXRob3JlZC1ieTogYCBhbmQgYENvLWNvbW1pdHRlZC1ieTogYC4gQm90aCB1c2VkIHRoZSBwdWxsIHJlcXVlc3QgYXV0aG9yIGFzIHZhbHVlLCB3aG8gaXMgYWxzbyBhc3NpZ25lZCBhcyB0aGUgYXV0aG9yIG9mIHRoZSBzcXVhc2ggbWVyZ2UgY29tbWl0LCB3aGljaCB0aGV5IHdlcmUganVzdCByZXBlYXRpbmcuIEZ1cnRoZXJtb3JlLCBgQ28tY29tbWl0dGVkLWJ5OiBgIGlzIGFuIHVuY29tbW9uIGNvbW1pdCB0cmFpbGVyLCBhbmQgdGhlcmUgaXMgb25seSBvbmUgY29tbWl0dGVyIGZvciBhIGNvbW1pdC4gVGhlIHRyYWlsZXJzIHdlcmUgYmVpbmcgYWRkZWQgYnkgRm9yZ2VqbyB3aGlsZSBwZXJmb3JtaW5nIHRoZSBtZXJnZSwgYnlwYXNzaW5nIHVzZXIgaW5wdXQgaW4gdGhlIFVJIGFuZCB3ZXJlbid0IHNob3duIGluIGl0LiBTZWUgZnVydGhlciBkZXNjcmlwdGlvbiBhbmQgbW9yZSBleGFtcGxlcyBpbiBbIzExMDk3XShodHRwczovL2NvZGViZXJnLm9yZy9mb3JnZWpvL2Zvcmdlam8vaXNzdWVzLzExMDk3KS4=-->fix(ui)!: Remove the instance configuration option `repository.pull-request.ADD_CO_COMMITTER_TRAILERS` (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were `Co-authored-by: ` and `Co-committed-by: `. Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, `Co-committed-by: ` is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in [#11097](https://codeberg.org/forgejo/forgejo/issues/11097).<!--description--> <!--end release-notes-assistant--> ``` </details> <!--start release-notes-assistant--> ## Release notes <!--URL:https://codeberg.org/forgejo/forgejo--> - Breaking bug fixes - [PR](https://codeberg.org/forgejo/forgejo/pulls/11096): <!--number 11096 --><!--line 0 --><!--description Zml4KHVpKSE6IFJlbW92ZSB0aGUgaW5zdGFuY2UgY29uZmlndXJhdGlvbiBvcHRpb24gYHJlcG9zaXRvcnkucHVsbC1yZXF1ZXN0LkFERF9DT19DT01NSVRURVJfVFJBSUxFUlNgICh3YXMgZW5hYmxlZCBieSBkZWZhdWx0KS4gSXQgd2FzIHJlc3BvbnNpYmxlIGZvciBhZGRpdGlvbiBvZiB1bmV4cGVjdGVkIHRyYWlsZXJzIHRvIGNvbW1pdCBtZXNzYWdlcyBpbiBzcXVhc2ggbWVyZ2VzLiBUaGVzZSB0cmFpbGVycyB3ZXJlIGBDby1hdXRob3JlZC1ieTogYCBhbmQgYENvLWNvbW1pdHRlZC1ieTogYC4gQm90aCB1c2VkIHRoZSBwdWxsIHJlcXVlc3QgYXV0aG9yIGFzIHZhbHVlLCB3aG8gaXMgYWxzbyBhc3NpZ25lZCBhcyB0aGUgYXV0aG9yIG9mIHRoZSBzcXVhc2ggbWVyZ2UgY29tbWl0LCB3aGljaCB0aGV5IHdlcmUganVzdCByZXBlYXRpbmcuIEZ1cnRoZXJtb3JlLCBgQ28tY29tbWl0dGVkLWJ5OiBgIGlzIGFuIHVuY29tbW9uIGNvbW1pdCB0cmFpbGVyLCBhbmQgdGhlcmUgaXMgb25seSBvbmUgY29tbWl0dGVyIGZvciBhIGNvbW1pdC4gVGhlIHRyYWlsZXJzIHdlcmUgYmVpbmcgYWRkZWQgYnkgRm9yZ2VqbyB3aGlsZSBwZXJmb3JtaW5nIHRoZSBtZXJnZSwgYnlwYXNzaW5nIHVzZXIgaW5wdXQgaW4gdGhlIFVJIGFuZCB3ZXJlbid0IHNob3duIGluIGl0LiBTZWUgZnVydGhlciBkZXNjcmlwdGlvbiBhbmQgbW9yZSBleGFtcGxlcyBpbiBbIzExMDk3XShodHRwczovL2NvZGViZXJnLm9yZy9mb3JnZWpvL2Zvcmdlam8vaXNzdWVzLzExMDk3KS4=-->fix(ui)!: Remove the instance configuration option `repository.pull-request.ADD_CO_COMMITTER_TRAILERS` (was enabled by default). It was responsible for addition of unexpected trailers to commit messages in squash merges. These trailers were `Co-authored-by: ` and `Co-committed-by: `. Both used the pull request author as value, who is also assigned as the author of the squash merge commit, which they were just repeating. Furthermore, `Co-committed-by: ` is an uncommon commit trailer, and there is only one committer for a commit. The trailers were being added by Forgejo while performing the merge, bypassing user input in the UI and weren't shown in it. See further description and more examples in [#11097](https://codeberg.org/forgejo/forgejo/issues/11097).<!--description--> <!--end release-notes-assistant-->
mahlzahn changed title from WIP: fix(ui)!: remove squash merge committer trailer admin option to fix(ui)!: remove squash merge committer trailer admin option 2026-02-05 16:24:48 +01:00
Owner

It was introduced in https://github.com/go-gitea/gitea/pull/11712, and the best guess this information could be used to infer some extra information w.r.t. security - but as your argumentation goes in forgejo/forgejo#11097 there's seems to be little value in the current implementation and quite likely even is buggy. Also in favor of removing it.

It was introduced in https://github.com/go-gitea/gitea/pull/11712, and the best guess this information could be used to infer some extra information w.r.t. security - but as your argumentation goes in forgejo/forgejo#11097 there's seems to be little value in the current implementation and quite likely even is buggy. Also in favor of removing it.
Gusted approved these changes 2026-02-07 02:06:23 +01:00
0ko merged commit 70865730e6 into forgejo 2026-02-07 12:58:29 +01:00
Sign in to join this conversation.
No reviewers
No labels
arch
riscv64
backport/v1.19
backport/v1.20
backport/v1.21/forgejo
backport/v10.0/forgejo
backport/v11.0/forgejo
backport/v12.0/forgejo
backport/v13.0/forgejo
backport/v14.0/forgejo
backport/v7.0/forgejo
backport/v8.0/forgejo
backport/v9.0/forgejo
breaking
bug
bug
confirmed
bug
duplicate
bug
needs-more-info
bug
new-report
bug
reported-upstream
code/actions
code/api
code/auth
code/auth/faidp
code/auth/farp
code/email
code/federation
code/git
code/migrations
code/packages
code/wiki
database
MySQL
database
PostgreSQL
database
SQLite
dependency-upgrade
dependency
certmagic
dependency
chart.js
dependency
Chi
dependency
Chroma
dependency
citation.js
dependency
codespell
dependency
css-loader
dependency
devcontainers
dependency
dropzone
dependency
editorconfig-checker
dependency
elasticsearch
dependency
enmime
dependency
F3
dependency
ForgeFed
dependency
garage
dependency
Git
dependency
git-backporting
dependency
Gitea
dependency
gitignore
dependency
go-ap
dependency
go-enry
dependency
go-gitlab
dependency
Go-org
dependency
go-rpmutils
dependency
go-sql-driver mysql
dependency
go-swagger
dependency
go-version
dependency
go-webauthn
dependency
gocron
dependency
Golang
dependency
goldmark
dependency
goquery
dependency
Goth
dependency
grpc-go
dependency
happy-dom
dependency
Helm
dependency
image-spec
dependency
jsonschema
dependency
KaTeX
dependency
lint
dependency
MariaDB
dependency
Mermaid
dependency
minio-go
dependency
misspell
dependency
Monaco
dependency
PDFobject
dependency
playwright
dependency
postcss
dependency
postcss-plugins
dependency
pprof
dependency
prometheus client_golang
dependency
protobuf
dependency
relative-time-element
dependency
renovate
dependency
reply
dependency
ssh
dependency
swagger-ui
dependency
tailwind
dependency
temporal-polyfill
dependency
terminal-to-html
dependency
tests-only
dependency
text-expander-element
dependency
urfave
dependency
vfsgen
dependency
vite
dependency
Woodpecker CI
dependency
x tools
dependency
XORM
Discussion
duplicate
enhancement/feature
forgejo/accessibility
forgejo/branding
forgejo/ci
forgejo/commit-graph
forgejo/documentation
forgejo/furnace cleanup
forgejo/i18n
forgejo/interop
forgejo/moderation
forgejo/privacy
forgejo/release
forgejo/scaling
forgejo/security
forgejo/ui
Gain
High
Gain
Nice to have
Gain
Undefined
Gain
Very High
good first issue
i18n/backport-stable
impact
large
impact
medium
impact
small
impact
unknown
Incompatible license
issue
closed
issue
do-not-exist-yet
issue
open
manual test
Manually tested during feature freeze
OS
FreeBSD
OS
Linux
OS
macOS
OS
Windows
problem
QA
regression
release blocker
Release Cycle
Feature Freeze
release-blocker
v7.0
release-blocker
v7.0.1
release-blocker
v7.0.2
release-blocker
v7.0.3
release-blocker
v7.0.4
release-blocker
v8.0.0
release-blocker/v9.0.0
run-all-playwright-tests
run-end-to-end-tests
test
manual
test
needed
test
needs-help
test
not-needed
test
present
untested
User research - time-tracker
valuable code
worth a release-note
User research - Accessibility
User research - Blocked
User research - Community
User research - Config (instance)
User research - Errors
User research - Filters
User research - Future backlog
User research - Git workflow
User research - Labels
User research - Moderation
User research - Needs input
User research - Notifications/Dashboard
User research - Rendering
User research - Repo creation
User research - Repo units
User research - Security
User research - Settings (in-app)
No milestone
No project
No assignees
4 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
forgejo/forgejo!11096
No description provided.