Visitar URL original
Add `datetime.UTC` alias for `datetime.timezone.utc` · Issue #91928 · python/cpython · GitHub
Skip to content

Add datetime.UTC alias for datetime.timezone.utc #91928

Description

@pganssle

Feature or enhancement

Right now, the UTC singleton is only available as a class-level attribute on datetime.timezone, but I think a lot of people would probably like to be able to do this:

from datetime import UTC

Since datetime.timezone is a class, not a module, right now it is necessary for each person to define their own UTC alias (if they want such a thing) in two lines:

from datetime import timezone
UTC = timezone.utc

This isn't a huge deal, but I think it would be pretty unambiguous what it refers to and might be a nice quality of life improvement.

CC: @abalkin

Activity

  1. pganssle commented on Apr 27, 2022

    @pganssle
    MemberAuthor

    I tracked down the decision between datetime.timezone.utc and datetime.UTC to this conversation primarily between @abalkin and @brettcannon. It was definitely a deliberate decision to use timezone.utc, but it doesn't seem like there were especially strong feelings about this.

    One counter-example to the "datetime seems to put its attributes in class namespaces" is that MINYEAR and MAXYEAR are global module-level constants. I am mostly convinced that we should go forward with this, particularly since a contributor has already written an excellent PR (#91973) implementing it. Any objections from @brettcannon or @abalkin?

  2. brettcannon commented on Apr 28, 2022

    @brettcannon
    Member

    Definitely no objections from me. 🙂

  3. added a commit that references this issue on May 3, 2022
    65fbe0d
  4. added a commit that references this issue on May 3, 2022
  5. pganssle commented on May 3, 2022

    @pganssle
    MemberAuthor

    Re-opening because this needs a What's new entry, but I selfishly didn't want to induce a merge conflict with #92177, so I'll add a What's New entry after that one gets merged.

  6. added 3 commits that reference this issue on May 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    type-featureA feature request or enhancement

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions