Hello community,
here is the log from the commit of package python-osprofiler for
openSUSE:Factory checked in at 2020-06-05 20:15:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-osprofiler (Old)
and /work/SRC/openSUSE:Factory/.python-osprofiler.new.3606 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-osprofiler"
Fri Jun 5 20:15:47 2020 rev:12 rq:803605 version:3.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-osprofiler/python-osprofiler.changes
2020-03-24 22:32:45.649101612 +0100
+++
/work/SRC/openSUSE:Factory/.python-osprofiler.new.3606/python-osprofiler.changes
2020-06-05 20:19:50.171789360 +0200
@@ -1,0 +2,11 @@
+Tue May 12 10:04:24 UTC 2020 - [email protected]
+
+- update to version 3.1.0
+ - Handle driver initialization errors to avoid service crash
+ - [ussuri][goal] Drop python 2.7 support and testing
+ - Switch to Ussuri jobs
+ - Start README.rst with a better title
+ - Update master for stable/train
+ - Update hacking for Python3
+
+-------------------------------------------------------------------
Old:
----
osprofiler-2.8.2.tar.gz
New:
----
osprofiler-3.1.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-osprofiler.spec ++++++
--- /var/tmp/diff_new_pack.yMel6z/_old 2020-06-05 20:19:51.231792965 +0200
+++ /var/tmp/diff_new_pack.yMel6z/_new 2020-06-05 20:19:51.235792978 +0200
@@ -17,13 +17,13 @@
Name: python-osprofiler
-Version: 2.8.2
+Version: 3.1.0
Release: 0
Summary: OpenStack Profiler Library
License: Apache-2.0
Group: Development/Languages/Python
URL: https://launchpad.net/osprofiler
-Source0:
https://files.pythonhosted.org/packages/source/o/osprofiler/osprofiler-2.8.2.tar.gz
+Source0:
https://files.pythonhosted.org/packages/source/o/osprofiler/osprofiler-3.1.0.tar.gz
BuildRequires: openstack-macros
BuildRequires: python3-PrettyTable >= 0.7.2
BuildRequires: python3-WebOb >= 1.7.1
@@ -85,7 +85,7 @@
Documentation for OSProfiler.
%prep
-%autosetup -p1 -n osprofiler-2.8.2
+%autosetup -p1 -n osprofiler-3.1.0
%py_req_cleanup
%build
++++++ _service ++++++
--- /var/tmp/diff_new_pack.yMel6z/_old 2020-06-05 20:19:51.255793047 +0200
+++ /var/tmp/diff_new_pack.yMel6z/_new 2020-06-05 20:19:51.255793047 +0200
@@ -1,8 +1,8 @@
<services>
<service mode="disabled" name="renderspec">
- <param
name="input-template">https://raw.githubusercontent.com/openstack/rpm-packaging/stable/train/openstack/osprofiler/osprofiler.spec.j2</param>
+ <param
name="input-template">https://opendev.org/openstack/rpm-packaging/raw/branch/stable/ussuri/openstack/osprofiler/osprofiler.spec.j2</param>
<param name="output-name">python-osprofiler.spec</param>
- <param
name="requirements">https://raw.githubusercontent.com/openstack/osprofiler/stable/train/requirements.txt</param>
+ <param
name="requirements">https://opendev.org/openstack/osprofiler/raw/branch/stable/ussuri/requirements.txt</param>
<param name="changelog-email">[email protected]</param>
<param name="changelog-provider">gh,openstack,osprofiler</param>
</service>
++++++ osprofiler-2.8.2.tar.gz -> osprofiler-3.1.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/.zuul.yaml
new/osprofiler-3.1.0/.zuul.yaml
--- old/osprofiler-2.8.2/.zuul.yaml 2019-09-04 16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/.zuul.yaml 2020-04-07 12:08:37.000000000 +0200
@@ -1,27 +1,21 @@
- project:
templates:
- check-requirements
- - lib-forward-testing
- lib-forward-testing-python3
- openstack-cover-jobs
- openstack-lower-constraints-jobs
- - openstack-python-jobs
- - openstack-python3-train-jobs
+ - openstack-python3-ussuri-jobs
- periodic-stable-jobs
- publish-openstack-docs-pti
- release-notes-jobs-python3
check:
jobs:
- - openstack-tox-functional
- openstack-tox-functional-py36
- tempest-smoke-py3-osprofiler-redis
- tempest-smoke-py3-osprofiler-sqlalchemy
gate:
jobs:
- - openstack-tox-functional
- openstack-tox-functional-py36
- - tempest-smoke-py3-osprofiler-redis
- - tempest-smoke-py3-osprofiler-sqlalchemy
- job:
name: tempest-smoke-py3-osprofiler-redis
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/AUTHORS new/osprofiler-3.1.0/AUTHORS
--- old/osprofiler-2.8.2/AUTHORS 2019-09-04 16:26:48.000000000 +0200
+++ new/osprofiler-3.1.0/AUTHORS 2020-04-07 12:10:14.000000000 +0200
@@ -72,4 +72,6 @@
sunyandi <[email protected]>
uppi <[email protected]>
wangxiyuan <[email protected]>
+yangkun.lc <[email protected]>
+zhangboye <[email protected]>
zhouxinyong <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/ChangeLog
new/osprofiler-3.1.0/ChangeLog
--- old/osprofiler-2.8.2/ChangeLog 2019-09-04 16:26:48.000000000 +0200
+++ new/osprofiler-3.1.0/ChangeLog 2020-04-07 12:10:14.000000000 +0200
@@ -1,6 +1,24 @@
CHANGES
=======
+3.1.0
+-----
+
+* Update hacking for Python3
+* Start README.rst with a better title
+
+3.0.0
+-----
+
+* [ussuri][goal] Drop python 2.7 support and testing
+
+2.9.0
+-----
+
+* Switch to Ussuri jobs
+* Update master for stable/train
+* Handle driver initialization errors to avoid service crash
+
2.8.2
-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/PKG-INFO
new/osprofiler-3.1.0/PKG-INFO
--- old/osprofiler-2.8.2/PKG-INFO 2019-09-04 16:26:49.000000000 +0200
+++ new/osprofiler-3.1.0/PKG-INFO 2020-04-07 12:10:14.000000000 +0200
@@ -1,24 +1,20 @@
Metadata-Version: 2.1
Name: osprofiler
-Version: 2.8.2
+Version: 3.1.0
Summary: OpenStack Profiler Library
Home-page: https://docs.openstack.org/osprofiler/latest/
Author: OpenStack
Author-email: [email protected]
License: UNKNOWN
-Description: ========================
- Team and repository tags
- ========================
+Description: ===================================================
+ OSProfiler -- Library for cross-project profiling
+ ===================================================
.. image:: https://governance.openstack.org/tc/badges/osprofiler.svg
:target:
https://governance.openstack.org/tc/reference/tags/index.html
.. Change things from this point on
- ===========================================================
- OSProfiler -- Library for cross-project profiling library
- ===========================================================
-
.. image:: https://img.shields.io/pypi/v/osprofiler.svg
:target: https://pypi.org/project/osprofiler/
:alt: Latest Version
@@ -48,10 +44,11 @@
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 2
-Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
-Provides-Extra: test
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: Implementation :: CPython
+Requires-Python: >=3.6
Provides-Extra: oslo_config
+Provides-Extra: test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/README.rst
new/osprofiler-3.1.0/README.rst
--- old/osprofiler-2.8.2/README.rst 2019-09-04 16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/README.rst 2020-04-07 12:08:37.000000000 +0200
@@ -1,16 +1,12 @@
-========================
-Team and repository tags
-========================
+===================================================
+ OSProfiler -- Library for cross-project profiling
+===================================================
.. image:: https://governance.openstack.org/tc/badges/osprofiler.svg
:target: https://governance.openstack.org/tc/reference/tags/index.html
.. Change things from this point on
-===========================================================
- OSProfiler -- Library for cross-project profiling library
-===========================================================
-
.. image:: https://img.shields.io/pypi/v/osprofiler.svg
:target: https://pypi.org/project/osprofiler/
:alt: Latest Version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/lower-constraints.txt
new/osprofiler-3.1.0/lower-constraints.txt
--- old/osprofiler-2.8.2/lower-constraints.txt 2019-09-04 16:25:44.000000000
+0200
+++ new/osprofiler-3.1.0/lower-constraints.txt 2020-04-07 12:08:37.000000000
+0200
@@ -2,7 +2,6 @@
ddt===1.0.1
dulwich===0.15.0
elasticsearch===2.0.0
-futures===3.0.0
jaeger-client==3.8.0
mock===2.0.0
netaddr===0.7.18
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/osprofiler-2.8.2/osprofiler/drivers/elasticsearch_driver.py
new/osprofiler-3.1.0/osprofiler/drivers/elasticsearch_driver.py
--- old/osprofiler-2.8.2/osprofiler/drivers/elasticsearch_driver.py
2019-09-04 16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler/drivers/elasticsearch_driver.py
2020-04-07 12:08:37.000000000 +0200
@@ -36,9 +36,9 @@
from elasticsearch import Elasticsearch
except ImportError:
raise exc.CommandError(
- "To use this command, you should install "
- "'elasticsearch' manually. Use command:\n "
- "'pip install elasticsearch'.")
+ "To use OSProfiler with ElasticSearch driver, "
+ "please install `elasticsearch` library. "
+ "To install with pip:\n `pip install elasticsearch`.")
client_url = parser.urlunparse(parser.urlparse(self.connection_str)
._replace(scheme="http"))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/osprofiler/drivers/jaeger.py
new/osprofiler-3.1.0/osprofiler/drivers/jaeger.py
--- old/osprofiler-2.8.2/osprofiler/drivers/jaeger.py 2019-09-04
16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler/drivers/jaeger.py 2020-04-07
12:08:37.000000000 +0200
@@ -40,8 +40,8 @@
except ImportError:
raise exc.CommandError(
"To use OSProfiler with Uber Jaeger tracer, "
- "you have to install `jaeger-client` manually. "
- "Install with pip:\n `pip install jaeger-client`."
+ "please install `jaeger-client` library. "
+ "To install with pip:\n `pip install jaeger-client`."
)
parsed_url = parser.urlparse(connection_str)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/osprofiler/drivers/mongodb.py
new/osprofiler-3.1.0/osprofiler/drivers/mongodb.py
--- old/osprofiler-2.8.2/osprofiler/drivers/mongodb.py 2019-09-04
16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler/drivers/mongodb.py 2020-04-07
12:08:37.000000000 +0200
@@ -28,9 +28,9 @@
from pymongo import MongoClient
except ImportError:
raise exc.CommandError(
- "To use this command, you should install "
- "'pymongo' manually. Use command:\n "
- "'pip install pymongo'.")
+ "To use OSProfiler with MongoDB driver, "
+ "please install `pymongo` library. "
+ "To install with pip:\n `pip install pymongo`.")
client = MongoClient(self.connection_str, connect=False)
self.db = client[db_name]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/osprofiler/drivers/redis_driver.py
new/osprofiler-3.1.0/osprofiler/drivers/redis_driver.py
--- old/osprofiler-2.8.2/osprofiler/drivers/redis_driver.py 2019-09-04
16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler/drivers/redis_driver.py 2020-04-07
12:08:37.000000000 +0200
@@ -40,9 +40,9 @@
from redis import StrictRedis
except ImportError:
raise exc.CommandError(
- "To use this command, you should install "
- "'redis' manually. Use command:\n "
- "'pip install redis'.")
+ "To use OSProfiler with Redis driver, "
+ "please install `redis` library. "
+ "To install with pip:\n `pip install redis`.")
# only connection over network is supported with schema
# redis://[:password]@host[:port][/db]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/osprofiler/hacking/checks.py
new/osprofiler-3.1.0/osprofiler/hacking/checks.py
--- old/osprofiler-2.8.2/osprofiler/hacking/checks.py 2019-09-04
16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler/hacking/checks.py 2020-04-07
12:08:37.000000000 +0200
@@ -28,6 +28,8 @@
import re
import tokenize
+from hacking import core
+
re_assert_true_instance = re.compile(
r"(.)*assertTrue\(isinstance\((\w|\.|\'|\"|\[|\])+, "
r"(\w|\.|\'|\"|\[|\])+\)\)")
@@ -63,6 +65,7 @@
r"\s:raise[^s] *.*$|\s:raises *:.*$|\s:raises *[^:]+$")
[email protected]
def skip_ignored_lines(func):
@functools.wraps(func)
@@ -86,6 +89,7 @@
@skip_ignored_lines
[email protected]
def check_assert_methods_from_mock(logical_line, filename):
"""Ensure that ``assert_*`` methods from ``mock`` library is used correctly
@@ -132,6 +136,7 @@
@skip_ignored_lines
[email protected]
def assert_true_instance(logical_line, filename):
"""Check for assertTrue(isinstance(a, b)) sentences
@@ -143,6 +148,7 @@
@skip_ignored_lines
[email protected]
def assert_equal_type(logical_line, filename):
"""Check for assertEqual(type(A), B) sentences
@@ -154,6 +160,7 @@
@skip_ignored_lines
[email protected]
def assert_equal_none(logical_line, filename):
"""Check for assertEqual(A, None) or assertEqual(None, A) sentences
@@ -168,6 +175,7 @@
@skip_ignored_lines
[email protected]
def assert_true_or_false_with_in(logical_line, filename):
"""Check assertTrue/False(A in/not in B) with collection contents
@@ -186,6 +194,7 @@
@skip_ignored_lines
[email protected]
def assert_equal_in(logical_line, filename):
"""Check assertEqual(A in/not in B, True/False) with collection contents
@@ -204,6 +213,7 @@
@skip_ignored_lines
[email protected]
def check_quotes(logical_line, filename):
"""Check that single quotation marks are not used
@@ -257,6 +267,7 @@
@skip_ignored_lines
[email protected]
def check_no_constructor_data_struct(logical_line, filename):
"""Check that data structs (lists, dicts) are declared using literals
@@ -271,6 +282,7 @@
yield (0, "N351 Remove list() construct and use literal []")
[email protected]
def check_dict_formatting_in_string(logical_line, tokens):
"""Check that strings do not use dict-formatting with a single replacement
@@ -322,7 +334,7 @@
format_keys.add(match.group(1))
if len(format_keys) == 1:
yield (0,
- "N353 Do not use mapping key string formatting "
+ "N352 Do not use mapping key string formatting "
"with a single key")
if text != ")":
# NOTE(stpierre): You can have a parenthesized string
@@ -339,6 +351,7 @@
@skip_ignored_lines
[email protected]
def check_using_unicode(logical_line, filename):
"""Check crosspython unicode usage
@@ -350,6 +363,7 @@
"use 'six.text_type' instead.")
[email protected]
def check_raises(physical_line, filename):
"""Check raises usage
@@ -362,17 +376,3 @@
if re_raises.search(physical_line):
return (0, "N354 ':Please use ':raises Exception: conditions' "
"in docstrings.")
-
-
-def factory(register):
- register(check_assert_methods_from_mock)
- register(assert_true_instance)
- register(assert_equal_type)
- register(assert_equal_none)
- register(assert_true_or_false_with_in)
- register(assert_equal_in)
- register(check_quotes)
- register(check_no_constructor_data_struct)
- register(check_dict_formatting_in_string)
- register(check_using_unicode)
- register(check_raises)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/osprofiler/notifier.py
new/osprofiler-3.1.0/osprofiler/notifier.py
--- old/osprofiler-2.8.2/osprofiler/notifier.py 2019-09-04 16:25:44.000000000
+0200
+++ new/osprofiler-3.1.0/osprofiler/notifier.py 2020-04-07 12:08:37.000000000
+0200
@@ -13,16 +13,21 @@
# License for the specific language governing permissions and limitations
# under the License.
+import logging
+
from osprofiler.drivers import base
+LOG = logging.getLogger(__name__)
+
+
def _noop_notifier(info, context=None):
"""Do nothing on notify()."""
# NOTE(boris-42): By default we are using noop notifier.
__notifier = _noop_notifier
-__driver_cache = {}
+__notifier_cache = {} # map: connection-string -> notifier
def notify(info):
@@ -54,14 +59,24 @@
:param connection_string: connection string which specifies the storage
driver for notifier
- :param *args: args that will be passed to the driver's __init__ method
- :param **kwargs: kwargs that will be passed to the driver's __init__ method
+ :param args: args that will be passed to the driver's __init__ method
+ :param kwargs: kwargs that will be passed to the driver's __init__ method
:returns: Callable notifier method
- :raises TypeError: In case of invalid name of plugin raises TypeError
"""
- global __driver_cache
- if connection_string not in __driver_cache:
- __driver_cache[connection_string] = base.get_driver(connection_string,
- *args,
- **kwargs).notify
- return __driver_cache[connection_string]
+ global __notifier_cache
+ if connection_string not in __notifier_cache:
+ try:
+ driver = base.get_driver(connection_string, *args, **kwargs)
+ __notifier_cache[connection_string] = driver.notify
+ LOG.info("osprofiler is enabled with connection string: %s",
+ connection_string)
+ except Exception:
+ LOG.exception("Could not initialize driver for connection string "
+ "%s, osprofiler is disabled", connection_string)
+ __notifier_cache[connection_string] = _noop_notifier
+
+ return __notifier_cache[connection_string]
+
+
+def clear_notifier_cache():
+ __notifier_cache.clear()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/osprofiler-2.8.2/osprofiler/tests/unit/test_notifier.py
new/osprofiler-3.1.0/osprofiler/tests/unit/test_notifier.py
--- old/osprofiler-2.8.2/osprofiler/tests/unit/test_notifier.py 2019-09-04
16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler/tests/unit/test_notifier.py 2020-04-07
12:08:37.000000000 +0200
@@ -23,6 +23,7 @@
def tearDown(self):
notifier.set(notifier._noop_notifier) # restore defaults
+ notifier.clear_notifier_cache()
super(NotifierTestCase, self).tearDown()
def test_set(self):
@@ -49,3 +50,11 @@
result = notifier.create("test", 10, b=20)
mock_factory.assert_called_once_with("test", 10, b=20)
self.assertEqual(mock_factory.return_value.notify, result)
+
+ @mock.patch("osprofiler.notifier.base.get_driver")
+ def test_create_driver_init_failure(self, mock_get_driver):
+ mock_get_driver.side_effect = Exception()
+
+ result = notifier.create("test", 10, b=20)
+ mock_get_driver.assert_called_once_with("test", 10, b=20)
+ self.assertEqual(notifier._noop_notifier, result)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/osprofiler.egg-info/PKG-INFO
new/osprofiler-3.1.0/osprofiler.egg-info/PKG-INFO
--- old/osprofiler-2.8.2/osprofiler.egg-info/PKG-INFO 2019-09-04
16:26:49.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler.egg-info/PKG-INFO 2020-04-07
12:10:14.000000000 +0200
@@ -1,24 +1,20 @@
Metadata-Version: 2.1
Name: osprofiler
-Version: 2.8.2
+Version: 3.1.0
Summary: OpenStack Profiler Library
Home-page: https://docs.openstack.org/osprofiler/latest/
Author: OpenStack
Author-email: [email protected]
License: UNKNOWN
-Description: ========================
- Team and repository tags
- ========================
+Description: ===================================================
+ OSProfiler -- Library for cross-project profiling
+ ===================================================
.. image:: https://governance.openstack.org/tc/badges/osprofiler.svg
:target:
https://governance.openstack.org/tc/reference/tags/index.html
.. Change things from this point on
- ===========================================================
- OSProfiler -- Library for cross-project profiling library
- ===========================================================
-
.. image:: https://img.shields.io/pypi/v/osprofiler.svg
:target: https://pypi.org/project/osprofiler/
:alt: Latest Version
@@ -48,10 +44,11 @@
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 2
-Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
-Provides-Extra: test
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: Implementation :: CPython
+Requires-Python: >=3.6
Provides-Extra: oslo_config
+Provides-Extra: test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/osprofiler.egg-info/SOURCES.txt
new/osprofiler-3.1.0/osprofiler.egg-info/SOURCES.txt
--- old/osprofiler-2.8.2/osprofiler.egg-info/SOURCES.txt 2019-09-04
16:26:49.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler.egg-info/SOURCES.txt 2020-04-07
12:10:14.000000000 +0200
@@ -94,6 +94,7 @@
osprofiler/tests/unit/drivers/test_redis_driver.py
playbooks/osprofiler-post.yaml
releasenotes/notes/add-reno-996dd44974d53238.yaml
+releasenotes/notes/drop-python-2-7-73d3113c69d724d6.yaml
releasenotes/notes/redis-improvement-d4c91683fc89f570.yaml
releasenotes/source/conf.py
releasenotes/source/index.rst
@@ -102,6 +103,7 @@
releasenotes/source/queens.rst
releasenotes/source/rocky.rst
releasenotes/source/stein.rst
+releasenotes/source/train.rst
releasenotes/source/unreleased.rst
releasenotes/source/_static/.placeholder
releasenotes/source/_templates/.placeholder
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/osprofiler.egg-info/pbr.json
new/osprofiler-3.1.0/osprofiler.egg-info/pbr.json
--- old/osprofiler-2.8.2/osprofiler.egg-info/pbr.json 2019-09-04
16:26:49.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler.egg-info/pbr.json 2020-04-07
12:10:14.000000000 +0200
@@ -1 +1 @@
-{"git_version": "d431c7a", "is_release": true}
\ No newline at end of file
+{"git_version": "6e6d76a", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/osprofiler.egg-info/requires.txt
new/osprofiler-3.1.0/osprofiler.egg-info/requires.txt
--- old/osprofiler-2.8.2/osprofiler.egg-info/requires.txt 2019-09-04
16:26:49.000000000 +0200
+++ new/osprofiler-3.1.0/osprofiler.egg-info/requires.txt 2020-04-07
12:10:14.000000000 +0200
@@ -11,7 +11,7 @@
oslo.config>=5.2.0
[test]
-hacking!=0.13.0,<0.14,>=0.12.0
+hacking<3.1.0,>=3.0
coverage>=4.0
ddt>=1.0.1
mock>=2.0.0
@@ -25,6 +25,3 @@
redis>=2.10.0
reno>=2.5.0
jaeger-client>=3.8.0
-
-[test:(python_version=='2.7' or python_version=='2.6')]
-futures>=3.0.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/osprofiler-2.8.2/releasenotes/notes/drop-python-2-7-73d3113c69d724d6.yaml
new/osprofiler-3.1.0/releasenotes/notes/drop-python-2-7-73d3113c69d724d6.yaml
---
old/osprofiler-2.8.2/releasenotes/notes/drop-python-2-7-73d3113c69d724d6.yaml
1970-01-01 01:00:00.000000000 +0100
+++
new/osprofiler-3.1.0/releasenotes/notes/drop-python-2-7-73d3113c69d724d6.yaml
2020-04-07 12:08:37.000000000 +0200
@@ -0,0 +1,5 @@
+---
+upgrade:
+ - |
+ Python 2.7 support has been dropped. The minimum version of Python now
+ supported by osprofiler is Python 3.6.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/releasenotes/source/index.rst
new/osprofiler-3.1.0/releasenotes/source/index.rst
--- old/osprofiler-2.8.2/releasenotes/source/index.rst 2019-09-04
16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/releasenotes/source/index.rst 2020-04-07
12:08:37.000000000 +0200
@@ -6,6 +6,7 @@
:maxdepth: 1
unreleased
+ train
stein
rocky
queens
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/releasenotes/source/train.rst
new/osprofiler-3.1.0/releasenotes/source/train.rst
--- old/osprofiler-2.8.2/releasenotes/source/train.rst 1970-01-01
01:00:00.000000000 +0100
+++ new/osprofiler-3.1.0/releasenotes/source/train.rst 2020-04-07
12:08:37.000000000 +0200
@@ -0,0 +1,6 @@
+==========================
+Train Series Release Notes
+==========================
+
+.. release-notes::
+ :branch: stable/train
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/setup.cfg
new/osprofiler-3.1.0/setup.cfg
--- old/osprofiler-2.8.2/setup.cfg 2019-09-04 16:26:49.000000000 +0200
+++ new/osprofiler-3.1.0/setup.cfg 2020-04-07 12:10:14.000000000 +0200
@@ -6,6 +6,7 @@
author = OpenStack
author-email = [email protected]
home-page = https://docs.openstack.org/osprofiler/latest/
+python-requires = >=3.6
classifier =
Environment :: OpenStack
Intended Audience :: Developers
@@ -13,30 +14,20 @@
License :: OSI Approved :: Apache Software License
Operating System :: POSIX :: Linux
Programming Language :: Python
- Programming Language :: Python :: 2
- Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
+ Programming Language :: Python :: 3 :: Only
+ Programming Language :: Python :: Implementation :: CPython
[files]
packages =
osprofiler
-[global]
-setup-hooks =
- pbr.hooks.setup_hook
-
[extras]
oslo_config =
oslo.config>=5.2.0 # Apache-2.0
-[build_sphinx]
-all_files = 1
-build-dir = doc/build
-source-dir = doc/source
-warning-is-error = 1
-
[entry_points]
oslo.config.opts =
osprofiler = osprofiler.opts:list_opts
@@ -45,9 +36,6 @@
paste.filter_factory =
osprofiler = osprofiler.web:WsgiMiddleware.factory
-[wheel]
-universal = 1
-
[egg_info]
tag_build =
tag_date = 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/setup.py
new/osprofiler-3.1.0/setup.py
--- old/osprofiler-2.8.2/setup.py 2019-09-04 16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/setup.py 2020-04-07 12:08:37.000000000 +0200
@@ -14,14 +14,6 @@
# THIS FILE IS MANAGED BY THE GLOBAL REQUIREMENTS REPO - DO NOT EDIT
import setuptools
-# In python < 2.7.4, a lazy loading of package `pbr` will break
-# setuptools if some other modules registered functions in `atexit`.
-# solution from: http://bugs.python.org/issue15881#msg170215
-try:
- import multiprocessing # noqa
-except ImportError:
- pass
-
setuptools.setup(
- setup_requires=['pbr>=1.8'],
+ setup_requires=['pbr>=2.0'],
pbr=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/test-requirements.txt
new/osprofiler-3.1.0/test-requirements.txt
--- old/osprofiler-2.8.2/test-requirements.txt 2019-09-04 16:25:44.000000000
+0200
+++ new/osprofiler-3.1.0/test-requirements.txt 2020-04-07 12:08:37.000000000
+0200
@@ -1,4 +1,4 @@
-hacking>=0.12.0,!=0.13.0,<0.14 # Apache-2.0
+hacking>=3.0,<3.1.0 # Apache-2.0
coverage>=4.0 # Apache-2.0
ddt>=1.0.1 # MIT
@@ -25,4 +25,3 @@
# For Jaeger Tracing
jaeger-client>=3.8.0 # Apache-2.0
-futures>=3.0.0;python_version=='2.7' or python_version=='2.6' # PSF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/osprofiler-2.8.2/tox.ini new/osprofiler-3.1.0/tox.ini
--- old/osprofiler-2.8.2/tox.ini 2019-09-04 16:25:44.000000000 +0200
+++ new/osprofiler-3.1.0/tox.ini 2020-04-07 12:08:37.000000000 +0200
@@ -1,9 +1,12 @@
[tox]
-minversion = 2.0
-skipsdist = True
-envlist = py27,py37,pep8
+minversion = 3.1.0
+# Needed to create ChangeLog for docs building
+skipsdist = False
+envlist = py37,pep8
+ignore_basepython_conflict = True
[testenv]
+basepython = python3
setenv = VIRTUAL_ENV={envdir}
LANG=en_US.UTF-8
LANGUAGE=en_US:en
@@ -12,13 +15,11 @@
-c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/master/upper-constraints.txt}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
-install_command = pip install -U {opts} {packages}
usedevelop = True
commands = stestr run --slowest {posargs}
distribute = false
[testenv:functional]
-basepython = python2.7
setenv = {[testenv]setenv}
OS_TEST_PATH=./osprofiler/tests/functional
deps =
@@ -28,10 +29,10 @@
[testenv:functional-py36]
basepython = python3.6
setenv = {[testenv:functional]setenv}
-deps = {[testenv:functional]deps}
+deps =
+ {[testenv:functional]deps}
[testenv:pep8]
-basepython = python3
commands =
flake8
# Run security linter
@@ -39,11 +40,9 @@
distribute = false
[testenv:venv]
-basepython = python3
commands = {posargs}
[testenv:cover]
-basepython = python3
setenv =
PYTHON=coverage run --source osprofiler --parallel-mode
commands =
@@ -53,11 +52,10 @@
coverage xml -o cover/coverage.xml
[testenv:docs]
-basepython = python3
-commands = python setup.py build_sphinx
+commands =
+ sphinx-build -W --keep-going -b html -d doc/build/doctrees doc/source
doc/build/html
[testenv:bandit]
-basepython = python3
commands = bandit -r osprofiler -n5
[flake8]
@@ -65,15 +63,25 @@
builtins = _
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,tools,setup.py,build,releasenotes
-[hacking]
-local-check-factory = osprofiler.hacking.checks.factory
+[flake8:local-plugins]
+extension =
+ N301 = checks:check_assert_methods_from_mock
+ N320 = checks:assert_true_instance
+ N321 = checks:assert_equal_type
+ N322 = checks:assert_equal_none
+ N323 = checks:assert_true_or_false_with_in
+ N324 = checks:assert_equal_in
+ N350 = checks:check_quotes
+ N351 = checks:check_no_constructor_data_struct
+ N352 = checks:check_dict_formatting_in_string
+ N353 = checks:check_using_unicode
+ N354 = checks:check_raises
+paths = ./osprofiler/hacking
[testenv:releasenotes]
-basepython = python3
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html
releasenotes/source releasenotes/build/html
[testenv:lower-constraints]
-basepython = python3
deps =
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt