fix: prevent panic on gitlab import (releases/issues) #11282

Merged
Gusted merged 15 commits from oliverpool/forgejo:gitlab-tests into forgejo 2026-03-03 21:36:17 +01:00
Member

It is unfortunately all mixed up, because refreshing the data, means breaking the tests. And changing the code means needing fresh data...

I advise looking at the commits in order:

  • tests: ignore some more headers and sort the rest when dumping http responses
  • code: fixed #10234 by requesting the latest issues first (to get the largest IID: it serves as base for re-indexing the merge-requests)
  • tests: created a new repo to replace the disappeared repo, needed for the skip-numbers test

(above changes the response testdata dumps in some way)

  • refreshed the testdata (with the new repo and the new requests)

(below fixes some bugs and some tests, but without impacting the dump)

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.

The decision if the pull request will be shown in the release notes is up to the mergers / release team.

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.

Release notes

  • Bug fixes
    • PR: prevent panic when importing issues from GitLab
    • PR: prevent panic when importing releases with more than 4 release assets from GitLab
    • PR: correct re-mapping of merge-request numbers mentioned in GitLab comments
It is unfortunately all mixed up, because refreshing the data, means breaking the tests. And changing the code means needing fresh data... I advise looking at the commits in order: - tests: ignore some more headers and sort the rest when dumping http responses - code: fixed #10234 by requesting the **latest issues first** (to get the largest IID: it serves as base for re-indexing the merge-requests) - tests: created a new repo to replace the disappeared repo, needed for the skip-numbers test (above changes the response testdata dumps in some way) - **refreshed the testdata** (with the new repo and the new requests) (below fixes some bugs and some tests, but without impacting the dump) - follow-up fixes to get the tests green - including a cherry-pick of https://github.com/go-gitea/gitea/pull/36295 and #11272 ### 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. *The decision if the pull request will be shown in the release notes is up to the mergers / release team.* 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--> - Bug fixes - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyBpc3N1ZXMgZnJvbSBHaXRMYWI=-->prevent panic when importing issues from GitLab<!--description--> - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 1 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyByZWxlYXNlcyB3aXRoIG1vcmUgdGhhbiA0IHJlbGVhc2UgYXNzZXRzIGZyb20gR2l0TGFi-->prevent panic when importing releases with more than 4 release assets from GitLab<!--description--> - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 2 --><!--description Y29ycmVjdCByZS1tYXBwaW5nIG9mIG1lcmdlLXJlcXVlc3QgbnVtYmVycyBtZW50aW9uZWQgaW4gR2l0TGFiIGNvbW1lbnRz-->correct re-mapping of merge-request numbers mentioned in GitLab comments<!--description--> <!--end release-notes-assistant-->
original repo disappeared
disappeared repo was replaced with new repo under forgejo org
gitlab: fix download-repo
All checks were successful
testing / semgrep/ci (pull_request) Successful in 25s
testing / frontend-checks (pull_request) Successful in 1m6s
testing / backend-checks (pull_request) Successful in 3m5s
issue-labels / release-notes (pull_request_target) Has been skipped
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 2s
testing / test-unit (pull_request) Successful in 6m48s
testing / test-remote-cacher (valkey) (pull_request) Successful in 2m11s
testing / test-remote-cacher (garnet) (pull_request) Successful in 2m12s
testing / test-remote-cacher (redict) (pull_request) Successful in 2m12s
testing / test-remote-cacher (redis) (pull_request) Successful in 2m15s
testing / test-e2e (pull_request) Successful in 25m9s
testing / test-mysql (pull_request) Successful in 26m51s
testing / test-sqlite (pull_request) Successful in 32m48s
testing / test-pgsql (pull_request) Successful in 35m49s
testing / security-check (pull_request) Successful in 46s
632e97f94b
oliverpool force-pushed gitlab-tests from 632e97f94b
All checks were successful
testing / semgrep/ci (pull_request) Successful in 25s
testing / frontend-checks (pull_request) Successful in 1m6s
testing / backend-checks (pull_request) Successful in 3m5s
issue-labels / release-notes (pull_request_target) Has been skipped
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 2s
testing / test-unit (pull_request) Successful in 6m48s
testing / test-remote-cacher (valkey) (pull_request) Successful in 2m11s
testing / test-remote-cacher (garnet) (pull_request) Successful in 2m12s
testing / test-remote-cacher (redict) (pull_request) Successful in 2m12s
testing / test-remote-cacher (redis) (pull_request) Successful in 2m15s
testing / test-e2e (pull_request) Successful in 25m9s
testing / test-mysql (pull_request) Successful in 26m51s
testing / test-sqlite (pull_request) Successful in 32m48s
testing / test-pgsql (pull_request) Successful in 35m49s
testing / security-check (pull_request) Successful in 46s
to 6b2e7d46f0
Some checks failed
issue-labels / release-notes (pull_request_target) Has been skipped
requirements / merge-conditions (pull_request) Successful in 2s
testing / semgrep/ci (pull_request) Successful in 16s
testing / frontend-checks (pull_request) Successful in 1m0s
testing / backend-checks (pull_request) Successful in 2m54s
testing / test-unit (pull_request) Successful in 6m48s
testing / test-remote-cacher (valkey) (pull_request) Successful in 2m2s
testing / test-remote-cacher (redis) (pull_request) Successful in 2m6s
testing / test-e2e (pull_request) Has been cancelled
testing / test-remote-cacher (garnet) (pull_request) Has been cancelled
testing / test-remote-cacher (redict) (pull_request) Has been cancelled
testing / test-mysql (pull_request) Has been cancelled
testing / test-pgsql (pull_request) Has been cancelled
testing / test-sqlite (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
2026-02-14 08:13:08 +01:00
Compare
oliverpool force-pushed gitlab-tests from 6b2e7d46f0
Some checks failed
issue-labels / release-notes (pull_request_target) Has been skipped
requirements / merge-conditions (pull_request) Successful in 2s
testing / semgrep/ci (pull_request) Successful in 16s
testing / frontend-checks (pull_request) Successful in 1m0s
testing / backend-checks (pull_request) Successful in 2m54s
testing / test-unit (pull_request) Successful in 6m48s
testing / test-remote-cacher (valkey) (pull_request) Successful in 2m2s
testing / test-remote-cacher (redis) (pull_request) Successful in 2m6s
testing / test-e2e (pull_request) Has been cancelled
testing / test-remote-cacher (garnet) (pull_request) Has been cancelled
testing / test-remote-cacher (redict) (pull_request) Has been cancelled
testing / test-mysql (pull_request) Has been cancelled
testing / test-pgsql (pull_request) Has been cancelled
testing / test-sqlite (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
to df5c202bee
Some checks failed
testing / semgrep/ci (pull_request) Successful in 14s
testing / frontend-checks (pull_request) Successful in 51s
testing / backend-checks (pull_request) Successful in 2m52s
issue-labels / release-notes (pull_request_target) Has been skipped
requirements / merge-conditions (pull_request) Successful in 2s
testing / test-unit (pull_request) Successful in 6m26s
testing / test-remote-cacher (redis) (pull_request) Successful in 2m10s
testing / test-remote-cacher (valkey) (pull_request) Successful in 2m11s
testing / test-remote-cacher (garnet) (pull_request) Successful in 2m12s
testing / test-remote-cacher (redict) (pull_request) Successful in 2m11s
testing / test-e2e (pull_request) Successful in 19m7s
testing / test-mysql (pull_request) Successful in 21m11s
testing / test-sqlite (pull_request) Successful in 26m17s
testing / test-pgsql (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
2026-02-14 08:25:03 +01:00
Compare
oliverpool changed title from WIP: tests: refresh gitlab testdata to fix: prevent panic on gitlab import (releases/issues) 2026-02-14 08:26:37 +01:00
oliverpool force-pushed gitlab-tests from df5c202bee
Some checks failed
testing / semgrep/ci (pull_request) Successful in 14s
testing / frontend-checks (pull_request) Successful in 51s
testing / backend-checks (pull_request) Successful in 2m52s
issue-labels / release-notes (pull_request_target) Has been skipped
requirements / merge-conditions (pull_request) Successful in 2s
testing / test-unit (pull_request) Successful in 6m26s
testing / test-remote-cacher (redis) (pull_request) Successful in 2m10s
testing / test-remote-cacher (valkey) (pull_request) Successful in 2m11s
testing / test-remote-cacher (garnet) (pull_request) Successful in 2m12s
testing / test-remote-cacher (redict) (pull_request) Successful in 2m11s
testing / test-e2e (pull_request) Successful in 19m7s
testing / test-mysql (pull_request) Successful in 21m11s
testing / test-sqlite (pull_request) Successful in 26m17s
testing / test-pgsql (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
to d486d87c95
All checks were successful
testing / semgrep/ci (pull_request) Successful in 14s
testing / frontend-checks (pull_request) Successful in 53s
testing / backend-checks (pull_request) Successful in 2m42s
testing / test-unit (pull_request) Successful in 6m9s
testing / test-remote-cacher (redis) (pull_request) Successful in 2m6s
testing / test-remote-cacher (valkey) (pull_request) Successful in 2m6s
testing / test-remote-cacher (garnet) (pull_request) Successful in 2m8s
testing / test-remote-cacher (redict) (pull_request) Successful in 2m7s
testing / test-e2e (pull_request) Successful in 18m56s
testing / test-mysql (pull_request) Successful in 21m41s
testing / test-sqlite (pull_request) Successful in 26m47s
testing / test-pgsql (pull_request) Successful in 30m0s
testing / security-check (pull_request) Successful in 46s
issue-labels / cascade (pull_request_target) Has been skipped
issue-labels / release-notes (pull_request_target) Has been skipped
issue-labels / backporting (pull_request_target) Has been skipped
requirements / merge-conditions (pull_request) Successful in 1s
2026-02-14 08:54:57 +01:00
Compare
mahlzahn left a comment
Member

Thank you! Overall looks good and I have just some comments / observations.

Thank you! Overall looks good and I have just some comments / observations.
@ -70,2 +70,3 @@
}
r.maxIssueIID = max(r.maxIssueIID, int64(issueIID))
if r.frozen {
panic("cannot record bigger issue IID after pull request IID generation has started")
Member

Is there any known case where this panic could happen?

Is there any known case where this panic could happen?
Author
Member

It should only happen if the first issue is not the one with the largest IID.
It shouldn't happen (except if the GetIssues calls do not start with page 1 for instance)

It should only happen if the first issue is not the one with the largest IID. It shouldn't happen (except if the `GetIssues` calls do not start with page 1 for instance)
mahlzahn marked this conversation as resolved
@ -818,3 +803,1 @@
}
return body
}
var mrFinder = regexp.MustCompile(`![0-9]+`)
Member

This regular expression might be a bit matching too much, e.g., here the regex for issue reference matching in markdown rendering:

issueNumericPattern = regexp.MustCompile(`(?:\s|^|\(|\[|\'|\")([#!][0-9]+)(?:\s|$|\)|\]|\'|\"|[:;,.?!]\s|[:;,.?!]$)`)

You may have also references like otherproject!123 linking to an MR in another project. See https://docs.gitlab.com/user/project/issues/crosslinking_issues/.

This regular expression might be a bit matching too much, e.g., here the regex for issue reference matching in markdown rendering: https://codeberg.org/forgejo/forgejo/src/commit/62ad4669f9830ad015c66c9747c86527de43ab59/modules/references/references.go#L33 You may have also references like `otherproject!123` linking to an MR in another project. See https://docs.gitlab.com/user/project/issues/crosslinking_issues/.
Member

But, as mentioned below, there may be references to this project (for the test repo test_repo!4) which should be replaced, too.

But, as mentioned below, there may be references to this project (for the test repo `test_repo!4`) which should be replaced, too.
Author
Member

You are right, but I think that this should be discussed in a dedicated issue first.

Here I tried to stick to the original logic (which was broken), that considered anything after a !.

You are right, but I think that this should be discussed in a dedicated issue first. Here I tried to stick to the original logic (which was broken), that considered anything after a `!`.
Member

I just created #11332 for that feature request.

I just created #11332 for that feature request.
mahlzahn marked this conversation as resolved
@ -123,6 +123,7 @@ func TestGitlabDownloadRepo(t *testing.T) {
releases, err := downloader.GetReleases()
require.NoError(t, err)
releases[0].Assets = nil // TODO: fix release test
Member

In my opinion, these TODOs (I inserted them with my commit) can be solved in a follow-up. At least, now it shouldn’t panic any more and release assets were broken before already.

In my opinion, these TODOs (I inserted them with my commit) can be solved in a follow-up. At least, now it shouldn’t panic any more and release assets were broken before already.
mahlzahn marked this conversation as resolved
Member

Add a test here for some references that should not be modified, e.g., projectX!5, actually more complicated, because if test_repo!4 should be modified 🤔

Add a test here for some references that should not be modified, e.g., `projectX!5`, actually more complicated, because if `test_repo!4` should be modified 🤔
Author
Member

As mentioned, I think this should be discussed in a dedicated issue (do we also want to replace full-links to the repo?)

As mentioned, I think this should be discussed in a dedicated issue (do we also want to replace full-links to the repo?)
mahlzahn marked this conversation as resolved
@ -28,3 +25,3 @@
[{"id":36554072,"name":"bug","description":null,"description_html":"","text_color":"#FFFFFF","color":"#d9534f","subscribed":false,"priority":null,"is_project_label":true},{"id":36554074,"name":"confirmed","description":null,"description_html":"","text_color":"#FFFFFF","color":"#d9534f","subscribed":false,"priority":null,"is_project_label":true},{"id":36554073,"name":"critical","description":null,"description_html":"","text_color":"#FFFFFF","color":"#d9534f","subscribed":false,"priority":null,"is_project_label":true},{"id":36554077,"name":"discussion","description":null,"description_html":"","text_color":"#FFFFFF","color":"#428bca","subscribed":false,"priority":null,"is_project_label":true},{"id":36554075,"name":"documentation","description":null,"description_html":"","text_color":"#1F1E24","color":"#f0ad4e","subscribed":false,"priority":null,"is_project_label":true},{"id":36556606,"name":"duplicate","description":"","description_html":"","text_color":"#FFFFFF","color":"#7F8C8D","subscribed":false,"priority":null,"is_project_label":true},{"id":36554079,"name":"enhancement","description":null,"description_html":"","text_color":"#FFFFFF","color":"#5cb85c","subscribed":false,"priority":null,"is_project_label":true},{"id":36554078,"name":"suggestion","description":null,"description_html":"","text_color":"#FFFFFF","color":"#428bca","subscribed":false,"priority":null,"is_project_label":true},{"id":36554076,"name":"support","description":null,"description_html":"","text_color":"#1F1E24","color":"#f0ad4e","subscribed":false,"priority":null,"is_project_label":true},{"id":36554080,"name":"test-scope::label0","description":"scoped label","description_html":"scoped label","text_color":"#FFFFFF","color":"#6699cc","subscribed":false,"priority":null,"is_project_label":true},{"id":36554094,"name":"test-scope::label1","description":"","description_html":"","text_color":"#FFFFFF","color":"#dc143c","subscribed":false,"priority":null,"is_project_label":true}]
[{"id":36554072,"name":"bug","description":null,"description_html":"","text_color":"#FFFFFF","color":"#d9534f","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36554074,"name":"confirmed","description":null,"description_html":"","text_color":"#FFFFFF","color":"#d9534f","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36554073,"name":"critical","description":null,"description_html":"","text_color":"#FFFFFF","color":"#d9534f","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36554077,"name":"discussion","description":null,"description_html":"","text_color":"#FFFFFF","color":"#428bca","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36554075,"name":"documentation","description":null,"description_html":"","text_color":"#1F1E24","color":"#f0ad4e","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36556606,"name":"duplicate","description":"","description_html":"","text_color":"#FFFFFF","color":"#7F8C8D","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36554079,"name":"enhancement","description":null,"description_html":"","text_color":"#FFFFFF","color":"#5cb85c","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36554078,"name":"suggestion","description":null,"description_html":"","text_color":"#FFFFFF","color":"#428bca","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36554076,"name":"support","description":null,"description_html":"","text_color":"#1F1E24","color":"#f0ad4e","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36554080,"name":"test-scope::label0","description":"scoped label","description_html":"scoped label","text_color":"#FFFFFF","color":"#6699cc","archived":false,"subscribed":false,"priority":null,"is_project_label":true},{"id":36554094,"name":"test-scope::label1","description":"","description_html":"","text_color":"#FFFFFF","color":"#dc143c","archived":false,"subscribed":false,"priority":null,"is_project_label":true}]
Member

Means, we can now support the migration of the state of archived labels, too. -> feature request (not necessary with this PR)

Means, we can now support the migration of the state of archived labels, too. -> feature request (not necessary with this PR)
Member

Created #11331 for that now (although finally, I figured out that gitlab.com currently does not support label archiving, yet.)

Created #11331 for that now (although finally, I figured out that gitlab.com currently does not support label archiving, yet.)
mahlzahn marked this conversation as resolved
@ -1,17 +0,0 @@
Referrer-Policy: strict-origin-when-cross-origin
Member

This file (and other …gitea… files) got removed because we don’t test on it any more?

This file (and other `…gitea…` files) got removed because we don’t test on it any more?
Author
Member

yes, I believe they were never cleaned up (the added os.MkdirAll makes it easier to delete such files)

yes, I believe they were never cleaned up (the added `os.MkdirAll` makes it easier to delete such files)
mahlzahn marked this conversation as resolved
@ -0,0 +1,29 @@
Accept-Ranges: bytes
Member

That move makes sense, thanks.

That move makes sense, thanks.
mahlzahn marked this conversation as resolved
@ -299,3 +371,3 @@
PosterName: "patdyn",
Created: time.Date(2025, time.November, 25, 9, 49, 0, 750000000, time.UTC),
Content: "Although we had some trouble with !4",
Content: "Although we had some trouble with !5.",
Member

Good fix, too. The dot was missing.

Good fix, too. The dot was missing.
Author
Member

This was fixed by using the regex 👼

This was fixed by using the regex 👼
mahlzahn marked this conversation as resolved
Author
Member

@mahlzahn do you mind creating a new issue to propose a better handling of MR references?

Currently any ![0-9]+ gets replaced, but this is:

  • wrong when it refers to another repo other!4
  • right when it refers to itself test_repo!4
  • probably wrong when inside some other stuff n!4g!3

issueNumericPattern = regexp.MustCompile(`(?:\s|^|\(|\[|\'|\")([#!][0-9]+)(?:\s|$|\)|\]|\'|\"|[:;,.?!]\s|[:;,.?!]$)`)

Furthermore, full links inside the repo could be replaced as well.

I think that such changes would be more of a feature (I tried to limit this PR to bugfixing), hence the suggestion of a dedicated issue.

@mahlzahn do you mind creating a new issue to propose a better handling of MR references? Currently any `![0-9]+` gets replaced, but this is: - wrong when it refers to another repo `other!4` - right when it refers to itself `test_repo!4` - probably wrong when inside some other stuff `n!4g!3` https://codeberg.org/forgejo/forgejo/src/commit/62ad4669f9830ad015c66c9747c86527de43ab59/modules/references/references.go#L33 Furthermore, full links inside the repo could be replaced as well. I think that such changes would be more of a feature (I tried to limit this PR to bugfixing), hence the suggestion of a dedicated issue.
Member

@oliverpool wrote in #11282 (comment):

@mahlzahn do you mind creating a new issue to propose a better handling of MR references?

I'm fine with that! This PR is fixing the panics and the rest will be features/cosmetic bug fixes.

Edit: I just created #11332 for that feature request.

@oliverpool wrote in https://codeberg.org/forgejo/forgejo/pulls/11282#issuecomment-10584902: > @mahlzahn do you mind creating a new issue to propose a better handling of MR references? I'm fine with that! This PR is fixing the panics and the rest will be features/cosmetic bug fixes. Edit: I just created #11332 for that feature request.
mahlzahn approved these changes 2026-02-14 17:14:10 +01:00
Dismissed
testdata: archived repo
Some checks failed
issue-labels / release-notes (pull_request_target) Has been skipped
requirements / merge-conditions (pull_request) Successful in 2s
testing / semgrep/ci (pull_request) Successful in 15s
testing / frontend-checks (pull_request) Successful in 50s
testing / backend-checks (pull_request) Has been cancelled
testing / test-unit (pull_request) Has been cancelled
testing / test-e2e (pull_request) Has been cancelled
testing / test-remote-cacher (redis) (pull_request) Has been cancelled
testing / test-remote-cacher (valkey) (pull_request) Has been cancelled
testing / test-remote-cacher (garnet) (pull_request) Has been cancelled
testing / test-remote-cacher (redict) (pull_request) Has been cancelled
testing / test-mysql (pull_request) Has been cancelled
testing / test-pgsql (pull_request) Has been cancelled
testing / test-sqlite (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
8ff3ec1031
oliverpool force-pushed gitlab-tests from 8ff3ec1031
Some checks failed
issue-labels / release-notes (pull_request_target) Has been skipped
requirements / merge-conditions (pull_request) Successful in 2s
testing / semgrep/ci (pull_request) Successful in 15s
testing / frontend-checks (pull_request) Successful in 50s
testing / backend-checks (pull_request) Has been cancelled
testing / test-unit (pull_request) Has been cancelled
testing / test-e2e (pull_request) Has been cancelled
testing / test-remote-cacher (redis) (pull_request) Has been cancelled
testing / test-remote-cacher (valkey) (pull_request) Has been cancelled
testing / test-remote-cacher (garnet) (pull_request) Has been cancelled
testing / test-remote-cacher (redict) (pull_request) Has been cancelled
testing / test-mysql (pull_request) Has been cancelled
testing / test-pgsql (pull_request) Has been cancelled
testing / test-sqlite (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
to 43ed286e49
All checks were successful
testing / semgrep/ci (pull_request) Successful in 14s
testing / frontend-checks (pull_request) Successful in 57s
testing / backend-checks (pull_request) Successful in 2m39s
testing / test-unit (pull_request) Successful in 5m56s
testing / test-remote-cacher (garnet) (pull_request) Successful in 2m27s
testing / test-remote-cacher (redict) (pull_request) Successful in 2m24s
testing / test-remote-cacher (redis) (pull_request) Successful in 2m28s
testing / test-remote-cacher (valkey) (pull_request) Successful in 2m31s
testing / test-e2e (pull_request) Successful in 24m26s
testing / test-mysql (pull_request) Successful in 25m16s
testing / test-pgsql (pull_request) Successful in 34m22s
testing / test-sqlite (pull_request) Successful in 24m43s
testing / security-check (pull_request) Successful in 44s
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 26s
2026-02-14 17:17:29 +01:00
Compare
mahlzahn approved these changes 2026-02-14 17:22:30 +01:00
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/11282.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.

@@ -23,2 +23,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-->
+- Bug fixes
+  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyBvbiBnaXRsYWIgaW1wb3J0IChyZWxlYXNlcy9pc3N1ZXMp-->prevent panic on gitlab import (releases/issues)<!--description-->
+<!--end release-notes-assistant-->

Release notes

  • Bug fixes
    • PR: prevent panic on gitlab import (releases/issues)
<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/11282.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 @@ -23,2 +23,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--> +- Bug fixes + - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyBvbiBnaXRsYWIgaW1wb3J0IChyZWxlYXNlcy9pc3N1ZXMp-->prevent panic on gitlab import (releases/issues)<!--description--> +<!--end release-notes-assistant--> ``` </details> <!--start release-notes-assistant--> ## Release notes <!--URL:https://codeberg.org/forgejo/forgejo--> - Bug fixes - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyBvbiBnaXRsYWIgaW1wb3J0IChyZWxlYXNlcy9pc3N1ZXMp-->prevent panic on gitlab import (releases/issues)<!--description--> <!--end release-notes-assistant-->
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/11282.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.

@@ -23,2 +23,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-->
+- Bug fixes
+  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyBvbiBnaXRsYWIgaW1wb3J0IChyZWxlYXNlcy9pc3N1ZXMp-->prevent panic on gitlab import (releases/issues)<!--description-->
+<!--end release-notes-assistant-->

Release notes

  • Bug fixes
    • PR: prevent panic on gitlab import (releases/issues)
<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/11282.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 @@ -23,2 +23,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--> +- Bug fixes + - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyBvbiBnaXRsYWIgaW1wb3J0IChyZWxlYXNlcy9pc3N1ZXMp-->prevent panic on gitlab import (releases/issues)<!--description--> +<!--end release-notes-assistant--> ``` </details> <!--start release-notes-assistant--> ## Release notes <!--URL:https://codeberg.org/forgejo/forgejo--> - Bug fixes - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyBvbiBnaXRsYWIgaW1wb3J0IChyZWxlYXNlcy9pc3N1ZXMp-->prevent panic on gitlab import (releases/issues)<!--description--> <!--end release-notes-assistant-->
@ -71,2 +73,2 @@
for headerName, headerValues := range response.Header {
for _, headerValue := range headerValues {
for _, headerName := range slices.Sorted(maps.Keys(response.Header)) {
for _, headerValue := range response.Header[headerName] {
Owner

Why is this changed?

Why is this changed?
Author
Member

To reduce the diff when refreshing the testdata.

For instance 8ff3ec1031 is more readable than !11282 (commit c5f9421aa6)

To reduce the diff when refreshing the testdata. For instance https://codeberg.org/forgejo/forgejo/commit/8ff3ec1031746cc23fb55e16259f86c89bcf1c7e is more readable than https://codeberg.org/forgejo/forgejo/pulls/11282/commits/c5f9421aa684508c264e1e5ebda0a2439bb76daf
Owner

Ah, thanks.

Ah, thanks.
mahlzahn marked this conversation as resolved
Member

I think that the PR title (or a release notes file) could be a bit more verbose to explain what kind of migrations were fixed:

  • migrations including releases with more than 4 release assets
  • migrations including pull requests and issues that were not retrieved in right order?
I think that the PR title (or a release notes file) could be a bit more verbose to explain what kind of migrations were fixed: - migrations including releases with more than 4 release assets - migrations including pull requests and issues that were not retrieved in right order?
release-note: add verbose description
Some checks failed
testing / semgrep/ci (pull_request) Successful in 18s
requirements / merge-conditions (pull_request) Successful in 2s
Integration tests for the release process / release-simulation (pull_request) Has been cancelled
issue-labels / release-notes (pull_request_target) Has been cancelled
testing / backend-checks (pull_request) Has been cancelled
testing / frontend-checks (pull_request) Has been cancelled
testing / test-unit (pull_request) Has been cancelled
testing / test-e2e (pull_request) Has been cancelled
testing / test-remote-cacher (redis) (pull_request) Has been cancelled
testing / test-remote-cacher (valkey) (pull_request) Has been cancelled
testing / test-remote-cacher (garnet) (pull_request) Has been cancelled
testing / test-remote-cacher (redict) (pull_request) Has been cancelled
testing / test-mysql (pull_request) Has been cancelled
testing / test-pgsql (pull_request) Has been cancelled
testing / test-sqlite (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
e312986e71
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/11282.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.

@@ -29,4 +29,6 @@
 <!--URL:https://codeberg.org/forgejo/forgejo-->
 - Bug fixes
-  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyBvbiBnaXRsYWIgaW1wb3J0IChyZWxlYXNlcy9pc3N1ZXMp-->prevent panic on gitlab import (releases/issues)<!--description-->
+  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyBpc3N1ZXMgZnJvbSBHaXRMYWI=-->prevent panic when importing issues from GitLab<!--description-->
+  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 1 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyByZWxlYXNlcyB3aXRoIG1vcmUgdGhhbiA0IHJlbGVhc2UgYXNzZXRzIGZyb20gR2l0TGFi-->prevent panic when importing releases with more than 4 release assets from GitLab<!--description-->
+  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 2 --><!--description cHJvcGVyIHJlLW1hcHBpbmcgb2YgbWVyZ2UtcmVxdWVzdCBudW1iZXJzIG1lbnRpb25lZCBpbiBHaXRMYWIgY29tbWVudHM=-->proper re-mapping of merge-request numbers mentioned in GitLab comments<!--description-->
 <!--end release-notes-assistant-->

Release notes

  • Bug fixes
    • PR: prevent panic when importing issues from GitLab
    • PR: prevent panic when importing releases with more than 4 release assets from GitLab
    • PR: proper re-mapping of merge-request numbers mentioned in GitLab comments
<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/11282.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 @@ -29,4 +29,6 @@ <!--URL:https://codeberg.org/forgejo/forgejo--> - Bug fixes - - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyBvbiBnaXRsYWIgaW1wb3J0IChyZWxlYXNlcy9pc3N1ZXMp-->prevent panic on gitlab import (releases/issues)<!--description--> + - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyBpc3N1ZXMgZnJvbSBHaXRMYWI=-->prevent panic when importing issues from GitLab<!--description--> + - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 1 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyByZWxlYXNlcyB3aXRoIG1vcmUgdGhhbiA0IHJlbGVhc2UgYXNzZXRzIGZyb20gR2l0TGFi-->prevent panic when importing releases with more than 4 release assets from GitLab<!--description--> + - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 2 --><!--description cHJvcGVyIHJlLW1hcHBpbmcgb2YgbWVyZ2UtcmVxdWVzdCBudW1iZXJzIG1lbnRpb25lZCBpbiBHaXRMYWIgY29tbWVudHM=-->proper re-mapping of merge-request numbers mentioned in GitLab comments<!--description--> <!--end release-notes-assistant--> ``` </details> <!--start release-notes-assistant--> ## Release notes <!--URL:https://codeberg.org/forgejo/forgejo--> - Bug fixes - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyBpc3N1ZXMgZnJvbSBHaXRMYWI=-->prevent panic when importing issues from GitLab<!--description--> - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 1 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyByZWxlYXNlcyB3aXRoIG1vcmUgdGhhbiA0IHJlbGVhc2UgYXNzZXRzIGZyb20gR2l0TGFi-->prevent panic when importing releases with more than 4 release assets from GitLab<!--description--> - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 2 --><!--description cHJvcGVyIHJlLW1hcHBpbmcgb2YgbWVyZ2UtcmVxdWVzdCBudW1iZXJzIG1lbnRpb25lZCBpbiBHaXRMYWIgY29tbWVudHM=-->proper re-mapping of merge-request numbers mentioned in GitLab comments<!--description--> <!--end release-notes-assistant-->
oliverpool force-pushed gitlab-tests from e312986e71
Some checks failed
testing / semgrep/ci (pull_request) Successful in 18s
requirements / merge-conditions (pull_request) Successful in 2s
Integration tests for the release process / release-simulation (pull_request) Has been cancelled
issue-labels / release-notes (pull_request_target) Has been cancelled
testing / backend-checks (pull_request) Has been cancelled
testing / frontend-checks (pull_request) Has been cancelled
testing / test-unit (pull_request) Has been cancelled
testing / test-e2e (pull_request) Has been cancelled
testing / test-remote-cacher (redis) (pull_request) Has been cancelled
testing / test-remote-cacher (valkey) (pull_request) Has been cancelled
testing / test-remote-cacher (garnet) (pull_request) Has been cancelled
testing / test-remote-cacher (redict) (pull_request) Has been cancelled
testing / test-mysql (pull_request) Has been cancelled
testing / test-pgsql (pull_request) Has been cancelled
testing / test-sqlite (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
to 70ae7410ab
All checks were successful
testing / semgrep/ci (pull_request) Successful in 16s
requirements / merge-conditions (pull_request) Successful in 2s
issue-labels / release-notes (pull_request_target) Successful in 31s
testing / frontend-checks (pull_request) Successful in 1m3s
testing / backend-checks (pull_request) Successful in 2m39s
Integration tests for the release process / release-simulation (pull_request) Successful in 5m5s
testing / test-unit (pull_request) Successful in 6m37s
testing / test-remote-cacher (valkey) (pull_request) Successful in 1m53s
testing / test-remote-cacher (garnet) (pull_request) Successful in 1m51s
testing / test-remote-cacher (redis) (pull_request) Successful in 1m56s
testing / test-remote-cacher (redict) (pull_request) Successful in 1m53s
testing / test-e2e (pull_request) Successful in 19m46s
testing / test-mysql (pull_request) Successful in 21m4s
testing / test-pgsql (pull_request) Successful in 28m8s
testing / test-sqlite (pull_request) Successful in 25m24s
testing / security-check (pull_request) Successful in 47s
2026-02-18 14:10:29 +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/11282.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.

@@ -31,4 +31,4 @@
   - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyBpc3N1ZXMgZnJvbSBHaXRMYWI=-->prevent panic when importing issues from GitLab<!--description-->
   - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 1 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyByZWxlYXNlcyB3aXRoIG1vcmUgdGhhbiA0IHJlbGVhc2UgYXNzZXRzIGZyb20gR2l0TGFi-->prevent panic when importing releases with more than 4 release assets from GitLab<!--description-->
-  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 2 --><!--description cHJvcGVyIHJlLW1hcHBpbmcgb2YgbWVyZ2UtcmVxdWVzdCBudW1iZXJzIG1lbnRpb25lZCBpbiBHaXRMYWIgY29tbWVudHM=-->proper re-mapping of merge-request numbers mentioned in GitLab comments<!--description-->
+  - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 2 --><!--description Y29ycmVjdCByZS1tYXBwaW5nIG9mIG1lcmdlLXJlcXVlc3QgbnVtYmVycyBtZW50aW9uZWQgaW4gR2l0TGFiIGNvbW1lbnRz-->correct re-mapping of merge-request numbers mentioned in GitLab comments<!--description-->
 <!--end release-notes-assistant-->

Release notes

  • Bug fixes
    • PR: prevent panic when importing issues from GitLab
    • PR: prevent panic when importing releases with more than 4 release assets from GitLab
    • PR: correct re-mapping of merge-request numbers mentioned in GitLab comments
<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/11282.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 @@ -31,4 +31,4 @@ - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyBpc3N1ZXMgZnJvbSBHaXRMYWI=-->prevent panic when importing issues from GitLab<!--description--> - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 1 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyByZWxlYXNlcyB3aXRoIG1vcmUgdGhhbiA0IHJlbGVhc2UgYXNzZXRzIGZyb20gR2l0TGFi-->prevent panic when importing releases with more than 4 release assets from GitLab<!--description--> - - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 2 --><!--description cHJvcGVyIHJlLW1hcHBpbmcgb2YgbWVyZ2UtcmVxdWVzdCBudW1iZXJzIG1lbnRpb25lZCBpbiBHaXRMYWIgY29tbWVudHM=-->proper re-mapping of merge-request numbers mentioned in GitLab comments<!--description--> + - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 2 --><!--description Y29ycmVjdCByZS1tYXBwaW5nIG9mIG1lcmdlLXJlcXVlc3QgbnVtYmVycyBtZW50aW9uZWQgaW4gR2l0TGFiIGNvbW1lbnRz-->correct re-mapping of merge-request numbers mentioned in GitLab comments<!--description--> <!--end release-notes-assistant--> ``` </details> <!--start release-notes-assistant--> ## Release notes <!--URL:https://codeberg.org/forgejo/forgejo--> - Bug fixes - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 0 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyBpc3N1ZXMgZnJvbSBHaXRMYWI=-->prevent panic when importing issues from GitLab<!--description--> - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 1 --><!--description cHJldmVudCBwYW5pYyB3aGVuIGltcG9ydGluZyByZWxlYXNlcyB3aXRoIG1vcmUgdGhhbiA0IHJlbGVhc2UgYXNzZXRzIGZyb20gR2l0TGFi-->prevent panic when importing releases with more than 4 release assets from GitLab<!--description--> - [PR](https://codeberg.org/forgejo/forgejo/pulls/11282): <!--number 11282 --><!--line 2 --><!--description Y29ycmVjdCByZS1tYXBwaW5nIG9mIG1lcmdlLXJlcXVlc3QgbnVtYmVycyBtZW50aW9uZWQgaW4gR2l0TGFiIGNvbW1lbnRz-->correct re-mapping of merge-request numbers mentioned in GitLab comments<!--description--> <!--end release-notes-assistant-->
patdyn requested review from patdyn 2026-02-28 16:56:08 +01:00
patdyn requested changes 2026-02-28 17:03:56 +01:00
Dismissed
@ -123,6 +123,9 @@ func TestGitlabDownloadRepo(t *testing.T) {
releases, err := downloader.GetReleases()
require.NoError(t, err)
// TODO: fix size, currently reported as 0
Member

I think having these TODOs fixed would be good before merge.
Otherwise it might be confusing to other devs working with these tests.

LGTM otherwise, built your branch and migrated the linked repo without problems.

I think having these TODOs fixed would be good before merge. Otherwise it might be confusing to other devs working with these tests. LGTM otherwise, built your branch and migrated the linked repo without problems.
Member

I plan to work on it after the merge of this PR (in near future), but at least with this PR, the import won't panic anymore. It needs some design decisions before fixing the release assets import.

I plan to work on it after the merge of this PR (in near future), but at least with this PR, the import won't panic anymore. It needs some design decisions before fixing the release assets import.
Member

Okay, that makes sense. Could you then leave a reference with these TODOs for others who might stumble across? Edit: Reference as in a Link to the Issue or this PR so people will know this is being worked on.

Okay, that makes sense. Could you then leave a reference with these TODOs for others who might stumble across? Edit: Reference as in a Link to the Issue or this PR so people will know this is being worked on.
Member
OK, done: https://codeberg.org/forgejo/forgejo/pulls/11282/commits/e98d13fbc7a58611f131ede5ef32c912f593c3f5
chore: add issue reference to TODO items
Some checks failed
requirements / merge-conditions (pull_request) Successful in 7s
testing / semgrep/ci (pull_request) Successful in 18s
issue-labels / release-notes (pull_request_target) Successful in 30s
testing / frontend-checks (pull_request) Failing after 30s
testing / backend-checks (pull_request) Has been cancelled
testing / test-unit (pull_request) Has been cancelled
testing / test-e2e (pull_request) Has been cancelled
testing / test-remote-cacher (redis) (pull_request) Has been cancelled
testing / test-remote-cacher (valkey) (pull_request) Has been cancelled
testing / test-remote-cacher (garnet) (pull_request) Has been cancelled
testing / test-remote-cacher (redict) (pull_request) Has been cancelled
testing / test-mysql (pull_request) Has been cancelled
testing / test-pgsql (pull_request) Has been cancelled
testing / test-sqlite (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
Integration tests for the release process / release-simulation (pull_request) Successful in 5m28s
e98d13fbc7
mahlzahn force-pushed gitlab-tests from e98d13fbc7
Some checks failed
requirements / merge-conditions (pull_request) Successful in 7s
testing / semgrep/ci (pull_request) Successful in 18s
issue-labels / release-notes (pull_request_target) Successful in 30s
testing / frontend-checks (pull_request) Failing after 30s
testing / backend-checks (pull_request) Has been cancelled
testing / test-unit (pull_request) Has been cancelled
testing / test-e2e (pull_request) Has been cancelled
testing / test-remote-cacher (redis) (pull_request) Has been cancelled
testing / test-remote-cacher (valkey) (pull_request) Has been cancelled
testing / test-remote-cacher (garnet) (pull_request) Has been cancelled
testing / test-remote-cacher (redict) (pull_request) Has been cancelled
testing / test-mysql (pull_request) Has been cancelled
testing / test-pgsql (pull_request) Has been cancelled
testing / test-sqlite (pull_request) Has been cancelled
testing / security-check (pull_request) Has been cancelled
Integration tests for the release process / release-simulation (pull_request) Successful in 5m28s
to 6b5edf8408
All checks were successful
requirements / merge-conditions (pull_request) Successful in 5s
testing / semgrep/ci (pull_request) Successful in 17s
issue-labels / release-notes (pull_request_target) Successful in 44s
testing / frontend-checks (pull_request) Successful in 1m31s
testing / backend-checks (pull_request) Successful in 3m9s
testing / test-unit (pull_request) Successful in 6m15s
testing / test-remote-cacher (garnet) (pull_request) Successful in 2m10s
testing / test-remote-cacher (valkey) (pull_request) Successful in 2m11s
testing / test-remote-cacher (redict) (pull_request) Successful in 2m9s
testing / test-remote-cacher (redis) (pull_request) Successful in 2m13s
testing / test-e2e (pull_request) Successful in 20m50s
testing / test-mysql (pull_request) Successful in 23m19s
testing / test-sqlite (pull_request) Successful in 29m18s
testing / test-pgsql (pull_request) Successful in 31m22s
testing / security-check (pull_request) Successful in 58s
milestone / set (pull_request_target) Successful in 7s
issue-labels / backporting (pull_request_target) Successful in 50s
2026-03-02 11:55:44 +01:00
Compare
Member

… and rebased: e98d13fbc7..6b5edf8408

… and rebased: https://codeberg.org/forgejo/forgejo/compare/e98d13fbc7a58611f131ede5ef32c912f593c3f5..6b5edf84085262a9945bab9c6ba467a18cc9d65c
Gusted approved these changes 2026-03-02 12:55:46 +01:00
patdyn approved these changes 2026-03-02 19:42:03 +01:00
Gusted merged commit a0d6970442 into forgejo 2026-03-03 21:36:17 +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
5 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!11282
No description provided.