forgejo/services
Gusted 5e79b39654 fix(migrations): transfer PR flow information (#7421)
- When migrating a pull requests from a Gitea or Forgejo instance, check if the pull request was created via the AGit flow and transfer that bit of information to the migrated pull request.
- Expose this bit of information as the `flow` field for the pull request.
- We have to do a horrible Go hack with Gitea's [go-sdk](gitea.com/gitea/go-sdk) to list all pull requests while being able to decode it to a struct that contains the new `Flow` field. The library does not allow you to do this out of the box, so we have to use `go:linkname` to access the private method that allows us to do this. This in turn means we have to do some boilerplate code that the library otherwise would do for us. The better option would be forking, but that would be a hassle of keeping the library in sync.
- Resolves forgejo/forgejo#5848
- Unit test added.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7421
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-committed-by: Gusted <postmaster@gusted.xyz>
2025-04-03 06:47:37 +00:00
..
actions Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
agit chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
asymkey chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
attachment Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
auth Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
automerge chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
context Git client will follow 301 but 307 (#34005) 2025-04-01 02:28:02 +02:00
contexttest Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
convert fix(migrations): transfer PR flow information (#7421) 2025-04-03 06:47:37 +00:00
cron chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
doctor feat: use XORM EngineGroup instead of single Engine connection (#7212) 2025-03-30 11:34:02 +00:00
externalaccount chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
f3 Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
federation chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
feed chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
forgejo chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
forms fix(ui): display user-friendly message for range error (#7420) 2025-04-02 15:48:09 +00:00
gitdiff Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
indexer chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
issue Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
lfs Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
mailer Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
markup chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
migrations fix(migrations): transfer PR flow information (#7421) 2025-04-03 06:47:37 +00:00
mirror Fail mirroring more gracefully (#34002) 2025-04-01 02:28:02 +02:00
notify chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
org chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
packages Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
pull Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
release Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
remote chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
repository Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
secrets chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
shared/automerge chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
task chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
uinotification chore: branding import path (#7337) 2025-03-27 19:40:14 +00:00
user Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
webhook Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00
wiki Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo) (#7367) 2025-03-28 22:22:21 +00:00