forgejo/models/repo
oliverpool 8030614386
fix: release page for empty or non-existing target (#24470)
Fixes #24145

To solve the bug, I added a "computed" `TargetBehind` field to the
`Release` model, which indicates the target branch of a release.
This is particularly useful if the target branch was deleted in the
meantime (or is empty).

I also did a micro-optimization in `calReleaseNumCommitsBehind`. Instead
of checking that a branch exists and then call `GetBranchCommit`, I
immediately call `GetBranchCommit` and handle the `git.ErrNotExist`
error.

This optimization is covered by the added unit test.
2023-05-10 11:43:55 +08:00
..
archiver.go
attachment.go
attachment_test.go
avatar.go
collaboration.go
collaboration_test.go
fork.go
fork_test.go
git.go
issue.go
language_stats.go
main_test.go
mirror.go
pushmirror.go
pushmirror_test.go
redirect.go
redirect_test.go
release.go
repo.go
repo_indexer.go
repo_list.go
repo_list_test.go
repo_test.go
repo_unit.go
search.go
star.go
star_test.go
topic.go
topic_test.go
update.go
upload.go
user_repo.go
user_repo_test.go
watch.go
watch_test.go
wiki.go
wiki_test.go