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;