From 141baae2b6a2a2cc3a3b1878ca1d0b80b13ab03e Mon Sep 17 00:00:00 2001 From: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Date: Tue, 30 Jun 2026 18:50:57 +0300 Subject: [PATCH] Lazy import for Python 3.15+ --- src/humanize/__init__.py | 9 +++++++++ src/humanize/filesize.py | 2 ++ src/humanize/number.py | 2 ++ src/humanize/time.py | 2 ++ 4 files changed, 15 insertions(+) diff --git a/src/humanize/__init__.py b/src/humanize/__init__.py index 6fb99593..4f54bc46 100644 --- a/src/humanize/__init__.py +++ b/src/humanize/__init__.py @@ -2,6 +2,15 @@ from __future__ import annotations +__lazy_modules__ = { + "humanize._version", + "humanize.filesize", + "humanize.i18n", + "humanize.lists", + "humanize.number", + "humanize.time", +} + from humanize.filesize import naturalsize from humanize.i18n import activate, deactivate, decimal_separator, thousands_separator from humanize.lists import natural_list diff --git a/src/humanize/filesize.py b/src/humanize/filesize.py index 315261aa..fb675fdc 100644 --- a/src/humanize/filesize.py +++ b/src/humanize/filesize.py @@ -2,6 +2,8 @@ from __future__ import annotations +__lazy_modules__ = {"humanize.i18n", "math"} + from math import log from humanize.i18n import _gettext as _ diff --git a/src/humanize/number.py b/src/humanize/number.py index 9224a103..2fb22c60 100644 --- a/src/humanize/number.py +++ b/src/humanize/number.py @@ -2,6 +2,8 @@ from __future__ import annotations +__lazy_modules__ = {"bisect"} + import bisect from .i18n import _gettext as _ diff --git a/src/humanize/time.py b/src/humanize/time.py index 8651a981..4a07d528 100644 --- a/src/humanize/time.py +++ b/src/humanize/time.py @@ -5,6 +5,8 @@ from __future__ import annotations +__lazy_modules__ = {"humanize.i18n", "humanize.number"} + from enum import Enum from functools import total_ordering