https://www.joelonsoftware.com/2006/06/16/my-first-billg-rev...
Which, incidentally, is a great primer for younger developers on both what obsessive software quality looks like and why datetimes are a hard problem.
2024-01-30 -> 2024-01-29 2025-01-30 -> 2025-01-28
Polars has an offset-by function which is a bit more explicit about how you want to handle date math. “Calendar date” vs number of days.
Edit: just ran polars and I’m not in love with its answer either.
https://www.joelonsoftware.com/2006/06/16/my-first-billg-rev...
Which, incidentally, is a great primer for younger developers on both what obsessive software quality looks like and why datetimes are a hard problem.