git: 773af17f8ce9 - main - devel/py-validate-pyproject: Add py-validate-pyproject 0.7.1

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Sat, 16 Apr 2022 04:20:51 UTC
The branch main has been updated by sunpoet:

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

commit 773af17f8ce91749a5c8c5e86fbb36612554e9f9
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2022-04-16 03:39:04 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2022-04-16 04:19:03 +0000

    devel/py-validate-pyproject: Add py-validate-pyproject 0.7.1
    
    With the approval of PEP 517 and PEP 518, the Python community shifted towards a
    strong focus on standardisation for packaging software, which allows more
    freedom when choosing tools during development and make sure packages created
    using different technologies can interoperate without the need for custom
    installation procedures.
    
    This shift became even more clear when PEP 621 was also approved, as a
    standardised way of specifying project metadata and dependencies.
    
    validate-pyproject was born in this context, with the mission of validating
    pyproject.toml files, and make sure they are compliant with the standards and
    PEPs. Behind the scenes, validate-pyproject relies on JSON Schema files, which,
    in turn, are also a standardised way of checking if a given data structure
    complies with a certain specification.
    
    WWW: https://github.com/abravalheri/validate-pyproject
---
 devel/Makefile                        |  1 +
 devel/py-validate-pyproject/Makefile  | 36 +++++++++++++++++++++++++++++++++++
 devel/py-validate-pyproject/distinfo  |  3 +++
 devel/py-validate-pyproject/pkg-descr | 16 ++++++++++++++++
 4 files changed, 56 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 73db3bbd92ac..0e54c0fa1d49 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -5380,6 +5380,7 @@
     SUBDIR += py-user_agents
     SUBDIR += py-userpath
     SUBDIR += py-uvloop
+    SUBDIR += py-validate-pyproject
     SUBDIR += py-validators
     SUBDIR += py-validictory
     SUBDIR += py-vcrpy
diff --git a/devel/py-validate-pyproject/Makefile b/devel/py-validate-pyproject/Makefile
new file mode 100644
index 000000000000..b1c83f9bbd7e
--- /dev/null
+++ b/devel/py-validate-pyproject/Makefile
@@ -0,0 +1,36 @@
+# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
+
+PORTNAME=	validate-pyproject
+PORTVERSION=	0.7.1
+CATEGORIES=	devel python
+MASTER_SITES=	CHEESESHOP
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	Validation library and CLI tool for checking on pyproject.toml files using JSON schema
+
+LICENSE=	MPL20
+LICENSE_FILE=	${WRKSRC}/LICENSE.txt
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools_scm>=5:devel/py-setuptools_scm@${PY_FLAVOR}
+
+USES=		python:3.7+
+USE_PYTHON=	autoplist concurrent distutils
+
+NO_ARCH=	yes
+
+OPTIONS_DEFINE=	ALL
+OPTIONS_DEFAULT=ALL
+ALL_DESC=	All functions
+
+ALL_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}packaging>=20.4:devel/py-packaging@${PY_FLAVOR} \
+			${PYTHON_PKGNAMEPREFIX}tomli>=1.2.1:textproc/py-tomli@${PY_FLAVOR} \
+			${PYTHON_PKGNAMEPREFIX}trove-classifiers>=2021.10.20:devel/py-trove-classifiers@${PY_FLAVOR}
+
+.include <bsd.port.pre.mk>
+
+.if ${PYTHON_REL} < 30800
+RUN_DEPENDS+=	${PYTHON_PKGNAMEPREFIX}importlib-metadata>=0:devel/py-importlib-metadata@${PY_FLAVOR}
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/devel/py-validate-pyproject/distinfo b/devel/py-validate-pyproject/distinfo
new file mode 100644
index 000000000000..543c28cc419c
--- /dev/null
+++ b/devel/py-validate-pyproject/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1649423648
+SHA256 (validate-pyproject-0.7.1.tar.gz) = e5ea929a373c7cddb7a7fc34fe4999b341fc4d98fb0a19e570be09f92fb438a4
+SIZE (validate-pyproject-0.7.1.tar.gz) = 102987
diff --git a/devel/py-validate-pyproject/pkg-descr b/devel/py-validate-pyproject/pkg-descr
new file mode 100644
index 000000000000..81e204851424
--- /dev/null
+++ b/devel/py-validate-pyproject/pkg-descr
@@ -0,0 +1,16 @@
+With the approval of PEP 517 and PEP 518, the Python community shifted towards a
+strong focus on standardisation for packaging software, which allows more
+freedom when choosing tools during development and make sure packages created
+using different technologies can interoperate without the need for custom
+installation procedures.
+
+This shift became even more clear when PEP 621 was also approved, as a
+standardised way of specifying project metadata and dependencies.
+
+validate-pyproject was born in this context, with the mission of validating
+pyproject.toml files, and make sure they are compliant with the standards and
+PEPs. Behind the scenes, validate-pyproject relies on JSON Schema files, which,
+in turn, are also a standardised way of checking if a given data structure
+complies with a certain specification.
+
+WWW: https://github.com/abravalheri/validate-pyproject