git: 57d6620ee72e - main - devel/py-lazy_loader: New port: Load subpackages and functions on demand easily

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Tue, 21 Feb 2023 09:05:37 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=57d6620ee72e7614833e190de02b213f58c9e0e7

commit 57d6620ee72e7614833e190de02b213f58c9e0e7
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2023-02-21 08:44:09 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2023-02-21 09:05:31 +0000

    devel/py-lazy_loader: New port: Load subpackages and functions on demand easily
---
 devel/Makefile                 |  1 +
 devel/py-lazy_loader/Makefile  | 23 +++++++++++++++++++++++
 devel/py-lazy_loader/distinfo  |  3 +++
 devel/py-lazy_loader/pkg-descr |  3 +++
 4 files changed, 30 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 0f43ffaaca65..7191b0eecdfe 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4808,6 +4808,7 @@
     SUBDIR += py-lazr.uri
     SUBDIR += py-lazy
     SUBDIR += py-lazy-object-proxy
+    SUBDIR += py-lazy_loader
     SUBDIR += py-libcst
     SUBDIR += py-libcst03
     SUBDIR += py-libioc
diff --git a/devel/py-lazy_loader/Makefile b/devel/py-lazy_loader/Makefile
new file mode 100644
index 000000000000..ad6d7928580f
--- /dev/null
+++ b/devel/py-lazy_loader/Makefile
@@ -0,0 +1,23 @@
+PORTNAME=	lazy_loader
+PORTVERSION=	0.1
+CATEGORIES=	devel python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Load subpackages and functions on demand easily
+WWW=		https://scientific-python.org/specs/spec-0001/
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE.md
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}flit-core>=3.7<4:devel/py-flit-core@${PY_FLAVOR}
+TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}codecov>=2.1:devel/py-codecov@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pytest-cov>0:devel/py-pytest-cov@${PY_FLAVOR}
+
+USES=		python:3.7+
+USE_PYTHON=	pep517 autoplist pytest
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-lazy_loader/distinfo b/devel/py-lazy_loader/distinfo
new file mode 100644
index 000000000000..4a6342e118f5
--- /dev/null
+++ b/devel/py-lazy_loader/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1676968364
+SHA256 (lazy_loader-0.1.tar.gz) = 77ce7f2737ebabf9c0ff73b4a99c947876d74d24c2f026544e32246ecca5feca
+SIZE (lazy_loader-0.1.tar.gz) = 10745
diff --git a/devel/py-lazy_loader/pkg-descr b/devel/py-lazy_loader/pkg-descr
new file mode 100644
index 000000000000..f7b788928b88
--- /dev/null
+++ b/devel/py-lazy_loader/pkg-descr
@@ -0,0 +1,3 @@
+lazy_loader serves these purposes:
+* Allow subpackages to be made visible to users without incurring import costs
+* Allow external libraries to be imported only when used, improving import times