[chore] Serialize times as UTC ISO8601 instead of RFC3339 (#602)

* add time util to mimic utc ISO8601

* use ISO8601 when serializing to frontend

* update test notification
This commit is contained in:
tobi
2022-05-24 18:21:27 +02:00
committed by GitHub
parent 196d542e4a
commit a54efa09f9
4 changed files with 93 additions and 10 deletions

30
internal/util/time.go Normal file
View File

@ -0,0 +1,30 @@
/*
GoToSocial
Copyright (C) 2021-2022 GoToSocial Authors admin@gotosocial.org
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package util
import "time"
// ISO8601 is a formatter for serializing times that forces ISO8601 behavior.
const ISO8601 = "2006-01-02T15:04:05Z"
// FormatISO8601 converts the given time to UTC and then formats it
// using the ISO8601 const, which the Mastodon API is able to understand.
func FormatISO8601(t time.Time) string {
return t.UTC().Format(ISO8601)
}