This repo contains code to mirror other repos. It also contains the code that is getting mirrored.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

75 lines
2.2 KiB

  1. try:
  2. import regex as re
  3. except ImportError:
  4. import re
  5. from setuptools import find_packages, setup
  6. __version__ ,= re.findall('__version__ = "(.*)"', open('lark/__init__.py').read())
  7. setup(
  8. name = "lark-parser",
  9. version = __version__,
  10. packages = ['lark', 'lark.parsers', 'lark.tools', 'lark.grammars', 'lark.__pyinstaller', 'lark-stubs'],
  11. requires = [],
  12. install_requires = [],
  13. extras_require = {
  14. "regex": ["regex"],
  15. "nearley": ["js2py"]
  16. },
  17. package_data = {'': ['*.md', '*.lark'], 'lark-stubs': ['*.pyi']},
  18. test_suite = 'tests.__main__',
  19. # metadata for upload to PyPI
  20. author = "Erez Shinan",
  21. author_email = "erezshin@gmail.com",
  22. description = "a modern parsing library",
  23. license = "MIT",
  24. keywords = "Earley LALR parser parsing ast",
  25. url = "https://github.com/lark-parser/lark",
  26. download_url = "https://github.com/lark-parser/lark/tarball/master",
  27. long_description='''
  28. Lark is a modern general-purpose parsing library for Python.
  29. With Lark, you can parse any context-free grammar, efficiently, with very little code.
  30. Main Features:
  31. - Builds a parse-tree (AST) automagically, based on the structure of the grammar
  32. - Earley parser
  33. - Can parse all context-free grammars
  34. - Full support for ambiguous grammars
  35. - LALR(1) parser
  36. - Fast and light, competitive with PLY
  37. - Can generate a stand-alone parser
  38. - CYK parser, for highly ambiguous grammars
  39. - EBNF grammar
  40. - Unicode fully supported
  41. - Python 2 & 3 compatible
  42. - Automatic line & column tracking
  43. - Standard library of terminals (strings, numbers, names, etc.)
  44. - Import grammars from Nearley.js
  45. - Extensive test suite
  46. - And much more!
  47. ''',
  48. classifiers=[
  49. "Development Status :: 5 - Production/Stable",
  50. "Intended Audience :: Developers",
  51. "Programming Language :: Python :: 2.7",
  52. "Programming Language :: Python :: 3",
  53. "Topic :: Software Development :: Libraries :: Python Modules",
  54. "Topic :: Text Processing :: General",
  55. "Topic :: Text Processing :: Linguistic",
  56. "License :: OSI Approved :: MIT License",
  57. ],
  58. entry_points = {
  59. 'pyinstaller40': [
  60. 'hook-dirs = lark.__pyinstaller:get_hook_dirs'
  61. ]
  62. },
  63. )