diff options
Diffstat (limited to 'django')
| -rw-r--r-- | django/utils/timezone.py | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/django/utils/timezone.py b/django/utils/timezone.py index 33c0440095..d22e358538 100644 --- a/django/utils/timezone.py +++ b/django/utils/timezone.py @@ -19,7 +19,7 @@ from asgiref.local import Local from django.conf import settings from django.utils.deprecation import RemovedInDjango50Warning -__all__ = [ +__all__ = [ # noqa for utc RemovedInDjango50Warning. "utc", "get_fixed_timezone", "get_default_timezone", @@ -41,7 +41,18 @@ __all__ = [ NOT_PASSED = object() -utc = timezone.utc +def __getattr__(name): + if name != "utc": + raise AttributeError(f"module {__name__!r} has no attribute {name!r}") + + warnings.warn( + "The django.utils.timezone.utc alias is deprecated. " + "Please update your code to use datetime.timezone.utc instead.", + RemovedInDjango50Warning, + stacklevel=2, + ) + + return timezone.utc def get_fixed_timezone(offset): @@ -339,3 +350,11 @@ def _datetime_ambiguous_or_imaginary(dt, tz): return False return tz.utcoffset(dt.replace(fold=not dt.fold)) != tz.utcoffset(dt) + + +# RemovedInDjango50Warning. +_DIR = dir() + + +def __dir__(): + return sorted([*_DIR, "utc"]) |
