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 @@
 
 [![PyPI 
Version](https://img.shields.io/pypi/v/Arpeggio.svg)](https://pypi.python.org/pypi/Arpeggio)
 ![](https://img.shields.io/pypi/l/Arpeggio.svg)
-[![Build 
status](https://travis-ci.org/textX/Arpeggio.svg?branch=master)](https://travis-ci.org/textX/Arpeggio)
+[![Build 
status](https://github.com/textx/Arpeggio/actions/workflows/ci-linux-ubuntu.yml/badge.svg)](https://github.com/textx/Arpeggio/actions)
 [![Coverage 
Status](https://coveralls.io/repos/github/textX/Arpeggio/badge.svg)](https://coveralls.io/github/textX/Arpeggio)
 
[![Documentation](https://img.shields.io/badge/docs-latest-green.svg)](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 &copy; <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 &copy; <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:

Reply via email to