aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2022-06-09 23:32:45 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2022-06-09 23:32:45 +0000
commit9f10edecc0273931d628fe778df04d80d1a94279 (patch)
treeb9954ba16a6b3415a0a6ab04c2d7a02403ef6cd9
parent07bf45b137b72c83707f115b45752eec898330fd (diff)
downloadports-9f10edecc0273931d628fe778df04d80d1a94279.tar.gz
ports-9f10edecc0273931d628fe778df04d80d1a94279.zip
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
-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