Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-intervaltree for
openSUSE:Factory checked in at 2022-07-26 19:44:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-intervaltree (Old)
and /work/SRC/openSUSE:Factory/.python-intervaltree.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-intervaltree"
Tue Jul 26 19:44:13 2022 rev:3 rq:990898 version:3.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-intervaltree/python-intervaltree.changes
2019-01-08 12:30:38.680130467 +0100
+++
/work/SRC/openSUSE:Factory/.python-intervaltree.new.1533/python-intervaltree.changes
2022-07-26 19:44:38.269826339 +0200
@@ -1,0 +2,11 @@
+Sun Jul 24 18:03:31 UTC 2022 - Dirk M??ller <[email protected]>
+
+- update to 3.1.0:
+ - Dropped support for Python 3.4, added Python 3.8
+ - Add `__slots__` optimization in Node class, should give performance
improvement
+ - Fixed:
+ - Restore universal wheels
+ - Bytes/str type incompatibility in setup.py
+ - New version of distutils rejects version suffixes of `.postNN`, use
`aNN` instead
+
+-------------------------------------------------------------------
Old:
----
intervaltree-3.0.2.tar.gz
New:
----
intervaltree-3.1.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-intervaltree.spec ++++++
--- /var/tmp/diff_new_pack.leGbYc/_old 2022-07-26 19:44:38.721756504 +0200
+++ /var/tmp/diff_new_pack.leGbYc/_new 2022-07-26 19:44:38.721756504 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-intervaltree
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# 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,12 +18,12 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-intervaltree
-Version: 3.0.2
+Version: 3.1.0
Release: 0
Summary: Editable interval tree data structure for Python
License: Apache-2.0
Group: Development/Languages/Python
-Url: https://github.com/chaimleib/intervaltree
+URL: https://github.com/chaimleib/intervaltree
Source:
https://files.pythonhosted.org/packages/source/i/intervaltree/intervaltree-%{version}.tar.gz
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
++++++ intervaltree-3.0.2.tar.gz -> intervaltree-3.1.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/intervaltree-3.0.2/CHANGELOG.md
new/intervaltree-3.1.0/CHANGELOG.md
--- old/intervaltree-3.0.2/CHANGELOG.md 2018-12-18 04:27:48.000000000 +0100
+++ new/intervaltree-3.1.0/CHANGELOG.md 2020-08-03 09:59:40.000000000 +0200
@@ -1,5 +1,13 @@
# Change log
+## Version 3.1.0
+- Dropped support for Python 3.4, added Python 3.8
+- Add `__slots__` optimization in Node class, should give performance
improvement
+- Fixed:
+ - Restore universal wheels
+ - Bytes/str type incompatibility in setup.py
+ - New version of distutils rejects version suffixes of `.postNN`, use `aNN`
instead
+
## Version 3.0.2
- Fixed:
- On some systems, setup.py opened README.md with a non-unicode encoding.
My fault for leaving the encoding flapping in the breeze. It's been fixed.
@@ -171,6 +179,3 @@
- Added tests
- Bug fix: interval addition via [] was broken in Python 2.7 (see
http://bugs.python.org/issue21785)
- Added intervaltree.bio subpackage, adding some utilities for use in
bioinformatics
-
-## Version 0.2.2b
-- Forked from https://github.com/MusashiAharon/PyIntervalTree
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/intervaltree-3.0.2/PKG-INFO
new/intervaltree-3.1.0/PKG-INFO
--- old/intervaltree-3.0.2/PKG-INFO 2018-12-18 04:56:57.000000000 +0100
+++ new/intervaltree-3.1.0/PKG-INFO 2020-08-03 10:00:57.995398500 +0200
@@ -1,12 +1,12 @@
Metadata-Version: 2.1
Name: intervaltree
-Version: 3.0.2
+Version: 3.1.0
Summary: Editable interval tree data structure for Python 2 and 3
Home-page: https://github.com/chaimleib/intervaltree
Author: Chaim Leib Halbert, Konstantin Tretyakov
Author-email: [email protected]
License: Apache License, Version 2.0
-Download-URL: https://github.com/chaimleib/intervaltree/tarball/3.0.2
+Download-URL: https://github.com/chaimleib/intervaltree/tarball/3.1.0
Description: [![Build status badge][]][build status]
intervaltree
@@ -35,7 +35,7 @@
Features
--------
- * Supports Python 2.7 and Python 3.4+ (Tested under 2.7, and 3.4 thru
3.7)
+ * Supports Python 2.7 and Python 3.5+ (Tested under 2.7, and 3.5 thru
3.8)
* Initializing
* blank `tree = IntervalTree()`
* from an iterable of `Interval` objects (`tree =
IntervalTree(intervals)`)
@@ -359,11 +359,12 @@
* [konstantint/Konstantin Tretyakov][Konstantin intervaltree] of
the University of Tartu (Estonia)
* [siniG/Avi Gabay][siniG intervaltree]
* [lmcarril/Luis M. Carril][lmcarril intervaltree] of the
Karlsruhe Institute for Technology (Germany)
+ * [depristo/MarkDePristo][depristo intervaltree]
Copyright
---------
- * [Chaim Leib Halbert][GH], 2013-2018
+ * [Chaim Leib Halbert][GH], 2013-2020
* Modifications, [Konstantin Tretyakov][Konstantin intervaltree], 2014
Licensed under the [Apache License, version 2.0][Apache].
@@ -378,6 +379,7 @@
[Konstantin intervaltree]:
https://github.com/konstantint/PyIntervalTree
[siniG intervaltree]: https://github.com/siniG/intervaltree
[lmcarril intervaltree]: https://github.com/lmcarril/intervaltree
+ [depristo intervaltree]: https://github.com/depristo/intervaltree
[Confuzzled AVL tree]:
http://www.eternallyconfuzzled.com/tuts/datastructures/jsw_tut_avl.aspx
[Wiki intervaltree]: http://en.wikipedia.org/wiki/Interval_tree
[Kahn intervaltree]:
http://zurb.com/forrst/posts/Interval_Tree_implementation_in_python-e0K
@@ -386,7 +388,7 @@
Keywords: interval-tree data-structure intervals tree
Platform: UNKNOWN
-Classifier: Development Status :: 4 - Beta
+Classifier: Development Status :: 5 - Production/Stable
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
@@ -395,10 +397,10 @@
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.4
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: License :: OSI Approved :: Apache Software License
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/intervaltree-3.0.2/README.md
new/intervaltree-3.1.0/README.md
--- old/intervaltree-3.0.2/README.md 2018-12-17 19:18:06.000000000 +0100
+++ new/intervaltree-3.1.0/README.md 2020-08-03 09:59:40.000000000 +0200
@@ -26,7 +26,7 @@
Features
--------
-* Supports Python 2.7 and Python 3.4+ (Tested under 2.7, and 3.4 thru 3.7)
+* Supports Python 2.7 and Python 3.5+ (Tested under 2.7, and 3.5 thru 3.8)
* Initializing
* blank `tree = IntervalTree()`
* from an iterable of `Interval` objects (`tree = IntervalTree(intervals)`)
@@ -350,11 +350,12 @@
* [konstantint/Konstantin Tretyakov][Konstantin intervaltree] of the
University of Tartu (Estonia)
* [siniG/Avi Gabay][siniG intervaltree]
* [lmcarril/Luis M. Carril][lmcarril intervaltree] of the Karlsruhe
Institute for Technology (Germany)
+ * [depristo/MarkDePristo][depristo intervaltree]
Copyright
---------
-* [Chaim Leib Halbert][GH], 2013-2018
+* [Chaim Leib Halbert][GH], 2013-2020
* Modifications, [Konstantin Tretyakov][Konstantin intervaltree], 2014
Licensed under the [Apache License, version 2.0][Apache].
@@ -369,6 +370,7 @@
[Konstantin intervaltree]: https://github.com/konstantint/PyIntervalTree
[siniG intervaltree]: https://github.com/siniG/intervaltree
[lmcarril intervaltree]: https://github.com/lmcarril/intervaltree
+[depristo intervaltree]: https://github.com/depristo/intervaltree
[Confuzzled AVL tree]:
http://www.eternallyconfuzzled.com/tuts/datastructures/jsw_tut_avl.aspx
[Wiki intervaltree]: http://en.wikipedia.org/wiki/Interval_tree
[Kahn intervaltree]:
http://zurb.com/forrst/posts/Interval_Tree_implementation_in_python-e0K
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/intervaltree-3.0.2/intervaltree/interval.py
new/intervaltree-3.1.0/intervaltree/interval.py
--- old/intervaltree-3.0.2/intervaltree/interval.py 2018-12-18
04:27:48.000000000 +0100
+++ new/intervaltree-3.1.0/intervaltree/interval.py 2020-06-30
03:12:01.000000000 +0200
@@ -53,6 +53,29 @@
except:
return self.contains_point(begin)
+ def overlap_size(self, begin, end=None):
+ """
+ Return the overlap size between two intervals or a point
+ :param begin: beginning point of the range, or the point, or an
Interval
+ :param end: end point of the range. Optional if not testing ranges.
+ :return: Return the overlap size, None if not overlap is found
+ :rtype: depends on the given input (e.g., int will be returned for int
interval and timedelta for
+ datetime intervals)
+ """
+ overlaps = self.overlaps(begin, end)
+ if not overlaps:
+ return 0
+
+ if end is not None:
+ # case end is given
+ i0 = max(self.begin, begin)
+ i1 = min(self.end, end)
+ return i1 - i0
+ # assume the type is interval, in other cases, an exception will be
thrown
+ i0 = max(self.begin, begin.begin)
+ i1 = min(self.end, begin.end)
+ return i1 - i0
+
def contains_point(self, p):
"""
Whether the Interval contains p.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/intervaltree-3.0.2/intervaltree/node.py
new/intervaltree-3.1.0/intervaltree/node.py
--- old/intervaltree-3.0.2/intervaltree/node.py 2018-12-18 04:27:48.000000000
+0100
+++ new/intervaltree-3.1.0/intervaltree/node.py 2020-08-03 09:59:40.000000000
+0200
@@ -35,6 +35,14 @@
class Node(object):
+ __slots__ = (
+ 'x_center',
+ 's_center',
+ 'left_node',
+ 'right_node',
+ 'depth',
+ 'balance'
+ )
def __init__(self,
x_center=None,
s_center=set(),
@@ -63,8 +71,17 @@
"""
if not intervals:
return None
+ return Node.from_sorted_intervals(sorted(intervals))
+
+ @classmethod
+ def from_sorted_intervals(cls, intervals):
+ """
+ :rtype : Node
+ """
+ if not intervals:
+ return None
node = Node()
- node = node.init_from_sorted(sorted(intervals))
+ node = node.init_from_sorted(intervals)
return node
def init_from_sorted(self, intervals):
@@ -82,8 +99,8 @@
s_right.append(k)
else:
self.s_center.add(k)
- self.left_node = Node.from_intervals(s_left)
- self.right_node = Node.from_intervals(s_right)
+ self.left_node = Node.from_sorted_intervals(s_left)
+ self.right_node = Node.from_sorted_intervals(s_right)
return self.rotate()
def center_hit(self, interval):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/intervaltree-3.0.2/intervaltree.egg-info/PKG-INFO
new/intervaltree-3.1.0/intervaltree.egg-info/PKG-INFO
--- old/intervaltree-3.0.2/intervaltree.egg-info/PKG-INFO 2018-12-18
04:56:56.000000000 +0100
+++ new/intervaltree-3.1.0/intervaltree.egg-info/PKG-INFO 2020-08-03
10:00:57.000000000 +0200
@@ -1,12 +1,12 @@
Metadata-Version: 2.1
Name: intervaltree
-Version: 3.0.2
+Version: 3.1.0
Summary: Editable interval tree data structure for Python 2 and 3
Home-page: https://github.com/chaimleib/intervaltree
Author: Chaim Leib Halbert, Konstantin Tretyakov
Author-email: [email protected]
License: Apache License, Version 2.0
-Download-URL: https://github.com/chaimleib/intervaltree/tarball/3.0.2
+Download-URL: https://github.com/chaimleib/intervaltree/tarball/3.1.0
Description: [![Build status badge][]][build status]
intervaltree
@@ -35,7 +35,7 @@
Features
--------
- * Supports Python 2.7 and Python 3.4+ (Tested under 2.7, and 3.4 thru
3.7)
+ * Supports Python 2.7 and Python 3.5+ (Tested under 2.7, and 3.5 thru
3.8)
* Initializing
* blank `tree = IntervalTree()`
* from an iterable of `Interval` objects (`tree =
IntervalTree(intervals)`)
@@ -359,11 +359,12 @@
* [konstantint/Konstantin Tretyakov][Konstantin intervaltree] of
the University of Tartu (Estonia)
* [siniG/Avi Gabay][siniG intervaltree]
* [lmcarril/Luis M. Carril][lmcarril intervaltree] of the
Karlsruhe Institute for Technology (Germany)
+ * [depristo/MarkDePristo][depristo intervaltree]
Copyright
---------
- * [Chaim Leib Halbert][GH], 2013-2018
+ * [Chaim Leib Halbert][GH], 2013-2020
* Modifications, [Konstantin Tretyakov][Konstantin intervaltree], 2014
Licensed under the [Apache License, version 2.0][Apache].
@@ -378,6 +379,7 @@
[Konstantin intervaltree]:
https://github.com/konstantint/PyIntervalTree
[siniG intervaltree]: https://github.com/siniG/intervaltree
[lmcarril intervaltree]: https://github.com/lmcarril/intervaltree
+ [depristo intervaltree]: https://github.com/depristo/intervaltree
[Confuzzled AVL tree]:
http://www.eternallyconfuzzled.com/tuts/datastructures/jsw_tut_avl.aspx
[Wiki intervaltree]: http://en.wikipedia.org/wiki/Interval_tree
[Kahn intervaltree]:
http://zurb.com/forrst/posts/Interval_Tree_implementation_in_python-e0K
@@ -386,7 +388,7 @@
Keywords: interval-tree data-structure intervals tree
Platform: UNKNOWN
-Classifier: Development Status :: 4 - Beta
+Classifier: Development Status :: 5 - Production/Stable
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
@@ -395,10 +397,10 @@
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.4
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: License :: OSI Approved :: Apache Software License
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/intervaltree-3.0.2/setup.cfg
new/intervaltree-3.1.0/setup.cfg
--- old/intervaltree-3.0.2/setup.cfg 2018-12-18 04:56:57.000000000 +0100
+++ new/intervaltree-3.1.0/setup.cfg 2020-08-03 10:00:57.995909700 +0200
@@ -7,3 +7,6 @@
addopts = --doctest-modules --doctest-glob='README.md' --ignore=setup.py
--ignore=*.pyc
norecursedirs = *.egg* *doc* .* _* htmlcov scripts dist bin test/data
+[bdist_wheel]
+universal = 1
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/intervaltree-3.0.2/setup.py
new/intervaltree-3.1.0/setup.py
--- old/intervaltree-3.0.2/setup.py 2018-12-18 04:27:48.000000000 +0100
+++ new/intervaltree-3.1.0/setup.py 2020-08-03 09:59:40.000000000 +0200
@@ -33,16 +33,16 @@
import subprocess
## CONFIG
-target_version = '3.0.2'
+target_version = '3.1.0'
def version_info(target_version):
is_dev_version = 'PYPI' in os.environ and os.environ['PYPI'] == 'pypitest'
if is_dev_version:
p = subprocess.Popen('git describe --tag'.split(),
stdout=subprocess.PIPE)
- git_describe = p.communicate()[0].strip()
+ git_describe = str(p.communicate()[0]).strip()
release, build, commitish = git_describe.split('-')
- version = "{0}.post{1}".format(release, build)
+ version = "{0}a{1}".format(target_version, build)
else: # This is a RELEASE version
version = target_version
return {
@@ -86,7 +86,7 @@
long_description=long_description,
long_description_content_type='text/markdown',
classifiers=[ # Get strings from
http://pypi.python.org/pypi?%3Aaction=list_classifiers
- 'Development Status :: 4 - Beta',
+ 'Development Status :: 5 - Production/Stable',
'Programming Language :: Python :: Implementation :: PyPy',
'Intended Audience :: Developers',
'Intended Audience :: Information Technology',
@@ -95,10 +95,10 @@
'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',
'License :: OSI Approved :: Apache Software License',
'Topic :: Scientific/Engineering :: Artificial Intelligence',
'Topic :: Scientific/Engineering :: Bio-Informatics',