Skip to content

Commit 258749f

Browse files
committed
docs: recommend 24-hour format for English schedules
Add test confirming 24-hour format support (e.g., "every day at 16:00"). Update docs to prefer 24-hour format over ambiguous 12-hour am/pm.
1 parent f8306fe commit 258749f

File tree

2 files changed

+17
-2
lines changed

2 files changed

+17
-2
lines changed

README.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,9 +266,16 @@ Full form:
266266
**Size**: `512K`, `10M`, `1G`, or bytes
267267

268268
**Schedule**: Cron or English phrase
269+
269270
- Cron: `min hour day month weekday` (e.g., `*/5 * * * *` = every 5 minutes)
270-
- English: `every 5 minutes`, `every day at 4:00 pm`, `7pm every Thursday`, `Sunday at 12:00`, `midnight on Tuesdays`
271-
- Note: `12 am` = midnight (00:00), `12 pm` = noon (12:00)
271+
- English examples:
272+
- `every 5 minutes`
273+
- `every day at 16:00`
274+
- `7pm every Thursday`
275+
- `Sunday at 12:00`
276+
- `midnight on Tuesdays`
277+
- 24-hour format preferred
278+
- 12-hour edge case: `12 am` = midnight (00:00), `12 pm` = noon (12:00)
272279

273280
### Environment variable priority
274281

src/actor/job/tick.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,14 @@ mod tests {
178178
assert_eq!(next, Utc.with_ymd_and_hms(2025, 1, 15, 12, 0, 0).unwrap());
179179
}
180180

181+
#[test]
182+
fn english_24h_format() {
183+
let schedule = parse_schedule("every day at 16:00");
184+
let now = Utc.with_ymd_and_hms(2025, 1, 15, 10, 0, 0).unwrap();
185+
let next = schedule_next_from(&schedule, UTC, now).unwrap();
186+
assert_eq!(next, Utc.with_ymd_and_hms(2025, 1, 15, 16, 0, 0).unwrap());
187+
}
188+
181189
#[test]
182190
fn english_7pm_every_thursday() {
183191
let schedule = parse_schedule("7pm every Thursday");

0 commit comments

Comments
 (0)