Return RFC3339 UTC timestamps for machine-readable output (#470)

### ⚠️ breaking changes ⚠️

- unset timestamps will not be printed as `"0001-01-01 00:00"`, but as empty value `""`
- output formats `csv`, `tsv`, `yaml` output timestamps in UTC instead of local time, and adhere to [RFC3339](https://datatracker.ietf.org/doc/html/rfc3339)

Co-authored-by: Norwin <git@nroo.de>
Co-authored-by: 6543 <6543@obermui.de>
Reviewed-on: https://gitea.com/gitea/tea/pulls/470
Reviewed-by: 6543 <6543@obermui.de>
Reviewed-by: John Olheiser <john.olheiser@gmail.com>
Co-authored-by: Norwin <noerw@noreply.gitea.io>
Co-committed-by: Norwin <noerw@noreply.gitea.io>
This commit is contained in:
Norwin
2022-03-29 06:37:13 +08:00
committed by 6543
parent 40e606561f
commit 9ab36c55fa
8 changed files with 27 additions and 17 deletions

View File

@ -31,7 +31,7 @@ func PullDetails(pr *gitea.PullRequest, reviews []*gitea.PullReview, ciStatus *g
pr.Title,
state,
pr.Poster.UserName,
FormatTime(*pr.Created),
FormatTime(*pr.Created, false),
base,
head,
pr.Body,
@ -195,14 +195,14 @@ func (x printablePull) FormatField(field string, machineReadable bool) string {
case "body":
return x.Body
case "created":
return FormatTime(*x.Created)
return FormatTime(*x.Created, machineReadable)
case "updated":
return FormatTime(*x.Updated)
return FormatTime(*x.Updated, machineReadable)
case "deadline":
if x.Deadline == nil {
return ""
}
return FormatTime(*x.Deadline)
return FormatTime(*x.Deadline, machineReadable)
case "milestone":
if x.Milestone != nil {
return x.Milestone.Title