forgejo-federation/routers/api/v1/repo
Otto Richter (fnetX) 3362620ee3
Fix api error message if fork exists (#24487)
On the @Forgejo instance of Codeberg, we discovered that forking a repo
which is already forked now returns a 500 Internal Server Error, which
is unexpected. This is an attempt at fixing this.

The error message in the log:
~~~
2023/05/02 08:36:30 .../api/v1/repo/fork.go:147:CreateFork() [E]
[6450cb8e-113] ForkRepository: repository is already forked by user
[uname: ...., repo path: .../..., fork path: .../...]
~~~

The service that is used for forking returns a custom error message
which is not checked against.

About the order of options:
The case that the fork already exists should be more common, followed by
the case that a repo with the same name already exists for other
reasons. The case that the global repo limit is hit is probably not the
likeliest.

Co-authored-by: Otto Richter <otto@codeberg.org>
Co-authored-by: Giteabot <teabot@gitea.io>
2023-05-02 20:26:38 -04:00
..
blob.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
branch.go Fix protected branch for API (#24013) 2023-04-09 22:52:16 -04:00
collaborators.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
commits.go Add ability to specify '--not' from GetAllCommits (#24409) 2023-04-29 08:34:14 -04:00
file.go Use graceful editorconfig loader to reduce errors when loading malformed editorconfigs (#21257) 2023-04-06 16:01:20 -04:00
fork.go Fix api error message if fork exists (#24487) 2023-05-02 20:26:38 -04:00
git_hook.go Move convert package to services (#22264) 2022-12-29 10:57:15 +08:00
git_ref.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
hook.go Add user webhooks (#21563) 2023-03-10 08:28:32 -06:00
hook_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
issue.go Make more functions use ctx instead of db.DefaultContext (#24068) 2023-04-14 14:18:28 -04:00
issue_attachment.go Preserve file size when creating attachments (#23406) 2023-03-12 03:48:07 -04:00
issue_comment.go Fix issue attachment handling (#24202) 2023-04-20 02:39:44 -04:00
issue_comment_attachment.go Preserve file size when creating attachments (#23406) 2023-03-12 03:48:07 -04:00
issue_dependency.go Add API to manage issue dependencies (#17935) 2023-03-28 13:23:25 -04:00
issue_label.go Move convert package to services (#22264) 2022-12-29 10:57:15 +08:00
issue_reaction.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
issue_stopwatch.go Move convert package to services (#22264) 2022-12-29 10:57:15 +08:00
issue_subscription.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
issue_tracked_time.go Move convert package to services (#22264) 2022-12-29 10:57:15 +08:00
key.go Move convert package to services (#22264) 2022-12-29 10:57:15 +08:00
label.go Add loading yaml label template files (#22976) 2023-03-02 01:44:23 +02:00
language.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
main_test.go Refactor the setting to make unit test easier (#22405) 2023-02-20 00:12:01 +08:00
migrate.go Match api migration behavior to web behavior (#23552) 2023-03-19 02:29:14 -04:00
milestone.go Move convert package to services (#22264) 2022-12-29 10:57:15 +08:00
mirror.go Add sync_on_commit option for push mirrors api (#22271) 2022-12-30 19:22:51 +08:00
notes.go Fix panic when getting notes by ref (#23372) 2023-03-08 20:21:23 +08:00
patch.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
pull.go Make more functions use ctx instead of db.DefaultContext (#24068) 2023-04-14 14:18:28 -04:00
pull_review.go Make more functions use ctx instead of db.DefaultContext (#24068) 2023-04-14 14:18:28 -04:00
release.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
release_attachment.go Preserve file size when creating attachments (#23406) 2023-03-12 03:48:07 -04:00
release_tags.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
repo.go Add activity feeds API (#23494) 2023-04-04 21:35:31 +08:00
repo_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
star.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
status.go Use context parameter in models/git (#22367) 2023-01-09 11:50:54 +08:00
subscriber.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
tag.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
teams.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
topic.go Move convert package to services (#22264) 2022-12-29 10:57:15 +08:00
transfer.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
tree.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
wiki.go Make wiki title supports dashes and improve wiki name related features (#24143) 2023-04-19 13:50:10 -04:00