Skip to content

Commit

Permalink
Merge pull request #1157 from UniGrammar/pyproject.toml
Browse files Browse the repository at this point in the history
Moved the metadata into `PEP 621`-compliant `pyproject.toml`.
  • Loading branch information
erezsh authored Jul 3, 2023
2 parents f79bbac + f2b5758 commit 2a3137b
Show file tree
Hide file tree
Showing 3 changed files with 71 additions and 76 deletions.
72 changes: 71 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,77 @@
[build-system]
requires = ["setuptools>=42"]
requires = ["setuptools>=61.2.0"]
build-backend = "setuptools.build_meta"

[project]
name = "lark"
authors = [{name = "Erez Shinan", email = "erezshin@gmail.com"}]
license = {text = "MIT"}
description = "a modern parsing library"
keywords = ["Earley", "LALR", "parser", "parsing", "ast"]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Programming Language :: Python :: 3",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Text Processing :: General",
"Topic :: Text Processing :: Linguistic",
"License :: OSI Approved :: MIT License",
]
requires-python = ">=3.6"
dependencies = []
dynamic = ["version"]

[project.readme]
text = """
Lark is a modern general-purpose parsing library for Python.
With Lark, you can parse any context-free grammar, efficiently, with very little code.
Main Features:
- Builds a parse-tree (AST) automagically, based on the structure of the grammar
- Earley parser
- Can parse all context-free grammars
- Full support for ambiguous grammars
- LALR(1) parser
- Fast and light, competitive with PLY
- Can generate a stand-alone parser
- CYK parser, for highly ambiguous grammars
- EBNF grammar
- Unicode fully supported
- Automatic line & column tracking
- Standard library of terminals (strings, numbers, names, etc.)
- Import grammars from Nearley.js
- Extensive test suite
- And much more!
Since version 1.0, only Python versions 3.6 and up are supported."""
content-type = "text/markdown"

[project.urls]
Homepage = "https://github.com/lark-parser/lark"
Download = "https://github.com/lark-parser/lark/tarball/master"

[project.entry-points.pyinstaller40]
hook-dirs = "lark.__pyinstaller:get_hook_dirs"

[project.optional-dependencies]
regex = ["regex"]
nearley = ["js2py"]
atomic_cache = ["atomicwrites"]
interegular = ["interegular>=0.3.1,<0.4.0"]

[tool.setuptools]
packages = [
"lark",
"lark.parsers",
"lark.tools",
"lark.grammars",
"lark.__pyinstaller",
]
include-package-data = true

[tool.setuptools.package-data]
lark = ["py.typed"]

[tool.setuptools.dynamic]
version = {attr = "lark.__version__"}

[tool.mypy]
files = "lark"
Expand Down
3 changes: 0 additions & 3 deletions setup.cfg

This file was deleted.

72 changes: 0 additions & 72 deletions setup.py

This file was deleted.

0 comments on commit 2a3137b

Please sign in to comment.