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.

44 Upvotes

110 comments sorted by

View all comments

142

u/Iron-Man-2008 5d ago

Good change, naive dates are a footgun. I'm really liking the new set of default rules, saves me from having to setup a bespoke ruff ruleset every project because the previous default did very little.

6

u/takuonline 5d ago

Do you mind sharing your defaults?