git: e811dcca783f - main - devel/py-xmod: New port: Turn any object into a module

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Thu, 16 Oct 2025 23:15:45 UTC
The branch main has been updated by yuri:

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

commit e811dcca783ff117fd1a896c6e5a98c91de80e61
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2025-10-16 20:13:03 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2025-10-16 23:15:16 +0000

    devel/py-xmod: New port: Turn any object into a module
---
 devel/Makefile          |  1 +
 devel/py-xmod/Makefile  | 21 +++++++++++++++++++++
 devel/py-xmod/distinfo  |  3 +++
 devel/py-xmod/pkg-descr |  6 ++++++
 4 files changed, 31 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index f571dcd4ac4b..f7b156070556 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -6255,6 +6255,7 @@
     SUBDIR += py-xdoctest
     SUBDIR += py-xerox
     SUBDIR += py-xmltodict
+    SUBDIR += py-xmod
     SUBDIR += py-xsdata
     SUBDIR += py-xsdata-attrs
     SUBDIR += py-xsdata-plantuml
diff --git a/devel/py-xmod/Makefile b/devel/py-xmod/Makefile
new file mode 100644
index 000000000000..c3d07862469a
--- /dev/null
+++ b/devel/py-xmod/Makefile
@@ -0,0 +1,21 @@
+PORTNAME=	xmod
+DISTVERSION=	1.8.1
+CATEGORIES=	devel python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Turn any object into a module
+WWW=		https://github.com/rec/xmod
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}poetry-core>0:devel/py-poetry-core@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	pep517 autoplist
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-xmod/distinfo b/devel/py-xmod/distinfo
new file mode 100644
index 000000000000..f39a79ee9ae8
--- /dev/null
+++ b/devel/py-xmod/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1760642450
+SHA256 (xmod-1.8.1.tar.gz) = 38c76486b9d672c546d57d8035df0beb7f4a9b088bc3fb2de5431ae821444377
+SIZE (xmod-1.8.1.tar.gz) = 3988
diff --git a/devel/py-xmod/pkg-descr b/devel/py-xmod/pkg-descr
new file mode 100644
index 000000000000..3e877b2ea966
--- /dev/null
+++ b/devel/py-xmod/pkg-descr
@@ -0,0 +1,6 @@
+xmod is a Python library that allows you to give modules attributes of
+other Python objects. A module can be made callable, or it can be
+indexed like a list, or it can have a __str__() method that gets
+called when you print it.
+
+xmod can be used as a decorator or as a simple function.