From 92436b8b2ac4e6bb712905b57ffab4d73abddcb1 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Wed, 5 Feb 2025 03:06:58 -0800 Subject: [PATCH] add `timetzdata` build tag to binary releases (#33463) (#33503) Backport #33463 Co-authored-by: techknowlogick Co-authored-by: wxiaoguang --- main_timezones.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 main_timezones.go diff --git a/main_timezones.go b/main_timezones.go new file mode 100644 index 0000000000..e1233007c6 --- /dev/null +++ b/main_timezones.go @@ -0,0 +1,16 @@ +// Copyright 2025 The Gitea Authors. All rights reserved. +// SPDX-License-Identifier: MIT + +//go:build windows + +package main + +// Golang has the ability to load OS's timezone data from most UNIX systems (https://github.com/golang/go/blob/master/src/time/zoneinfo_unix.go) +// Even if the timezone data is missing, users could install the related packages to get it. +// But on Windows, although `zoneinfo_windows.go` tries to load the timezone data from Windows registry, +// some users still suffer from the issue that the timezone data is missing: https://github.com/go-gitea/gitea/issues/33235 +// So we import the tzdata package to make sure the timezone data is included in the binary. +// +// For non-Windows package builders, they could still use the "TAGS=timetzdata" to include the tzdata package in the binary. +// If we decided to add the tzdata for other platforms, modify the "go:build" directive above. +import _ "time/tzdata"