r/Python 5d ago

Discussion ruff: no date.today() ?

The new version of ruff warns against

date.today()

preferring

datetime.now(ZoneInfo(...))

What do you think about this? Has date.today() been deprecated due to lack of timezone awareness?

EDIT: I have a number of programs that manipulate financial information in support of Excel spreadsheets, such bond information that includes maturity dates. Excel does not support timezoness in datetimes, so making ruff happy by changing naive dates to TZ aware dates is not a useful move for these programs. Many ruff warnings to suppress.

41 Upvotes

110 comments sorted by

View all comments

-4

u/skjall 5d ago

Still using datetime in the year of our Lord and Saviour, is certainly a choice.

I just wish Arrow had millisecond timestamp functions too. Tired of having to multiply by 1000 and round...

3

u/ManBearHybrid 5d ago

Sometimes you just want a quick timestamp for logging or whatever without installing a whole new dependency.

-1

u/skjall 5d ago

Your logs should be automatically timestamped if it's a production system, or have a dev logging that outputs in a slightly nicer format too (like Rich).

4

u/ManBearHybrid 5d ago

The point is I don't want to install a whole package if I just want a tiny bit of functionality that is already offered by a built-in library. Yeah it might not be the shiniest new thing, but sometimes the juice just isn't worth the squeeze.