Hello community,

here is the log from the commit of package python-seqdiag for openSUSE:Factory 
checked in at 2020-02-25 16:06:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-seqdiag (Old)
 and      /work/SRC/openSUSE:Factory/.python-seqdiag.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-seqdiag"

Tue Feb 25 16:06:12 2020 rev:4 rq:778944 version:2.0.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-seqdiag/python-seqdiag.changes    
2019-04-30 13:04:23.842019919 +0200
+++ /work/SRC/openSUSE:Factory/.python-seqdiag.new.26092/python-seqdiag.changes 
2020-02-25 16:06:42.340553177 +0100
@@ -1,0 +2,21 @@
+Tue Feb 25 06:28:27 UTC 2020 - Thomas Bechtold <tbecht...@suse.com>
+
+- update to version 2.0.0
+  * compat module is no longer needed
+  * Enable Travis CI
+  * Define long_description_content_type
+  * Drop "setup.py release" macro
+  * Add get_version() to setup.py
+  * Add project_urls to setup.py
+  * isort'ize
+  * Add .gitignore
+  * Fix author_email
+  * Drop py27 and py34 support
+  * Bump version
+  * Remove buildout
+  * Fix seqdiag is not universal package
+  * Fix flake8 violations
+  * Stop to use deprecated APIs
+- Stop building python2 version. No longer supported upstream
+
+-------------------------------------------------------------------

Old:
----
  seqdiag-0.9.6.tar.gz

New:
----
  seqdiag-2.0.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-seqdiag.spec ++++++
--- /var/tmp/diff_new_pack.JQl3QN/_old  2020-02-25 16:06:46.556561997 +0100
+++ /var/tmp/diff_new_pack.JQl3QN/_new  2020-02-25 16:06:46.564562014 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-seqdiag
 #
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,14 +16,10 @@
 #
 
 
+%define skip_python2 1
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
-%if 0%{?suse_version} && 0%{?suse_version} <= 1110
-%{!?python_sitelib: %global python_sitelib %(python -c "from 
distutils.sysconfig import get_python_lib; print get_python_lib()")}
-%else
-BuildArch:      noarch
-%endif
 Name:           python-seqdiag
-Version:        0.9.6
+Version:        2.0.0
 Release:        0
 Summary:        Python module to generate sequence-diagram images from text
 License:        Apache-2.0
@@ -35,6 +31,7 @@
 BuildRequires:  python-rpm-macros
 Requires:       python-blockdiag >= 1.5.0
 Requires:       python-setuptools
+BuildArch:      noarch
 %python_subpackages
 
 %description

++++++ seqdiag-0.9.6.tar.gz -> seqdiag-2.0.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/CHANGES.rst 
new/seqdiag-2.0.0/CHANGES.rst
--- old/seqdiag-0.9.6/CHANGES.rst       2018-07-24 16:30:36.000000000 +0200
+++ new/seqdiag-2.0.0/CHANGES.rst       2020-01-26 06:44:56.000000000 +0100
@@ -1,6 +1,10 @@
 Changelog
 =========
 
+2.0.0 (2020-01-26)
+------------------
+* Drop python2 and python3.4 support
+
 0.9.6 (2018-07-24)
 ------------------
 * Fix a bug
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/MANIFEST.in 
new/seqdiag-2.0.0/MANIFEST.in
--- old/seqdiag-0.9.6/MANIFEST.in       2018-07-24 16:29:43.000000000 +0200
+++ new/seqdiag-2.0.0/MANIFEST.in       2020-01-26 06:44:04.000000000 +0100
@@ -1,5 +1,3 @@
-include buildout.cfg
-include bootstrap.py
 include CHANGES.rst
 include MANIFEST.in
 include README.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/PKG-INFO new/seqdiag-2.0.0/PKG-INFO
--- old/seqdiag-0.9.6/PKG-INFO  2018-07-24 16:31:44.000000000 +0200
+++ new/seqdiag-2.0.0/PKG-INFO  2020-01-26 06:47:11.595198000 +0100
@@ -1,12 +1,14 @@
 Metadata-Version: 2.1
 Name: seqdiag
-Version: 0.9.6
+Version: 2.0.0
 Summary: seqdiag generates sequence-diagram image from text
 Home-page: http://blockdiag.com/
 Author: Takeshi Komiya
 Author-email: i.tkom...@gmail.com
 License: Apache License 2.0
 Download-URL: http://pypi.python.org/pypi/seqdiag
+Project-URL: Code, https://github.com/blockdiag/nwdiag
+Project-URL: Issue tracker, https://github.com/blockdiag/nwdiag/issues
 Description: `seqdiag` generate sequence-diagram image file from spec-text 
file.
         
         .. image:: https://drone.io/bitbucket.org/blockdiag/seqdiag/status.png
@@ -85,8 +87,8 @@
         
         Requirements
         ============
-        * Python 2.6, 2.7, 3.2, 3.3, 3.4
-        * Pillow 2.2.1 or later
+        * Python 3.5 or later
+        * blockdiag 1.5.0 or later
         * funcparserlib 0.3.6 or later
         * reportlab (optional)
         * wand and imagemagick (optional)
@@ -99,12 +101,17 @@
         
 Keywords: diagram,generator
 Platform: UNKNOWN
-Classifier: Development Status :: 3 - Alpha
+Classifier: Development Status :: 5 - Production/Stable
 Classifier: Intended Audience :: System Administrators
 Classifier: License :: OSI Approved :: Apache Software License
 Classifier: Programming Language :: Python
+Classifier: Programming Language :: Python :: 3.5
+Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
 Classifier: Topic :: Software Development
 Classifier: Topic :: Software Development :: Documentation
 Classifier: Topic :: Text Processing :: Markup
-Provides-Extra: rst
+Requires-Python: >=3.5
+Description-Content-Type: text/x-rst
 Provides-Extra: testing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/README.rst new/seqdiag-2.0.0/README.rst
--- old/seqdiag-0.9.6/README.rst        2018-07-24 16:29:43.000000000 +0200
+++ new/seqdiag-2.0.0/README.rst        2020-01-13 10:56:01.000000000 +0100
@@ -76,8 +76,8 @@
 
 Requirements
 ============
-* Python 2.6, 2.7, 3.2, 3.3, 3.4
-* Pillow 2.2.1 or later
+* Python 3.5 or later
+* blockdiag 1.5.0 or later
 * funcparserlib 0.3.6 or later
 * reportlab (optional)
 * wand and imagemagick (optional)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/bootstrap.py 
new/seqdiag-2.0.0/bootstrap.py
--- old/seqdiag-0.9.6/bootstrap.py      2018-07-24 16:29:43.000000000 +0200
+++ new/seqdiag-2.0.0/bootstrap.py      1970-01-01 01:00:00.000000000 +0100
@@ -1,170 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2006 Zope Foundation and Contributors.
-# All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-"""Bootstrap a buildout-based project
-
-Simply run this script in a directory containing a buildout.cfg.
-The script accepts buildout command-line options, so you can
-use the -c option to specify an alternate configuration file.
-"""
-
-import os
-import shutil
-import sys
-import tempfile
-
-from optparse import OptionParser
-
-tmpeggs = tempfile.mkdtemp()
-
-usage = '''\
-[DESIRED PYTHON FOR BUILDOUT] bootstrap.py [options]
-
-Bootstraps a buildout-based project.
-
-Simply run this script in a directory containing a buildout.cfg, using the
-Python that you want bin/buildout to use.
-
-Note that by using --find-links to point to local resources, you can keep
-this script from going over the network.
-'''
-
-parser = OptionParser(usage=usage)
-parser.add_option("-v", "--version", help="use a specific zc.buildout version")
-
-parser.add_option("-t", "--accept-buildout-test-releases",
-                  dest='accept_buildout_test_releases',
-                  action="store_true", default=False,
-                  help=("Normally, if you do not specify a --version, the "
-                        "bootstrap script and buildout gets the newest "
-                        "*final* versions of zc.buildout and its recipes and "
-                        "extensions for you.  If you use this flag, "
-                        "bootstrap and buildout will get the newest releases "
-                        "even if they are alphas or betas."))
-parser.add_option("-c", "--config-file",
-                  help=("Specify the path to the buildout configuration "
-                        "file to be used."))
-parser.add_option("-f", "--find-links",
-                  help=("Specify a URL to search for buildout releases"))
-
-
-options, args = parser.parse_args()
-
-######################################################################
-# load/install setuptools
-
-to_reload = False
-try:
-    import pkg_resources
-    import setuptools
-except ImportError:
-    ez = {}
-
-    try:
-        from urllib.request import urlopen
-    except ImportError:
-        from urllib2 import urlopen
-
-    # XXX use a more permanent ez_setup.py URL when available.
-    exec(urlopen('http://bitbucket.org/pypa/setuptools/raw/0.7.2/ez_setup.py'
-             ).read(), ez)
-    setup_args = dict(to_dir=tmpeggs, download_delay=0)
-    ez['use_setuptools'](**setup_args)
-
-    if to_reload:
-        reload(pkg_resources)
-    import pkg_resources
-    # This does not (always?) update the default working set.  We will
-    # do it.
-    for path in sys.path:
-        if path not in pkg_resources.working_set.entries:
-            pkg_resources.working_set.add_entry(path)
-
-######################################################################
-# Install buildout
-
-ws = pkg_resources.working_set
-
-cmd = [sys.executable, '-c',
-       'from setuptools.command.easy_install import main; main()',
-       '-mZqNxd', tmpeggs]
-
-find_links = os.environ.get(
-    'bootstrap-testing-find-links',
-    options.find_links or
-    ('http://downloads.buildout.org/'
-     if options.accept_buildout_test_releases else None)
-    )
-if find_links:
-    cmd.extend(['-f', find_links])
-
-setuptools_path = ws.find(
-    pkg_resources.Requirement.parse('setuptools')).location
-
-requirement = 'zc.buildout'
-version = options.version
-if version is None and not options.accept_buildout_test_releases:
-    # Figure out the most recent final version of zc.buildout.
-    import setuptools.package_index
-    _final_parts = '*final-', '*final'
-
-    def _final_version(parsed_version):
-        for part in parsed_version:
-            if (part[:1] == '*') and (part not in _final_parts):
-                return False
-        return True
-    index = setuptools.package_index.PackageIndex(
-        search_path=[setuptools_path])
-    if find_links:
-        index.add_find_links((find_links,))
-    req = pkg_resources.Requirement.parse(requirement)
-    if index.obtain(req) is not None:
-        best = []
-        bestv = None
-        for dist in index[req.project_name]:
-            distv = dist.parsed_version
-            if _final_version(distv):
-                if bestv is None or distv > bestv:
-                    best = [dist]
-                    bestv = distv
-                elif distv == bestv:
-                    best.append(dist)
-        if best:
-            best.sort()
-            version = best[-1].version
-if version:
-    requirement = '=='.join((requirement, version))
-cmd.append(requirement)
-
-import subprocess
-if subprocess.call(cmd, env=dict(os.environ, PYTHONPATH=setuptools_path)) != 0:
-    raise Exception(
-        "Failed to execute command:\n%s",
-        repr(cmd)[1:-1])
-
-######################################################################
-# Import and run buildout
-
-ws.add_entry(tmpeggs)
-ws.require(requirement)
-import zc.buildout.buildout
-
-if not [a for a in args if '=' not in a]:
-    args.append('bootstrap')
-
-# if -c was provided, we push it back into args for buildout' main function
-if options.config_file is not None:
-    args[0:0] = ['-c', options.config_file]
-
-zc.buildout.buildout.main(args)
-shutil.rmtree(tmpeggs)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/buildout.cfg 
new/seqdiag-2.0.0/buildout.cfg
--- old/seqdiag-0.9.6/buildout.cfg      2018-07-24 16:29:43.000000000 +0200
+++ new/seqdiag-2.0.0/buildout.cfg      1970-01-01 01:00:00.000000000 +0100
@@ -1,31 +0,0 @@
-[buildout]
-parts = seqdiag test tox static_analysis
-
-develop = .
-
-[seqdiag]
-recipe = zc.recipe.egg
-eggs =
-    seqdiag
-interpreter = py
-
-[test]
-recipe = pbp.recipe.noserunner
-eggs =
-    seqdiag[rst]
-    seqdiag[testing]
-    coverage
-    unittest-xml-reporting
-
-[tox]
-recipe = zc.recipe.egg
-eggs =
-    tox
-    detox
-
-[static_analysis]
-recipe = zc.recipe.egg
-eggs =
-    coverage
-    flake8
-    pylint
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/setup.cfg new/seqdiag-2.0.0/setup.cfg
--- old/seqdiag-0.9.6/setup.cfg 2018-07-24 16:31:44.000000000 +0200
+++ new/seqdiag-2.0.0/setup.cfg 2020-01-26 06:47:11.595705700 +0100
@@ -8,17 +8,14 @@
 [sdist]
 formats = gztar
 
-[wheel]
-universal = 1
-
-[aliases]
-release = check -r -s register sdist bdist_wheel upload
-
 [check]
 strict = 1
 restructuredtext = 1
 
 [flake8]
-ignore = _
+ignore = W504
+max-line-length = 120
 copyright-check = True
 
+[isort]
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/setup.py new/seqdiag-2.0.0/setup.py
--- old/seqdiag-0.9.6/setup.py  2018-07-24 16:31:28.000000000 +0200
+++ new/seqdiag-2.0.0/setup.py  2020-01-26 06:44:50.000000000 +0100
@@ -1,60 +1,73 @@
 # -*- coding: utf-8 -*-
-import sys
-from setuptools import setup, find_packages
+import os
 
-sys.path.insert(0, 'src')
-import seqdiag
+from setuptools import find_packages, setup
 
 classifiers = [
-    "Development Status :: 3 - Alpha",
+    "Development Status :: 5 - Production/Stable",
     "Intended Audience :: System Administrators",
     "License :: OSI Approved :: Apache Software License",
     "Programming Language :: Python",
+    "Programming Language :: Python :: 3.5",
+    "Programming Language :: Python :: 3.6",
+    "Programming Language :: Python :: 3.7",
+    "Programming Language :: Python :: 3.8",
     "Topic :: Software Development",
     "Topic :: Software Development :: Documentation",
     "Topic :: Text Processing :: Markup",
 ]
 
-requires = ['blockdiag>=1.5.0']
-test_requires = ['nose',
-                 'pep8>=1.3',
-                 'reportlab',
-                 'docutils']
-
-# only for Python2.6
-if sys.version_info > (2, 6) and sys.version_info < (2, 7):
-    test_requires.append('unittest2')
 
-if (3, 2) < sys.version_info < (3, 3):
-    requires.append('webcolors < 1.5')  # webcolors-1.5 does not support py32
+def get_version():
+    """Get version number of the package from version.py without importing 
core module."""
+    package_dir = os.path.abspath(os.path.dirname(__file__))
+    version_file = os.path.join(package_dir, 'src/seqdiag/__init__.py')
+
+    namespace = {}
+    with open(version_file, 'r') as f:
+        exec(f.read(), namespace)
+
+    return namespace['__version__']
 
 
 setup(
     name='seqdiag',
-    version=seqdiag.__version__,
+    version=get_version(),
     description='seqdiag generates sequence-diagram image from text',
     long_description=open("README.rst").read(),
+    long_description_content_type='text/x-rst',
     classifiers=classifiers,
     keywords=['diagram', 'generator'],
     author='Takeshi Komiya',
     author_email='i.tkom...@gmail.com',
     url='http://blockdiag.com/',
     download_url='http://pypi.python.org/pypi/seqdiag',
+    project_urls={
+        "Code": "https://github.com/blockdiag/nwdiag";,
+        "Issue tracker": "https://github.com/blockdiag/nwdiag/issues";,
+    },
     license='Apache License 2.0',
     py_modules=['seqdiag_sphinxhelper'],
     packages=find_packages('src'),
     package_dir={'': 'src'},
     package_data={'': ['buildout.cfg']},
     include_package_data=True,
-    install_requires=requires,
-    extras_require=dict(
-        testing=test_requires,
-        rst=[
+    python_requires=">=3.5",
+    install_requires=[
+        'blockdiag >= 1.5.0',
+    ],
+    extras_require={
+        'testing': [
+            'nose',
+            'flake8',
+            'flake8-coding',
+            'flake8-copyright',
+            'flake8-isort',
+            'reportlab',
             'docutils',
         ],
-    ),
+    },
     test_suite='nose.collector',
-    tests_require=test_requires,
     entry_points="""
        [console_scripts]
        seqdiag = seqdiag.command:main
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag/__init__.py 
new/seqdiag-2.0.0/src/seqdiag/__init__.py
--- old/seqdiag-0.9.6/src/seqdiag/__init__.py   2018-07-24 16:30:47.000000000 
+0200
+++ new/seqdiag-2.0.0/src/seqdiag/__init__.py   2020-01-26 06:44:56.000000000 
+0100
@@ -13,4 +13,4 @@
 #  See the License for the specific language governing permissions and
 #  limitations under the License.
 
-__version__ = '0.9.6'
+__version__ = '2.0.0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag/builder.py 
new/seqdiag-2.0.0/src/seqdiag/builder.py
--- old/seqdiag-0.9.6/src/seqdiag/builder.py    2018-07-24 16:29:43.000000000 
+0200
+++ new/seqdiag-2.0.0/src/seqdiag/builder.py    2020-01-13 10:56:01.000000000 
+0100
@@ -13,11 +13,11 @@
 #  See the License for the specific language governing permissions and
 #  limitations under the License.
 
+from blockdiag.utils import XY, unquote
+
 from seqdiag import parser
-from seqdiag.elements import (Diagram, DiagramNode, NodeGroup,
-                              DiagramEdge, EdgeSeparator, AltBlock)
-from blockdiag.utils import unquote, XY
-from blockdiag.utils.compat import u
+from seqdiag.elements import (AltBlock, Diagram, DiagramEdge, DiagramNode,
+                              EdgeSeparator, NodeGroup)
 
 
 class DiagramTreeBuilder(object):
@@ -63,7 +63,7 @@
 
     def update_label_numbered(self):
         for i, edge in enumerate(self.diagram.edges):
-            edge.label = u("%d. %s") % (i + 1, edge.label or "")
+            edge.label = "%d. %s" % (i + 1, edge.label or "")
 
     def create_activities(self):
         if len(self.diagram.edges) == 0:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag/command.py 
new/seqdiag-2.0.0/src/seqdiag/command.py
--- old/seqdiag-0.9.6/src/seqdiag/command.py    2018-07-24 16:29:43.000000000 
+0200
+++ new/seqdiag-2.0.0/src/seqdiag/command.py    2020-01-13 10:56:01.000000000 
+0100
@@ -14,11 +14,13 @@
 #  limitations under the License.
 
 import sys
+
+from blockdiag.utils.bootstrap import Application
+
 import seqdiag
 import seqdiag.builder
 import seqdiag.drawer
 import seqdiag.parser
-from blockdiag.utils.bootstrap import Application
 
 
 class SeqdiagApp(Application):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag/drawer.py 
new/seqdiag-2.0.0/src/seqdiag/drawer.py
--- old/seqdiag-0.9.6/src/seqdiag/drawer.py     2018-07-24 16:29:43.000000000 
+0200
+++ new/seqdiag-2.0.0/src/seqdiag/drawer.py     2020-01-13 10:56:01.000000000 
+0100
@@ -14,9 +14,10 @@
 #  limitations under the License.
 
 import blockdiag.drawer
-from seqdiag.metrics import DiagramMetrics
 from blockdiag.utils import XY
 
+from seqdiag.metrics import DiagramMetrics
+
 
 class DiagramDraw(blockdiag.drawer.DiagramDraw):
     def create_metrics(self, *args, **kwargs):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag/elements.py 
new/seqdiag-2.0.0/src/seqdiag/elements.py
--- old/seqdiag-0.9.6/src/seqdiag/elements.py   2018-07-24 16:29:43.000000000 
+0200
+++ new/seqdiag-2.0.0/src/seqdiag/elements.py   2020-01-13 10:56:01.000000000 
+0100
@@ -14,7 +14,7 @@
 #  limitations under the License.
 
 import blockdiag.elements
-from blockdiag.utils import images, Size, XY
+from blockdiag.utils import XY, Size, images
 from blockdiag.utils.logging import warning
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag/metrics.py 
new/seqdiag-2.0.0/src/seqdiag/metrics.py
--- old/seqdiag-0.9.6/src/seqdiag/metrics.py    2018-07-24 16:29:43.000000000 
+0200
+++ new/seqdiag-2.0.0/src/seqdiag/metrics.py    2020-01-13 10:56:01.000000000 
+0100
@@ -14,12 +14,15 @@
 #  limitations under the License.
 
 from __future__ import division
-from collections import namedtuple, defaultdict
-from seqdiag import elements
+
+from collections import defaultdict, namedtuple
+
 import blockdiag.metrics
-from blockdiag.utils import Box, XY
+from blockdiag.utils import XY, Box
 from blockdiag.utils.logging import warning
 
+from seqdiag import elements
+
 
 class DiagramMetrics(blockdiag.metrics.DiagramMetrics):
     edge_height = 10
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag/parser.py 
new/seqdiag-2.0.0/src/seqdiag/parser.py
--- old/seqdiag-0.9.6/src/seqdiag/parser.py     2018-07-24 16:29:43.000000000 
+0200
+++ new/seqdiag-2.0.0/src/seqdiag/parser.py     2020-01-13 10:56:01.000000000 
+0100
@@ -36,13 +36,13 @@
 '''
 
 import io
-from re import MULTILINE, DOTALL
 from collections import namedtuple
-from funcparserlib.lexer import make_tokenizer, Token, LexerError
-from funcparserlib.parser import (some, a, maybe, many, finished, skip,
-                                  forward_decl)
+from re import DOTALL, MULTILINE
+
 from blockdiag.parser import create_mapper, flatten, oneplus_to_list
-from blockdiag.utils.compat import u
+from funcparserlib.lexer import LexerError, Token, make_tokenizer
+from funcparserlib.parser import (a, finished, forward_decl, many, maybe, skip,
+                                  some)
 
 Diagram = namedtuple('Diagram', 'id stmts')
 Group = namedtuple('Group', 'stmts')
@@ -69,8 +69,8 @@
         ('NL',        (r'[\r\n]+',)),                                     # 
NOQA
         ('Space',     (r'[ \t\r\n]+',)),                                  # 
NOQA
         ('Separator', (r'(?P<sep>===|\.\.\.)[^\r\n]+(?P=sep)',)),         # 
NOQA
-        ('Name',      (u('[A-Za-z_0-9\u0080-\uffff]') +                   # 
NOQA
-                       u('[A-Za-z_\\-.0-9\u0080-\uffff]*'),)),            # 
NOQA
+        ('Name',      ('[A-Za-z_0-9\u0080-\uffff]' +                      # 
NOQA
+                       '[A-Za-z_\\-.0-9\u0080-\uffff]*',)),               # 
NOQA
         ('Op',        (r'(=>)|[{};,=\[\]]|(<<?--?)|(--?>>?)',)),          # 
NOQA
         ('Number',    (r'-?(\.[0-9]+)|([0-9]+(\.[0-9]*)?)',)),            # 
NOQA
         ('String',    (r'(?P<quote>"|\').*?(?<!\\)(?P=quote)', DOTALL)),  # 
NOQA
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/seqdiag-0.9.6/src/seqdiag/tests/test_generate_diagram.py 
new/seqdiag-2.0.0/src/seqdiag/tests/test_generate_diagram.py
--- old/seqdiag-0.9.6/src/seqdiag/tests/test_generate_diagram.py        
2018-07-24 16:29:43.000000000 +0200
+++ new/seqdiag-2.0.0/src/seqdiag/tests/test_generate_diagram.py        
2020-01-13 10:56:01.000000000 +0100
@@ -14,10 +14,11 @@
 #  limitations under the License.
 
 import os
+
+from blockdiag.tests.test_generate_diagram import (get_diagram_files,
+                                                   testcase_generator)
+
 import seqdiag.command
-from blockdiag.tests.test_generate_diagram import (
-    get_diagram_files, testcase_generator
-)
 
 
 def test_generate():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/seqdiag-0.9.6/src/seqdiag/tests/test_rst_directives.py 
new/seqdiag-2.0.0/src/seqdiag/tests/test_rst_directives.py
--- old/seqdiag-0.9.6/src/seqdiag/tests/test_rst_directives.py  2018-07-24 
16:29:43.000000000 +0200
+++ new/seqdiag-2.0.0/src/seqdiag/tests/test_rst_directives.py  2020-01-13 
10:56:01.000000000 +0100
@@ -15,17 +15,14 @@
 
 import os
 import sys
+import unittest
+
+from blockdiag.tests.utils import TemporaryDirectory, capture_stderr, with_pil
 from docutils import nodes
 from docutils.core import publish_doctree
 from docutils.parsers.rst import directives as docutils
-from seqdiag.utils.rst import directives
-from blockdiag.utils.compat import u
-from blockdiag.tests.utils import capture_stderr, with_pil, TemporaryDirectory
 
-if sys.version_info < (2, 7):
-    import unittest2 as unittest
-else:
-    import unittest
+from seqdiag.utils.rst import directives
 
 
 class TestRstDirectives(unittest.TestCase):
@@ -133,7 +130,7 @@
         self.assertEqual(1, len(doctree))
         self.assertEqual(nodes.image, type(doctree[0]))
         svg = open(doctree[0]['uri']).read()
-        self.assertRegexpMatches(svg, '<svg height="\d+" width="\d+" ')
+        self.assertRegex(svg, r'<svg height="\d+" width="\d+" ')
 
     def test_setup_noviewbox_is_false(self):
         directives.setup(format='SVG', outputdir=self.tmpdir, noviewbox=False)
@@ -144,7 +141,7 @@
         self.assertEqual(1, len(doctree))
         self.assertEqual(nodes.image, type(doctree[0]))
         svg = open(doctree[0]['uri']).read()
-        self.assertRegexpMatches(svg, '<svg viewBox="0 0 \d+ \d+" ')
+        self.assertRegex(svg, r'<svg viewBox="0 0 \d+ \d+" ')
 
     def test_setup_inline_svg_is_true(self):
         directives.setup(format='SVG', outputdir=self.tmpdir, inline_svg=True)
@@ -182,9 +179,9 @@
 
     def test_setup_inline_svg_is_true_with_multibytes(self):
         directives.setup(format='SVG', outputdir=self.tmpdir, inline_svg=True)
-        text = u(".. seqdiag::\n"
-                 "\n"
-                 "   あ -> い")
+        text = (".. seqdiag::\n"
+                "\n"
+                "   あ -> い")
         doctree = publish_doctree(text)
         self.assertEqual(1, len(doctree))
         self.assertEqual(nodes.raw, type(doctree[0]))
@@ -200,8 +197,7 @@
         self.assertEqual(1, len(doctree))
         self.assertEqual(nodes.raw, type(doctree[0]))
         self.assertEqual(nodes.Text, type(doctree[0][0]))
-        self.assertRegexpMatches(doctree[0][0],
-                                 '<svg height="\d+" width="100" ')
+        self.assertRegex(doctree[0][0], r'<svg height="\d+" width="100" ')
 
     def test_setup_inline_svg_is_true_and_width_option2(self):
         directives.setup(format='SVG', outputdir=self.tmpdir,
@@ -214,8 +210,7 @@
         self.assertEqual(1, len(doctree))
         self.assertEqual(nodes.raw, type(doctree[0]))
         self.assertEqual(nodes.Text, type(doctree[0][0]))
-        self.assertRegexpMatches(doctree[0][0],
-                                 '<svg height="\d+" width="10000" ')
+        self.assertRegex(doctree[0][0], r'<svg height="\d+" width="10000" ')
 
     def test_setup_inline_svg_is_true_and_height_option1(self):
         directives.setup(format='SVG', outputdir=self.tmpdir,
@@ -228,8 +223,7 @@
         self.assertEqual(1, len(doctree))
         self.assertEqual(nodes.raw, type(doctree[0]))
         self.assertEqual(nodes.Text, type(doctree[0][0]))
-        self.assertRegexpMatches(doctree[0][0],
-                                 '<svg height="100" width="\d+" ')
+        self.assertRegex(doctree[0][0], r'<svg height="100" width="\d+" ')
 
     def test_setup_inline_svg_is_true_and_height_option2(self):
         directives.setup(format='SVG', outputdir=self.tmpdir,
@@ -242,8 +236,7 @@
         self.assertEqual(1, len(doctree))
         self.assertEqual(nodes.raw, type(doctree[0]))
         self.assertEqual(nodes.Text, type(doctree[0][0]))
-        self.assertRegexpMatches(doctree[0][0],
-                                 '<svg height="10000" width="\d+" ')
+        self.assertRegex(doctree[0][0], r'<svg height="10000" width="\d+" ')
 
     def test_setup_inline_svg_is_true_and_width_and_height_option(self):
         directives.setup(format='SVG', outputdir=self.tmpdir,
@@ -257,8 +250,7 @@
         self.assertEqual(1, len(doctree))
         self.assertEqual(nodes.raw, type(doctree[0]))
         self.assertEqual(nodes.Text, type(doctree[0][0]))
-        self.assertRegexpMatches(doctree[0][0],
-                                 '<svg height="100" width="200" ')
+        self.assertRegex(doctree[0][0], '<svg height="100" width="200" ')
 
     def test_call_with_brace(self):
         directives.setup(format='SVG', outputdir=self.tmpdir)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag/utils/rst/directives.py 
new/seqdiag-2.0.0/src/seqdiag/utils/rst/directives.py
--- old/seqdiag-0.9.6/src/seqdiag/utils/rst/directives.py       2018-07-24 
16:29:44.000000000 +0200
+++ new/seqdiag-2.0.0/src/seqdiag/utils/rst/directives.py       2020-01-13 
10:56:01.000000000 +0100
@@ -13,10 +13,10 @@
 #  See the License for the specific language governing permissions and
 #  limitations under the License.
 
-from docutils.parsers import rst
-from seqdiag.utils.rst.nodes import seqdiag as seqdiag_node
 from blockdiag.utils.rst import directives
+from docutils.parsers import rst
 
+from seqdiag.utils.rst.nodes import seqdiag as seqdiag_node
 
 directive_options_default = dict(format='PNG',
                                  antialias=False,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag/utils/rst/nodes.py 
new/seqdiag-2.0.0/src/seqdiag/utils/rst/nodes.py
--- old/seqdiag-0.9.6/src/seqdiag/utils/rst/nodes.py    2018-07-24 
16:29:44.000000000 +0200
+++ new/seqdiag-2.0.0/src/seqdiag/utils/rst/nodes.py    2020-01-13 
10:56:01.000000000 +0100
@@ -13,10 +13,11 @@
 #  See the License for the specific language governing permissions and
 #  limitations under the License.
 
-import seqdiag.parser
+from blockdiag.utils.rst import nodes
+
 import seqdiag.builder
 import seqdiag.drawer
-from blockdiag.utils.rst import nodes
+import seqdiag.parser
 
 
 class seqdiag(nodes.blockdiag):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag.egg-info/PKG-INFO 
new/seqdiag-2.0.0/src/seqdiag.egg-info/PKG-INFO
--- old/seqdiag-0.9.6/src/seqdiag.egg-info/PKG-INFO     2018-07-24 
16:31:43.000000000 +0200
+++ new/seqdiag-2.0.0/src/seqdiag.egg-info/PKG-INFO     2020-01-26 
06:47:11.000000000 +0100
@@ -1,12 +1,14 @@
 Metadata-Version: 2.1
 Name: seqdiag
-Version: 0.9.6
+Version: 2.0.0
 Summary: seqdiag generates sequence-diagram image from text
 Home-page: http://blockdiag.com/
 Author: Takeshi Komiya
 Author-email: i.tkom...@gmail.com
 License: Apache License 2.0
 Download-URL: http://pypi.python.org/pypi/seqdiag
+Project-URL: Code, https://github.com/blockdiag/nwdiag
+Project-URL: Issue tracker, https://github.com/blockdiag/nwdiag/issues
 Description: `seqdiag` generate sequence-diagram image file from spec-text 
file.
         
         .. image:: https://drone.io/bitbucket.org/blockdiag/seqdiag/status.png
@@ -85,8 +87,8 @@
         
         Requirements
         ============
-        * Python 2.6, 2.7, 3.2, 3.3, 3.4
-        * Pillow 2.2.1 or later
+        * Python 3.5 or later
+        * blockdiag 1.5.0 or later
         * funcparserlib 0.3.6 or later
         * reportlab (optional)
         * wand and imagemagick (optional)
@@ -99,12 +101,17 @@
         
 Keywords: diagram,generator
 Platform: UNKNOWN
-Classifier: Development Status :: 3 - Alpha
+Classifier: Development Status :: 5 - Production/Stable
 Classifier: Intended Audience :: System Administrators
 Classifier: License :: OSI Approved :: Apache Software License
 Classifier: Programming Language :: Python
+Classifier: Programming Language :: Python :: 3.5
+Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
 Classifier: Topic :: Software Development
 Classifier: Topic :: Software Development :: Documentation
 Classifier: Topic :: Text Processing :: Markup
-Provides-Extra: rst
+Requires-Python: >=3.5
+Description-Content-Type: text/x-rst
 Provides-Extra: testing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag.egg-info/SOURCES.txt 
new/seqdiag-2.0.0/src/seqdiag.egg-info/SOURCES.txt
--- old/seqdiag-0.9.6/src/seqdiag.egg-info/SOURCES.txt  2018-07-24 
16:31:43.000000000 +0200
+++ new/seqdiag-2.0.0/src/seqdiag.egg-info/SOURCES.txt  2020-01-26 
06:47:11.000000000 +0100
@@ -2,8 +2,6 @@
 LICENSE
 MANIFEST.in
 README.rst
-bootstrap.py
-buildout.cfg
 seqdiag.1
 setup.cfg
 setup.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag.egg-info/requires.txt 
new/seqdiag-2.0.0/src/seqdiag.egg-info/requires.txt
--- old/seqdiag-0.9.6/src/seqdiag.egg-info/requires.txt 2018-07-24 
16:31:43.000000000 +0200
+++ new/seqdiag-2.0.0/src/seqdiag.egg-info/requires.txt 2020-01-26 
06:47:11.000000000 +0100
@@ -1,10 +1,10 @@
 blockdiag>=1.5.0
 
-[rst]
-docutils
-
 [testing]
 nose
-pep8>=1.3
+flake8
+flake8-coding
+flake8-copyright
+flake8-isort
 reportlab
 docutils
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/src/seqdiag_sphinxhelper.py 
new/seqdiag-2.0.0/src/seqdiag_sphinxhelper.py
--- old/seqdiag-0.9.6/src/seqdiag_sphinxhelper.py       2018-07-24 
16:29:44.000000000 +0200
+++ new/seqdiag-2.0.0/src/seqdiag_sphinxhelper.py       2020-01-13 
10:56:01.000000000 +0100
@@ -13,15 +13,15 @@
 #  See the License for the specific language governing permissions and
 #  limitations under the License.
 
+import blockdiag.utils.bootstrap
+import blockdiag.utils.compat
+
 import seqdiag
-import seqdiag.parser
 import seqdiag.builder
 import seqdiag.drawer
-import seqdiag.utils.rst.nodes
+import seqdiag.parser
 import seqdiag.utils.rst.directives
-import blockdiag.utils.bootstrap
-import blockdiag.utils.compat
-import blockdiag.utils.fontmap
+import seqdiag.utils.rst.nodes
 
 __all__ = [
     'core', 'utils'
@@ -31,4 +31,3 @@
 utils = seqdiag.utils
 utils.bootstrap = blockdiag.utils.bootstrap
 utils.fontmap = blockdiag.utils.fontmap
-utils.compat = blockdiag.utils.compat
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seqdiag-0.9.6/tox.ini new/seqdiag-2.0.0/tox.ini
--- old/seqdiag-0.9.6/tox.ini   2018-07-24 16:29:44.000000000 +0200
+++ new/seqdiag-2.0.0/tox.ini   2020-01-13 10:56:01.000000000 +0100
@@ -1,30 +1,16 @@
 [tox]
-envlist=py26,py27,py32,py33,py34,blockdiag_dev
+envlist=py35,py36,py37,py38,blockdiag_dev
 
 [testenv]
-deps=
-    nose
-    flake8
-    flake8-coding
-    flake8-copyright
-    docutils
-    reportlab
+usedevelop = True
+extras =
+    testing
 passenv=
     ALL_TESTS
 commands=
     nosetests
     flake8 src
 
-
-[testenv:py26]
-deps=
-    nose
-    flake8
-    docutils
-    reportlab
-    unittest2
-
 [testenv:blockdiag_dev]
 deps=
-    {[testenv]deps}
-    hg+https://bitbucket.org/blockdiag/blockdiag
+    git+https://github.com/blockdiag/blockdiag


Reply via email to