python-lark-parser/python-lark-parser.spec

63 lines
1.7 KiB
RPMSpec
Raw Normal View History

2018-09-26 21:42:16 +00:00
%global pypi_name lark-parser
Name: python-%{pypi_name}
Version: 0.6.4
Release: 1%{?dist}
Summary: Lark is a modern general-purpose parsing library for Python
License: MIT
Group: Development/Languages/Python
Url: https://github.com/lark-parser/lark
Source: https://files.pythonhosted.org/packages/source/l/%{pypi_name}/%{pypi_name}-%{version}.tar.gz
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: fdupes
BuildArch: noarch
%description
Lark is a modern general-purpose parsing library for Python.
Lark focuses on simplicity and power. It lets you choose between
two parsing algorithms:
Earley : Parses all context-free grammars (even ambiguous ones)!
It is the default.
LALR(1): Only LR grammars. Outperforms PLY and most if not all
other pure-python parsing libraries.
Both algorithms are written in Python and can be used interchangeably
with the same grammar (aside for algorithmic restrictions).
See "Comparison to other parsers" for more details.
Lark can auto magically build an AST from your grammar, without any
more code on your part.
Features:
- EBNF grammar with a little extra
- Earley & LALR(1)
- Builds an AST auto magically based on the grammar
- Automatic line & column tracking
- Automatic token collision resolution (unless both tokens are regexps)
- Python 2 & 3 compatible
- Unicode fully supported
%prep
%autosetup -n %{pypi_name}-%{version}
%build
%py3_build
%install
%py3_install
%files
%license LICENSE
%doc README.md examples
%{python3_sitelib}/lark_parser-*.egg-info
%{python3_sitelib}/lark/
%changelog
* Mon Sep 24 2018 Thomas Andrejak <thomas.andrejak@gmail.com> - 0.6.4-1
- Initial package