git: 2bb8adc55d8b - main - devel/py-cel-python: Add py-cel-python 0.2.0

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Sat, 29 Nov 2025 23:53:18 UTC
The branch main has been updated by sunpoet:

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

commit 2bb8adc55d8b2de281c074d778da10638c6acf6d
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2025-11-29 23:20:26 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2025-11-29 23:20:26 +0000

    devel/py-cel-python: Add py-cel-python 0.2.0
    
    Pure Python implementation of Google Common Expression Language.
    
    This implementation has minimal dependencies, runs quickly, and can be embedded
    into Python-based applications. Specifically, the intent is to be part of Cloud
    Custodian, C7N, as part of the security policy filter.
---
 devel/Makefile                                 |  1 +
 devel/py-cel-python/Makefile                   | 29 ++++++++++++++++++++++++++
 devel/py-cel-python/distinfo                   |  3 +++
 devel/py-cel-python/files/patch-pyproject.toml | 11 ++++++++++
 devel/py-cel-python/pkg-descr                  |  5 +++++
 5 files changed, 49 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 6f6800a0bb8c..a66af92b1d0e 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4645,6 +4645,7 @@
     SUBDIR += py-cbor2
     SUBDIR += py-cclib
     SUBDIR += py-cdg
+    SUBDIR += py-cel-python
     SUBDIR += py-celery
     SUBDIR += py-celery-progress
     SUBDIR += py-celery-singleton
diff --git a/devel/py-cel-python/Makefile b/devel/py-cel-python/Makefile
new file mode 100644
index 000000000000..12e933ad3a7a
--- /dev/null
+++ b/devel/py-cel-python/Makefile
@@ -0,0 +1,29 @@
+PORTNAME=	cel-python
+PORTVERSION=	0.2.0
+CATEGORIES=	devel python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+DISTNAME=	cel_python-${PORTVERSION}
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	Pure Python implementation of Google Common Expression Language
+WWW=		https://cloud-custodian.github.io/cel-python/build/html/ \
+		https://github.com/cloud-custodian/cel-python
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}poetry-core>=0:devel/py-poetry-core@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}jmespath>=1.0.1<2:devel/py-jmespath@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}lark>=0.12.0:devel/py-lark@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}python-dateutil>=2.9.0.post0<3:devel/py-python-dateutil@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pyyaml>=6.0.1<7:devel/py-pyyaml@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}types-python-dateutil>=2.8.19<3:devel/py-types-python-dateutil@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}types-pyyaml>=6.0.12.20240311<7:devel/py-types-pyyaml@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	autoplist concurrent pep517
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-cel-python/distinfo b/devel/py-cel-python/distinfo
new file mode 100644
index 000000000000..2710c2362ba5
--- /dev/null
+++ b/devel/py-cel-python/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1763853132
+SHA256 (cel_python-0.2.0.tar.gz) = 75de72a5cf223ec690b236f0cc24da267219e667bd3e7f8f4f20595fcc1c0c0f
+SIZE (cel_python-0.2.0.tar.gz) = 67185
diff --git a/devel/py-cel-python/files/patch-pyproject.toml b/devel/py-cel-python/files/patch-pyproject.toml
new file mode 100644
index 000000000000..71b2801e1e7c
--- /dev/null
+++ b/devel/py-cel-python/files/patch-pyproject.toml
@@ -0,0 +1,11 @@
+--- pyproject.toml.orig	2025-02-14 11:36:11 UTC
++++ pyproject.toml
+@@ -45,7 +45,7 @@ types-pyyaml = "^6.0.12.20240311"
+ python-dateutil = "^2.9.0.post0"
+ pyyaml = "^6.0.1"
+ types-pyyaml = "^6.0.12.20240311"
+-types-python-dateutil = "^2.9.0.20240316"
++types-python-dateutil = "^2.8.19"
+ 
+ [tool.poetry.group.dev.dependencies]
+ behave = "^1.2.6"
diff --git a/devel/py-cel-python/pkg-descr b/devel/py-cel-python/pkg-descr
new file mode 100644
index 000000000000..ef391e5c3686
--- /dev/null
+++ b/devel/py-cel-python/pkg-descr
@@ -0,0 +1,5 @@
+Pure Python implementation of Google Common Expression Language.
+
+This implementation has minimal dependencies, runs quickly, and can be embedded
+into Python-based applications. Specifically, the intent is to be part of Cloud
+Custodian, C7N, as part of the security policy filter.