From 20743c29daf2cae609314b7f71e51ff88bdd371b Mon Sep 17 00:00:00 2001 From: Thomas Zerr Date: Thu, 26 Jun 2025 14:47:23 +0200 Subject: [PATCH] Change default time zone for cron expressions Squash commits of branch feature/cron-using-system-time-zone: - Change default time zone for cron expressions --- gradle/changelog/cron-expression-time-zone.yaml | 2 ++ .../src/main/java/sonia/scm/schedule/CronExpression.java | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 gradle/changelog/cron-expression-time-zone.yaml diff --git a/gradle/changelog/cron-expression-time-zone.yaml b/gradle/changelog/cron-expression-time-zone.yaml new file mode 100644 index 0000000000..fadb1ef476 --- /dev/null +++ b/gradle/changelog/cron-expression-time-zone.yaml @@ -0,0 +1,2 @@ +- type: changed + description: The default time zone for cron expression is now the system default time zone instead of UTC diff --git a/scm-webapp/src/main/java/sonia/scm/schedule/CronExpression.java b/scm-webapp/src/main/java/sonia/scm/schedule/CronExpression.java index e3b3fa8069..6b5b820bd4 100644 --- a/scm-webapp/src/main/java/sonia/scm/schedule/CronExpression.java +++ b/scm-webapp/src/main/java/sonia/scm/schedule/CronExpression.java @@ -22,6 +22,7 @@ import com.cronutils.model.definition.CronDefinition; import com.cronutils.model.definition.CronDefinitionBuilder; import com.cronutils.model.time.ExecutionTime; import com.cronutils.parser.CronParser; +import com.google.common.annotations.VisibleForTesting; import java.time.Clock; import java.time.Duration; @@ -35,9 +36,10 @@ final class CronExpression { private final ExecutionTime executionTime; CronExpression(String expression) { - this(Clock.systemUTC(), expression); + this(Clock.systemDefaultZone(), expression); } + @VisibleForTesting CronExpression(Clock clock, String expression) { this.clock = clock; this.expression = expression;