python-funcparserlib-vl.spec 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. Summary: Recursive descent parsing library for Python based on functional combinators
  2. Name: python-funcparserlib
  3. Version: 0.3.6
  4. Release: 1%{?_dist_release}
  5. Group: Development/Libraries
  6. Vendor: Project Vine
  7. Distribution: Vine Linux
  8. License: MIT License
  9. URL: https://pypi.org/project/funcparserlib/
  10. Source0:https://pypi.python.org/packages/source/f/funcparserlib/funcparserlib-%{version}.tar.gz
  11. BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
  12. BuildArch: noarch
  13. BuildRequires: python-devel
  14. BuildRequires: python-setuptools
  15. BuildRequires: python-rpm-macros
  16. Requires: python
  17. %description
  18. Parser combinators are just higher-order functions that take parsers as
  19. their arguments and return them as result values. Parser combinators are:
  20. - First-class values
  21. - Extremely composable
  22. - Tend to make the code quite compact
  23. - Resemble the readable notation of xBNF grammars
  24. Parsers made with funcparserlib are pure-Python LL(*) parsers. It means
  25. that it's very easy to write them without thinking about look-aheads and
  26. all that hardcore parsing stuff. But the recursive descent parsing is a
  27. rather slow method compared to LL(k) or LR(k) algorithms.
  28. So the primary domain for funcparserlib is parsing little languages or
  29. external DSLs (domain specific languages).
  30. %package -n python3-funcparserlib
  31. Summary: Recursive descent parsing library for Python based on functional combinators
  32. BuildRequires: python3-devel
  33. BuildRequires: python3-setuptools
  34. BuildRequires: python3-rpm-macros
  35. Requires: python3
  36. %description -n python3-funcparserlib
  37. Parser combinators are just higher-order functions that take parsers as
  38. their arguments and return them as result values. Parser combinators are:
  39. - First-class values
  40. - Extremely composable
  41. - Tend to make the code quite compact
  42. - Resemble the readable notation of xBNF grammars
  43. Parsers made with funcparserlib are pure-Python LL(*) parsers. It means
  44. that it's very easy to write them without thinking about look-aheads and
  45. all that hardcore parsing stuff. But the recursive descent parsing is a
  46. rather slow method compared to LL(k) or LR(k) algorithms.
  47. So the primary domain for funcparserlib is parsing little languages or
  48. external DSLs (domain specific languages).
  49. %prep
  50. %setup -q -n funcparserlib-%{version}
  51. %build
  52. %py_build
  53. %py3_build
  54. %install
  55. %__rm -rf %{buildroot}
  56. %py_install
  57. %py3_install
  58. sed -i \
  59. -e 's/except NoParseError, e:/except NoParseError as e:/' \
  60. %{buildroot}%{python3_sitelib}/funcparserlib/parser.py
  61. %clean
  62. %__rm -rf %{buildroot}
  63. %files
  64. %defattr(-,root,root,-)
  65. %license LICENSE
  66. %doc CHANGES README doc examples
  67. %{python_sitelib}/funcparserlib-%{version}-py*.egg-info
  68. %{python_sitelib}/funcparserlib
  69. %files -n python3-funcparserlib
  70. %defattr(-,root,root,-)
  71. %license LICENSE
  72. %doc CHANGES README doc examples
  73. %{python3_sitelib}/funcparserlib*
  74. %changelog
  75. * Thu Nov 21 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.3.6-1
  76. - new upstream release.
  77. - added python3 support.
  78. * Sun Jan 12 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.3.5-3
  79. - rebuild with VineSeed environment
  80. * Sun Feb 19 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.3.5-2
  81. - rebuild with python-2.7.2
  82. * Mon May 16 2011 IWAI, Masaharu <iwai@alib.jp> 0.3.5-1
  83. - Initial build.