Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-Arpeggio for openSUSE:Factory
checked in at 2022-04-02 18:20:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-Arpeggio (Old)
and /work/SRC/openSUSE:Factory/.python-Arpeggio.new.1900 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-Arpeggio"
Sat Apr 2 18:20:37 2022 rev:13 rq:965751 version:2.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-Arpeggio/python-Arpeggio.changes
2021-12-12 21:27:05.116322910 +0100
+++
/work/SRC/openSUSE:Factory/.python-Arpeggio.new.1900/python-Arpeggio.changes
2022-04-02 18:20:49.734080899 +0200
@@ -1,0 +2,13 @@
+Tue Mar 22 18:46:22 UTC 2022 - Sebastian Wagner <[email protected]>
+
+- ## [Unreleased]
+[Unreleased]: https://github.com/textX/Arpeggio/compare/2.0.0...HEAD
+- update to version 2.0.0:
+ - Added `eval_attrs` call to `NoMatch` exceptions ([ebfd60]). See [the
+ docs](https://textx.github.io/Arpeggio/latest/handling_errors/).
+ - Dropped support for deprecated Python versions. The lowest supported version
+ is 3.6. **(BIC)**
+[ebfd60]:
https://github.com/textX/Arpeggio/commit/ebfd60a7330cd5e6aaacfd5be7001be0f7506ce8
+[2.0.0]: https://github.com/textX/Arpeggio/compare/1.10.2...2.0.0
+
+-------------------------------------------------------------------
Old:
----
python-Arpeggio-1.10.2.tar.gz
New:
----
python-Arpeggio-2.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-Arpeggio.spec ++++++
--- /var/tmp/diff_new_pack.ecCImc/_old 2022-04-02 18:20:50.274074837 +0200
+++ /var/tmp/diff_new_pack.ecCImc/_new 2022-04-02 18:20:50.278074793 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-Arpeggio
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-Arpeggio
-Version: 1.10.2
+Version: 2.0.0
Release: 0
Summary: Packrat parser interpreter
License: MIT
++++++ python-Arpeggio-1.10.2.tar.gz -> python-Arpeggio-2.0.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/Arpeggio-1.10.2/.github/workflows/ci-linux-ubuntu.yml
new/Arpeggio-2.0.0/.github/workflows/ci-linux-ubuntu.yml
--- old/Arpeggio-1.10.2/.github/workflows/ci-linux-ubuntu.yml 1970-01-01
01:00:00.000000000 +0100
+++ new/Arpeggio-2.0.0/.github/workflows/ci-linux-ubuntu.yml 2022-03-20
17:39:33.000000000 +0100
@@ -0,0 +1,33 @@
+name: tests
+
+on:
+ push:
+ branches-ignore:
+ - 'gh-pages'
+ pull_request:
+
+jobs:
+ build:
+
+ runs-on: ubuntu-18.04
+ strategy:
+ matrix:
+ python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"]
+
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up Python ${{ matrix.python-version }}
+ uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+ - name: Install test dependencies
+ run: |
+ ./install-test.sh
+ - name: Run unit tests
+ run: |
+ ./runtests.sh
+ - name: Coveralls
+ env:
+ COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
+ run: |
+ coveralls
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/.travis.yml
new/Arpeggio-2.0.0/.travis.yml
--- old/Arpeggio-1.10.2/.travis.yml 2021-04-25 13:27:39.000000000 +0200
+++ new/Arpeggio-2.0.0/.travis.yml 1970-01-01 01:00:00.000000000 +0100
@@ -1,18 +0,0 @@
-language: python
-python:
- - "2.7"
- - "3.4"
- - "3.5"
- - "3.6"
- - "3.7"
- - "3.8"
- - "3.9"
-
-install:
- - ./install-test.sh
-
-script:
- - ./runtests.sh
-
-after_success:
- - coveralls
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/CHANGELOG.md
new/Arpeggio-2.0.0/CHANGELOG.md
--- old/Arpeggio-1.10.2/CHANGELOG.md 2021-04-25 13:27:39.000000000 +0200
+++ new/Arpeggio-2.0.0/CHANGELOG.md 2022-03-20 17:39:33.000000000 +0100
@@ -15,7 +15,20 @@
## [Unreleased]
-[Unreleased]: https://github.com/textX/Arpeggio/compare/1.10.2...HEAD
+
+[Unreleased]: https://github.com/textX/Arpeggio/compare/2.0.0...HEAD
+
+
+## [2.0.0] (released: 2022-03-20)
+
+- Added `eval_attrs` call to `NoMatch` exceptions ([ebfd60]). See [the
+ docs](https://textx.github.io/Arpeggio/latest/handling_errors/).
+- Dropped support for deprecated Python versions. The lowest supported version
+ is 3.6. **(BIC)**
+
+
+[ebfd60]:
https://github.com/textX/Arpeggio/commit/ebfd60a7330cd5e6aaacfd5be7001be0f7506ce8
+[2.0.0]: https://github.com/textX/Arpeggio/compare/1.10.2...2.0.0
## [1.10.2] (released: 2021-04-25)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/CONTRIBUTING.md
new/Arpeggio-2.0.0/CONTRIBUTING.md
--- old/Arpeggio-1.10.2/CONTRIBUTING.md 2021-04-25 13:27:39.000000000 +0200
+++ new/Arpeggio-2.0.0/CONTRIBUTING.md 2022-03-20 17:39:33.000000000 +0100
@@ -148,8 +148,8 @@
1. The pull request should include tests.
2. If the pull request adds/changes functionality, the docs should be updated.
-3. The pull request should work for Python 2.7, 3.4-3.9. Check
- https://travis-ci.org/textX/Arpeggio/pull_requests and make sure that
+3. The pull request should work for supported Python versions. Check
+ https://github.com/textX/Arpeggio/actions and make sure that
the tests pass for all supported Python versions.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/README.md
new/Arpeggio-2.0.0/README.md
--- old/Arpeggio-1.10.2/README.md 2021-04-25 13:27:39.000000000 +0200
+++ new/Arpeggio-2.0.0/README.md 2022-03-20 17:39:33.000000000 +0100
@@ -2,7 +2,7 @@
[](https://pypi.python.org/pypi/Arpeggio)

-[](https://travis-ci.org/textX/Arpeggio)
+[](https://github.com/textx/Arpeggio/actions)
[](https://coveralls.io/github/textX/Arpeggio)
[](http://textx.github.io/Arpeggio/latest/)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/arpeggio/__init__.py
new/Arpeggio-2.0.0/arpeggio/__init__.py
--- old/Arpeggio-1.10.2/arpeggio/__init__.py 2021-04-25 13:27:39.000000000
+0200
+++ new/Arpeggio-2.0.0/arpeggio/__init__.py 2022-03-20 17:39:33.000000000
+0100
@@ -20,7 +20,7 @@
from arpeggio.utils import isstr
import types
-__version__ = "1.10.2"
+__version__ = "2.0.0"
if sys.version < '3':
text = unicode
@@ -73,7 +73,11 @@
self.position = position
self.parser = parser
- def __str__(self):
+
+ def eval_attrs(self):
+ """
+ Call this to evaluate `message`, `context`, `line` and `col`. Called
by __str__.
+ """
def rule_to_exp_str(rule):
if hasattr(rule, '_exp_str'):
# Rule may override expected report string
@@ -87,19 +91,24 @@
return rule.name
if not self.rules:
- err_message = "Not expected input"
+ self.message = "Not expected input"
else:
what_is_expected = OrderedDict.fromkeys(
["{}".format(rule_to_exp_str(r)) for r in self.rules])
what_str = " or ".join(what_is_expected)
- err_message = "Expected {}".format(what_str)
+ self.message = "Expected {}".format(what_str)
+ self.context = self.parser.context(position=self.position)
+ self.line, self.col = self.parser.pos_to_linecol(self.position)
+
+ def __str__(self):
+ self.eval_attrs()
return "{} at position {}{} => '{}'."\
- .format(err_message,
+ .format(self.message,
"{}:".format(self.parser.file_name)
if self.parser.file_name else "",
- text(self.parser.pos_to_linecol(self.position)),
- self.parser.context(position=self.position))
+ (self.line, self.col),
+ self.context)
def __unicode__(self):
return self.__str__()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/Arpeggio-1.10.2/arpeggio/tests/regressions/issue_16/test_issue_16.py
new/Arpeggio-2.0.0/arpeggio/tests/regressions/issue_16/test_issue_16.py
--- old/Arpeggio-1.10.2/arpeggio/tests/regressions/issue_16/test_issue_16.py
2021-04-25 13:27:39.000000000 +0200
+++ new/Arpeggio-2.0.0/arpeggio/tests/regressions/issue_16/test_issue_16.py
2022-03-20 17:39:33.000000000 +0100
@@ -30,7 +30,7 @@
"""
-grammar = """
+grammar = r"""
calc = test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/docs/handling_errors.md
new/Arpeggio-2.0.0/docs/handling_errors.md
--- old/Arpeggio-1.10.2/docs/handling_errors.md 2021-04-25 13:27:39.000000000
+0200
+++ new/Arpeggio-2.0.0/docs/handling_errors.md 2022-03-20 17:39:33.000000000
+0100
@@ -44,6 +44,8 @@
parse_tree = parser.parse(input_expr)
except NoMatch as e:
# Do something with e
+ # Call e.eval_attrs() if you want to create a custom message
+ # call str(e) for the default message
```
@@ -52,9 +54,15 @@
- `rules` - A list of `ParsingExpression` rules that are the sources of the
exception.
- `position` - A position in the input stream where exception occurred.
+- `parser` - A `Parser` instance used for parsing.
+
+After `eval_attrs()` method is called on the exception (happens automatically
if
+`__str__` is called) these additional attributes are available:
+
+- `message` - An error message.
+- `context` - A context (part of the input) in which error occurred.
- `line`, `col` - A line and column in the input stream where exception
occurred.
-- `parser` - A `Parser` instance used for parsing.
Arpeggio is a backtracking parser, which means that it will go back and try
another alternatives when the match does not succeeds. Nevertheless, it will
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/docs/index.md
new/Arpeggio-2.0.0/docs/index.md
--- old/Arpeggio-1.10.2/docs/index.md 2021-04-25 13:27:39.000000000 +0200
+++ new/Arpeggio-2.0.0/docs/index.md 2022-03-20 17:39:33.000000000 +0100
@@ -41,8 +41,7 @@
## Python versions
-Arpeggio works with Python 2.7, 3.4+. Other versions might work but are not
-tested.
+Arpeggio works with Python 3.6+. Other versions might work but are not tested.
## Open-source projects using Arpeggio
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/examples/json/json.py
new/Arpeggio-2.0.0/examples/json/json.py
--- old/Arpeggio-1.10.2/examples/json/json.py 2021-04-25 13:27:39.000000000
+0200
+++ new/Arpeggio-2.0.0/examples/json/json.py 2022-03-20 17:39:33.000000000
+0100
@@ -18,8 +18,8 @@
def TRUE(): return "true"
def FALSE(): return "false"
def NULL(): return "null"
-def jsonString(): return '"', _('[^"]*'),'"'
-def jsonNumber(): return _('-?\d+((\.\d*)?((e|E)(\+|-)?\d+)?)?')
+def jsonString(): return '"', _(r'[^"]*'),'"'
+def jsonNumber(): return _(r'-?\d+((\.\d*)?((e|E)(\+|-)?\d+)?)?')
def jsonValue(): return [jsonString, jsonNumber, jsonObject, jsonArray,
TRUE, FALSE, NULL]
def jsonArray(): return "[", Optional(jsonElements), "]"
def jsonElements(): return jsonValue, ZeroOrMore(",", jsonValue)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/examples/simple/simple.py
new/Arpeggio-2.0.0/examples/simple/simple.py
--- old/Arpeggio-1.10.2/examples/simple/simple.py 2021-04-25
13:27:39.000000000 +0200
+++ new/Arpeggio-2.0.0/examples/simple/simple.py 2022-03-20
17:39:33.000000000 +0100
@@ -16,7 +16,7 @@
from arpeggio import RegExMatch as _
# Grammar
-def comment(): return [_("//.*"), _("/\*.*\*/")]
+def comment(): return [_(r"//.*"), _(r"/\*.*\*/")]
def literal(): return _(r'\d*\.\d*|\d+|".*?"')
def symbol(): return _(r"\w+")
def operator(): return _(r"\+|\-|\*|\/|\=\=")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/mkdocs.yml
new/Arpeggio-2.0.0/mkdocs.yml
--- old/Arpeggio-1.10.2/mkdocs.yml 2021-04-25 13:27:39.000000000 +0200
+++ new/Arpeggio-2.0.0/mkdocs.yml 2022-03-20 17:39:33.000000000 +0100
@@ -4,8 +4,11 @@
site_author: Igor Dejanovi??
repo_url: https://github.com/textX/Arpeggio
-google_analytics: [UA-68681917-1, igordejanovic.net]
-theme: readthedocs
+
+theme:
+ name: readthedocs
+ analytics:
+ gtag: UA-68681917-1
nav:
- Home: index.md
@@ -32,9 +35,7 @@
- toc:
permalink: true
-copyright: Copyright © <a href="http://www.igordejanovic.net/">Igor
Dejanovi??</a>.
+plugins:
+ - mike
-extra_css:
-- css/version-select.css
-extra_javascript:
-- js/version-select.js
+copyright: Copyright © <a href="http://www.igordejanovic.net/">Igor
Dejanovi??</a>.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Arpeggio-1.10.2/setup.cfg
new/Arpeggio-2.0.0/setup.cfg
--- old/Arpeggio-1.10.2/setup.cfg 2021-04-25 13:27:39.000000000 +0200
+++ new/Arpeggio-2.0.0/setup.cfg 2022-03-20 17:39:33.000000000 +0100
@@ -19,15 +19,12 @@
Topic :: Software Development :: Libraries :: Python Modules
License :: OSI Approved :: MIT License
Operating System :: OS Independent
- Programming Language :: Python :: 2
- Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
- Programming Language :: Python :: 3.4
- Programming Language :: Python :: 3.5
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
+ Programming Language :: Python :: 3.10
[options]
packages = find: