aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--devel/Makefile1
-rw-r--r--devel/py-lark/Makefile30
-rw-r--r--devel/py-lark/distinfo3
-rw-r--r--devel/py-lark/pkg-descr20
4 files changed, 54 insertions, 0 deletions
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