ariebovenberg/whenever
⏰ Type-safe datetimes for Python that get DST right. Rust or pure Python, your choice observed · 2026-08-28
Health v2 · maintenance only
93/100
- Activity 99
- Release rhythm 97
- Longevity 73
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 10.0
- age_days: 1027
- days_rel: 22
- days_push: 9
- n_releases_24m: 37
Adoption not part of the score
2398 stars · 37 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Whenever is a Python library providing type-safe datetime and timezone handling that prevents naive/aware mixing at the type level and correctly handles DST in all arithmetic. It offers both a fast Rust extension and a pure Python implementation.
Use cases
- parse and format RFC 3339 timestamps safely
- avoid mixing naive and aware datetimes in Python
- handle daylight saving time correctly in datetime arithmetic
- convert datetimes between timezones and UTC offsets
- get faster datetime operations than the standard library
- add strict type checking for datetime usage with mypy
When to choose
- you need DST-correct datetime arithmetic in Python
- you want type errors instead of runtime bugs for naive/aware mixing
- performance matters and you want faster-than-stdlib datetimes
- you want a choice between Rust-backed and pure Python implementations
When to avoid
- you need a drop-in replacement for datetime.datetime
- your project cannot add third-party dependencies
- you need date parsing beyond datetime scope like natural language dates
Facets
library · maturity active
date-time type-system serialization developer-tools programming-languages python rust cross-platform datetime timezone dst type-safety mypy rfc3339 utc pure-python algorithms
1 source
- readme: https://github.com/ariebovenberg/whenever · fetched 2026-08-28 · 7e245bba588e
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| ariebovenberg/whenever | main | 93 |
For agents
markdown · JSON · MCP: product_card(name="ariebovenberg/whenever")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem