git: 9f10edecc027 - main - devel/py-lark: Add py-lark 1.1.2

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Thu, 09 Jun 2022 23:34:44 UTC
The branch main has been updated by sunpoet:

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

commit 9f10edecc0273931d628fe778df04d80d1a94279
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2022-06-09 23:32:45 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2022-06-09 23:32:45 +0000

    devel/py-lark: Add py-lark 1.1.2
    
    ark is a parsing toolkit for Python, built with a focus on ergonomics,
    performance and modularity.
    
    Lark can parse all context-free languages. To put it simply, it means that it is
    capable of parsing almost any programming language out there, and to some degree
    most natural languages too.
    
    What can it do?
    - Parse all context-free grammars, and handle any ambiguity gracefully
    - Build an annotated parse-tree automagically, no construction code required.
    - Provide first-rate performance in terms of both Big-O complexity and measured
      run-time (considering that this is Python ;)
    - Run on every Python interpreter (it's pure-python)
    - Generate a stand-alone parser (for LALR(1) grammars)
    - And many more features. Read ahead and find out!
    
    Most importantly, Lark will save you time and prevent you from getting parsing
    headaches.
    
    WWW: https://github.com/lark-parser/lark
---
 devel/Makefile          |  1 +
 devel/py-lark/Makefile  | 30 ++++++++++++++++++++++++++++++
 devel/py-lark/distinfo  |  3 +++
 devel/py-lark/pkg-descr | 20 ++++++++++++++++++++
 4 files changed, 54 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index d2d6b4771d85..7bfde6d375e9 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4749,6 +4749,7 @@
     SUBDIR += py-kitchen
     SUBDIR += py-knack
     SUBDIR += py-l18n
+    SUBDIR += py-lark
     SUBDIR += py-lark-parser
     SUBDIR += py-launchpadlib
     SUBDIR += py-lazr.config
diff --git a/devel/py-lark/Makefile b/devel/py-lark/Makefile
new file mode 100644
index 000000000000..a5a7168969e9
--- /dev/null
+++ b/devel/py-lark/Makefile
@@ -0,0 +1,30 @@
+# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
+
+PORTNAME=	lark
+PORTVERSION=	1.1.2
+CATEGORIES=	devel python
+MASTER_SITES=	CHEESESHOP
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	Modern parsing library
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		python:3.7+
+USE_PYTHON=	autoplist concurrent distutils
+
+NO_ARCH=	yes
+
+OPTIONS_DEFINE=	ATOMIC_CACHE NEARLEY REGEX
+OPTIONS_DEFAULT=ATOMIC_CACHE REGEX
+ATOMIC_CACHE_DESC=	Multiprocess caching and crash recovery support
+NEARLEY_DESC=		Import grammars from Nearley.js
+REGEX_DESC=		Use third-party regex instead of standard library re
+
+ATOMIC_CACHE_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}atomicwrites>=0:devel/py-atomicwrites@${PY_FLAVOR}
+NEARLEY_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}Js2Py>=0:devel/py-Js2Py@${PY_FLAVOR}
+REGEX_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}regex>=0:textproc/py-regex@${PY_FLAVOR}
+
+.include <bsd.port.mk>
diff --git a/devel/py-lark/distinfo b/devel/py-lark/distinfo
new file mode 100644
index 000000000000..c862c4b8b14b
--- /dev/null
+++ b/devel/py-lark/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1654805366
+SHA256 (lark-1.1.2.tar.gz) = 7a8d0c07d663da9391d7faee1bf1d7df4998c47ca43a593cbef5c7566acd057a
+SIZE (lark-1.1.2.tar.gz) = 243201
diff --git a/devel/py-lark/pkg-descr b/devel/py-lark/pkg-descr
new file mode 100644
index 000000000000..faa89427aaba
--- /dev/null
+++ b/devel/py-lark/pkg-descr
@@ -0,0 +1,20 @@
+ark is a parsing toolkit for Python, built with a focus on ergonomics,
+performance and modularity.
+
+Lark can parse all context-free languages. To put it simply, it means that it is
+capable of parsing almost any programming language out there, and to some degree
+most natural languages too.
+
+What can it do?
+- Parse all context-free grammars, and handle any ambiguity gracefully
+- Build an annotated parse-tree automagically, no construction code required.
+- Provide first-rate performance in terms of both Big-O complexity and measured
+  run-time (considering that this is Python ;)
+- Run on every Python interpreter (it's pure-python)
+- Generate a stand-alone parser (for LALR(1) grammars)
+- And many more features. Read ahead and find out!
+
+Most importantly, Lark will save you time and prevent you from getting parsing
+headaches.
+
+WWW: https://github.com/lark-parser/lark