diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2025-06-09 12:05:33 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-06-09 04:05:33 +0000 |
commit | 6d0b24064a922ee8195a7a7cb858823763bac524 (patch) | |
tree | e6468223dba4c5777688ee1e48c4678171ba93ef /routers/web/user | |
parent | f6041441ee280faba5f06ec4b7a78c35a402bf87 (diff) | |
download | gitea-main.tar.gz gitea-main.zip |
Keeping consistent between UI and API about combined commit status state and fix some bugs (#34562)HEADmain
Extract from #34531
## Move Commit status state to a standalone package
Move the state from `structs` to `commitstatus` package. It also
introduce `CommitStatusStates` so that the combine function could be
used from UI and API logic.
## Combined commit status Changed
This PR will follow Github's combined commit status. Before this PR,
every commit status could be a combined one.
According to
https://docs.github.com/en/rest/commits/statuses?apiVersion=2022-11-28#get-the-combined-status-for-a-specific-reference
> Additionally, a combined state is returned. The state is one of:
> failure if any of the contexts report as error or failure
> pending if there are no statuses or a context is pending
> success if the latest status for all contexts is success
This PR will follow that rule and remove the `NoBetterThan` logic. This
also fixes the inconsistent between UI and API. In the API convert
package, it has implemented this which is different from the UI. It also
fixed the missing `URL` and `CommitURL` in the API.
## `CalcCommitStatus` return nil if there is no commit statuses
The behavior of `CalcCommitStatus` is changed. If the parameter commit
statuses is empty, it will return nil. The reference places should check
the returned value themselves.
Diffstat (limited to 'routers/web/user')
0 files changed, 0 insertions, 0 deletions