summaryrefslogtreecommitdiff
path: root/devel/py-lazy_imports
diff options
context:
space:
mode:
Diffstat (limited to 'devel/py-lazy_imports')
-rw-r--r--devel/py-lazy_imports/Makefile21
-rw-r--r--devel/py-lazy_imports/distinfo3
-rw-r--r--devel/py-lazy_imports/pkg-descr11
3 files changed, 35 insertions, 0 deletions
diff --git a/devel/py-lazy_imports/Makefile b/devel/py-lazy_imports/Makefile
new file mode 100644
index 000000000000..612dcd97ad8b
--- /dev/null
+++ b/devel/py-lazy_imports/Makefile
@@ -0,0 +1,21 @@
+PORTNAME= lazy_imports
+PORTVERSION= 1.0.1
+CATEGORIES= devel python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= otis@FreeBSD.org
+COMMENT= Python package helps to create lazy modules
+WWW= https://github.com/bachorp/lazy-imports
+
+LICENSE= APACHE20
+
+BUILD_DEPENDS= ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>=0.42.0:devel/py-wheel@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= autoplist concurrent pep517
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-lazy_imports/distinfo b/devel/py-lazy_imports/distinfo
new file mode 100644
index 000000000000..f0e7da94f5b9
--- /dev/null
+++ b/devel/py-lazy_imports/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1757922333
+SHA256 (lazy_imports-1.0.1.tar.gz) = 7d3e4b1547cb574ec7ef3c47a074673e2612330b2b50bf7eec939f2c393fc261
+SIZE (lazy_imports-1.0.1.tar.gz) = 24484
diff --git a/devel/py-lazy_imports/pkg-descr b/devel/py-lazy_imports/pkg-descr
new file mode 100644
index 000000000000..665fa0186f94
--- /dev/null
+++ b/devel/py-lazy_imports/pkg-descr
@@ -0,0 +1,11 @@
+This python utility package helps to create lazy modules. A lazy module defers
+loading (some of) its attributes until these attributes are first accessed. The
+module's lazy attributes in turn are attributes of other modules. These other
+modules will be imported/loaded only when (and if) associated attributes are
+used. A lazy import strategy can drastically reduce runtime and memory
+consumption.
+
+Additionally, this package provides a utility for optional imports with which
+one can import a module globally while triggering associated import errors only
+at use-sites (when and if a dependency is actually required, for example in the
+context of a specific functionality).