git: 486573d391b5 - main - devel/py-protovalidate: Add py-protovalidate 1.0.0

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

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

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

    devel/py-protovalidate: Add py-protovalidate 1.0.0
    
    Protovalidate is the semantic validation library for Protobuf. It provides
    standard annotations to validate common rules on messages and fields, as well as
    the ability to use CEL to write custom rules. It's the next generation of
    protoc-gen-validate.
    
    With Protovalidate, you can annotate your Protobuf messages with both standard
    and custom validation rules.
---
 devel/Makefile                   |  1 +
 devel/py-protovalidate/Makefile  | 26 ++++++++++++++++++++++++++
 devel/py-protovalidate/distinfo  |  3 +++
 devel/py-protovalidate/pkg-descr |  7 +++++++
 4 files changed, 37 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index a66af92b1d0e..71b2f3ac49ef 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -5586,6 +5586,7 @@
     SUBDIR += py-proto-plus
     SUBDIR += py-protobuf
     SUBDIR += py-protobuf-compiler
+    SUBDIR += py-protovalidate
     SUBDIR += py-proxmoxer
     SUBDIR += py-psygnal
     SUBDIR += py-ptable
diff --git a/devel/py-protovalidate/Makefile b/devel/py-protovalidate/Makefile
new file mode 100644
index 000000000000..5c633cbe4486
--- /dev/null
+++ b/devel/py-protovalidate/Makefile
@@ -0,0 +1,26 @@
+PORTNAME=	protovalidate
+PORTVERSION=	1.0.0
+CATEGORIES=	devel python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	Protocol Buffer Validation for Python
+WWW=		https://protovalidate.com/ \
+		https://github.com/bufbuild/protovalidate-python
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}hatch-vcs>=0:devel/py-hatch-vcs@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}cel-python>=0.2<0.3:devel/py-cel-python@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}google-re2>=1.1.20250722:devel/py-google-re2@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}protobuf>=5,1:devel/py-protobuf@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	autoplist concurrent pep517
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-protovalidate/distinfo b/devel/py-protovalidate/distinfo
new file mode 100644
index 000000000000..4453ca64dede
--- /dev/null
+++ b/devel/py-protovalidate/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1763853134
+SHA256 (protovalidate-1.0.0.tar.gz) = 926f7a212fed9190d00cc076fa24ef5e48a404b5577465028697f4dea8c4a507
+SIZE (protovalidate-1.0.0.tar.gz) = 215286
diff --git a/devel/py-protovalidate/pkg-descr b/devel/py-protovalidate/pkg-descr
new file mode 100644
index 000000000000..fb8c8f5de16d
--- /dev/null
+++ b/devel/py-protovalidate/pkg-descr
@@ -0,0 +1,7 @@
+Protovalidate is the semantic validation library for Protobuf. It provides
+standard annotations to validate common rules on messages and fields, as well as
+the ability to use CEL to write custom rules. It's the next generation of
+protoc-gen-validate.
+
+With Protovalidate, you can annotate your Protobuf messages with both standard
+and custom validation rules.