Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-funcparserlib for openSUSE:Factory checked in at 2022-08-05 19:51:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-funcparserlib (Old) and /work/SRC/openSUSE:Factory/.python-funcparserlib.new.1521 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-funcparserlib" Fri Aug 5 19:51:09 2022 rev:9 rq:993148 version:1.0.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-funcparserlib/python-funcparserlib.changes 2022-03-01 17:04:30.432348385 +0100 +++ /work/SRC/openSUSE:Factory/.python-funcparserlib.new.1521/python-funcparserlib.changes 2022-08-05 19:52:07.961631002 +0200 @@ -1,0 +2,37 @@ +Thu Aug 4 19:54:24 UTC 2022 - Ben Greiner <c...@bnavigator.de> + +- Update to 1.0.0 + * The stable 1.0.0 release freezes the API of funcparserlib 0.3.6 + which was released on 2013-05-02, with a few bug fixes and + small features. + * Added support for Python 3.10 + * Added support for Python 3.9 (#63) (Thanks to @pkulev) + * Added support for Python 3.8 + * Added -p (the same as skip(p)) with more strict type hints for + -p and p1 + p2 + * Added tok(type[, value]) for more compact grammars, better + error messages + * Added TokenSpec(type, pattern[, flags]) to simplify the use of + make_tokenizer() + * Added type hints for the public API + * Added the new library homepage with the new Getting Started + guide and the new API reference + * Parse exceptions now show expected tokens and grammar rules at + the stopped position (#52) + * Dropped support for Python 3.4, 3.5, 3.6 (end of life) + * Dropped support for Python 2.5, 2.6, 3.3 (end of life), + modernized code for Python 3 to run without obsolete 2to3 (#57) + (Thanks to @jdufresne) + * Removed documentation and unit tests from the distribution + * Switched from setuptools to Poetry + * Switched to poetry-core for lighter PEP 517 builds (#73) + (Thanks to @fabaff) + * Fixed TypeError in oneplus when applying it parser + parser + (#66) (Thanks to @martica) + * Fixed AttributeError when comparing Token objects to None (#58) + (Thanks to @Halolegend94) + * Fixed doctests in the tutorial (#49) + * Fixed several cases of wrong expected tokens in error messages +- Drop no2to3.patch + +------------------------------------------------------------------- Old: ---- funcparserlib-0.3.6.tar.gz no2to3.patch New: ---- funcparserlib-1.0.0-gh.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-funcparserlib.spec ++++++ --- /var/tmp/diff_new_pack.Lvq6gS/_old 2022-08-05 19:52:08.521632448 +0200 +++ /var/tmp/diff_new_pack.Lvq6gS/_new 2022-08-05 19:52:08.521632448 +0200 @@ -18,53 +18,40 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-funcparserlib -Version: 0.3.6 +Version: 1.0.0 Release: 0 Summary: Recursive descent parsing library based on functional combinators License: MIT Group: Development/Languages/Python URL: https://github.com/vlasovskikh/funcparserlib -Source: https://files.pythonhosted.org/packages/source/f/funcparserlib/funcparserlib-%{version}.tar.gz -Patch1: no2to3.patch +Source: https://github.com/vlasovskikh/funcparserlib/archive/refs/tags/%{version}.tar.gz#/funcparserlib-%{version}-gh.tar.gz +BuildRequires: %{python_module pip} +BuildRequires: %{python_module poetry-core} BuildRequires: %{python_module pytest} -BuildRequires: %{python_module setuptools} -BuildRequires: %{python_module six} BuildRequires: fdupes BuildRequires: python-rpm-macros -BuildRequires: python3-modernize BuildArch: noarch %python_subpackages %description -Parser combinators are just higher-order functions that take parsers as -their arguments and return them as result values. Parser combinators are: - -First-class values. Extremely composable. Tend to make the code quite compact. -Resemble the readable notation of xBNF grammars. - -Parsers made with funcparserlib are pure-Python LL(*) parsers. It means that -it's very easy to write them without thinking about look-aheads and all that -hardcore parsing stuff. But the recursive descent parsing is a rather slow -method compared to LL(k) or LR(k) algorithms. - -So the primary domain for funcparserlib is parsing little languages or external +The primary focus of funcparserlib is parsing little languages or external DSLs (domain specific languages). -The library itself is very small. Its source code is only 0.5 KLOC, with lots -of comments included. It features the longest parsed prefix error reporting, -as well as a tiny lexer generator for token position tracking. +Parsers made with funcparserlib are pure-Python LL(*) parsers. It means that +it's very easy to write parsers without thinking about lookaheads and other +hardcore parsing stuff. However, recursive descent parsing is a rather +low method compared to LL(k) or LR(k) algorithms. Still, parsing with +funcparserlib is at least twice faster than PyParsing, a very popular library +for Python. %prep %setup -q -n funcparserlib-%{version} -%patch1 -p1 -python-modernize -nw funcparserlib/ -sed -i "s/ur'/r'/" funcparserlib/tests/*.py %build -%python_build +%pyproject_wheel %install -%python_install +%pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check @@ -72,8 +59,8 @@ %files %{python_files} %license LICENSE -%doc README CHANGES -%{python_sitelib}/funcparserlib/ -%{python_sitelib}/funcparserlib*egg-info +%doc README.md +%{python_sitelib}/funcparserlib +%{python_sitelib}/funcparserlib-%{version}*-info %changelog