Hello community,

here is the log from the commit of package python-oslo.serialization for 
openSUSE:Factory checked in at 2015-10-30 13:42:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-oslo.serialization (Old)
 and      /work/SRC/openSUSE:Factory/.python-oslo.serialization.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-oslo.serialization"

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-oslo.serialization/python-oslo.serialization.changes
      2015-08-27 08:54:46.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-oslo.serialization.new/python-oslo.serialization.changes
 2015-10-30 13:42:21.000000000 +0100
@@ -1,0 +2,18 @@
+Wed Sep  9 06:54:35 UTC 2015 - tbecht...@suse.com
+
+- update to 1.9.0:
+  * Updated from global requirements
+  * Drop stale test - test_jsonutils
+  * Stop using deprecated oslo_utils.timeutils.strtime
+  * Add tox target to find missing requirements
+  * Remove oslo namespace package
+  * Do not use oslo namespace for oslo.i18n lib
+  * Switch badges from 'pypip.in' to 'shields.io'
+- Adjust Requires according to requirements.txt
+
+-------------------------------------------------------------------
+Mon Aug 10 11:45:21 UTC 2015 - seife+...@b1-systems.com
+
+- fix spelling of python-Sphinx BuildRequires
+
+-------------------------------------------------------------------

Old:
----
  oslo.serialization-1.6.0.tar.gz

New:
----
  oslo.serialization-1.9.0.tar.gz

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

Other differences:
------------------
++++++ python-oslo.serialization.spec ++++++
--- /var/tmp/diff_new_pack.oAZB7a/_old  2015-10-30 13:42:22.000000000 +0100
+++ /var/tmp/diff_new_pack.oAZB7a/_new  2015-10-30 13:42:22.000000000 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           python-oslo.serialization
-Version:        1.6.0
+Version:        1.9.0
 Release:        0
 Summary:        OpenStack serialization API
 License:        Apache-2.0
@@ -28,18 +28,18 @@
 BuildRequires:  python-devel
 BuildRequires:  python-pbr
 # Test requirements
+BuildRequires:  python-Sphinx
 BuildRequires:  python-coverage
 BuildRequires:  python-mock
 BuildRequires:  python-netaddr
 BuildRequires:  python-oslo.i18n
 BuildRequires:  python-oslotest
 BuildRequires:  python-simplejson
-BuildRequires:  python-sphinx
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 Requires:       python-Babel >= 1.3
 Requires:       python-iso8601 >= 0.1.9
 Requires:       python-msgpack-python >= 0.4.0
-Requires:       python-oslo.utils >= 1.4.0
+Requires:       python-oslo.utils >= 2.0.0
 Requires:       python-pytz >= 2013.6
 Requires:       python-six >= 1.9.0
 BuildArch:      noarch

++++++ oslo.serialization-1.6.0.tar.gz -> oslo.serialization-1.9.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/AUTHORS 
new/oslo.serialization-1.9.0/AUTHORS
--- old/oslo.serialization-1.6.0/AUTHORS        2015-06-02 17:09:32.000000000 
+0200
+++ new/oslo.serialization-1.9.0/AUTHORS        2015-09-08 18:00:55.000000000 
+0200
@@ -2,6 +2,7 @@
 Andreas Jaeger <a...@suse.de>
 Ann Kamyshnikova <akamyshnik...@mirantis.com>
 Ben Nemec <bne...@redhat.com>
+Brant Knudson <bknud...@us.ibm.com>
 Chang Bo Guo <guoc...@cn.ibm.com>
 Christian Berendt <bere...@b1-systems.de>
 Chuck Short <chuck.sh...@canonical.com>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/ChangeLog 
new/oslo.serialization-1.9.0/ChangeLog
--- old/oslo.serialization-1.6.0/ChangeLog      2015-06-02 17:09:32.000000000 
+0200
+++ new/oslo.serialization-1.9.0/ChangeLog      2015-09-08 18:00:55.000000000 
+0200
@@ -1,6 +1,36 @@
 CHANGES
 =======
 
+1.9.0
+-----
+
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+
+1.8.0
+-----
+
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Drop stale test - test_jsonutils
+
+1.7.0
+-----
+
+* Stop using deprecated oslo_utils.timeutils.strtime
+* Add tox target to find missing requirements
+* Remove oslo namespace package
+* Do not use oslo namespace for oslo.i18n lib
+* Updated from global requirements
+* Updated from global requirements
+* Switch badges from 'pypip.in' to 'shields.io'
+
 1.6.0
 -----
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/PKG-INFO 
new/oslo.serialization-1.9.0/PKG-INFO
--- old/oslo.serialization-1.6.0/PKG-INFO       2015-06-02 17:09:32.000000000 
+0200
+++ new/oslo.serialization-1.9.0/PKG-INFO       2015-09-08 18:00:56.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: oslo.serialization
-Version: 1.6.0
+Version: 1.9.0
 Summary: Oslo Serialization library
 Home-page: http://launchpad.net/oslo
 Author: OpenStack
@@ -10,11 +10,11 @@
          oslo.serialization
         ====================
         
-        .. image:: https://pypip.in/version/oslo.serialization/badge.svg
+        .. image:: https://img.shields.io/pypi/v/oslo.serialization.svg
             :target: https://pypi.python.org/pypi/oslo.serialization/
             :alt: Latest Version
         
-        .. image:: 
https://pypip.in/download/oslo.serialization/badge.svg?period=month
+        .. image:: https://img.shields.io/pypi/dm/oslo.serialization.svg
             :target: https://pypi.python.org/pypi/oslo.serialization/
             :alt: Downloads
         
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/README.rst 
new/oslo.serialization-1.9.0/README.rst
--- old/oslo.serialization-1.6.0/README.rst     2015-06-02 17:08:56.000000000 
+0200
+++ new/oslo.serialization-1.9.0/README.rst     2015-09-08 18:00:19.000000000 
+0200
@@ -2,11 +2,11 @@
  oslo.serialization
 ====================
 
-.. image:: https://pypip.in/version/oslo.serialization/badge.svg
+.. image:: https://img.shields.io/pypi/v/oslo.serialization.svg
     :target: https://pypi.python.org/pypi/oslo.serialization/
     :alt: Latest Version
 
-.. image:: https://pypip.in/download/oslo.serialization/badge.svg?period=month
+.. image:: https://img.shields.io/pypi/dm/oslo.serialization.svg
     :target: https://pypi.python.org/pypi/oslo.serialization/
     :alt: Downloads
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/oslo/__init__.py 
new/oslo.serialization-1.9.0/oslo/__init__.py
--- old/oslo.serialization-1.6.0/oslo/__init__.py       2015-06-02 
17:08:56.000000000 +0200
+++ new/oslo.serialization-1.9.0/oslo/__init__.py       1970-01-01 
01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
-#    Licensed under the Apache License, Version 2.0 (the "License"); you may
-#    not use this file except in compliance with the License. You may obtain
-#    a copy of the License at
-#
-#         http://www.apache.org/licenses/LICENSE-2.0
-#
-#    Unless required by applicable law or agreed to in writing, software
-#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-#    License for the specific language governing permissions and limitations
-#    under the License.
-
-__import__('pkg_resources').declare_namespace(__name__)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.serialization-1.6.0/oslo/serialization/__init__.py 
new/oslo.serialization-1.9.0/oslo/serialization/__init__.py
--- old/oslo.serialization-1.6.0/oslo/serialization/__init__.py 2015-06-02 
17:08:56.000000000 +0200
+++ new/oslo.serialization-1.9.0/oslo/serialization/__init__.py 1970-01-01 
01:00:00.000000000 +0100
@@ -1,26 +0,0 @@
-#    Licensed under the Apache License, Version 2.0 (the "License"); you may
-#    not use this file except in compliance with the License. You may obtain
-#    a copy of the License at
-#
-#         http://www.apache.org/licenses/LICENSE-2.0
-#
-#    Unless required by applicable law or agreed to in writing, software
-#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-#    License for the specific language governing permissions and limitations
-#    under the License.
-
-import warnings
-
-
-def deprecated():
-    new_name = __name__.replace('.', '_')
-    warnings.warn(
-        ('The oslo namespace package is deprecated. Please use %s instead.' %
-         new_name),
-        DeprecationWarning,
-        stacklevel=3,
-    )
-
-
-deprecated()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.serialization-1.6.0/oslo/serialization/jsonutils.py 
new/oslo.serialization-1.9.0/oslo/serialization/jsonutils.py
--- old/oslo.serialization-1.6.0/oslo/serialization/jsonutils.py        
2015-06-02 17:08:56.000000000 +0200
+++ new/oslo.serialization-1.9.0/oslo/serialization/jsonutils.py        
1970-01-01 01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
-#    Licensed under the Apache License, Version 2.0 (the "License"); you may
-#    not use this file except in compliance with the License. You may obtain
-#    a copy of the License at
-#
-#         http://www.apache.org/licenses/LICENSE-2.0
-#
-#    Unless required by applicable law or agreed to in writing, software
-#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-#    License for the specific language governing permissions and limitations
-#    under the License.
-
-from oslo_serialization.jsonutils import *  # noqa
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.serialization-1.6.0/oslo.serialization.egg-info/PKG-INFO 
new/oslo.serialization-1.9.0/oslo.serialization.egg-info/PKG-INFO
--- old/oslo.serialization-1.6.0/oslo.serialization.egg-info/PKG-INFO   
2015-06-02 17:09:32.000000000 +0200
+++ new/oslo.serialization-1.9.0/oslo.serialization.egg-info/PKG-INFO   
2015-09-08 18:00:55.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: oslo.serialization
-Version: 1.6.0
+Version: 1.9.0
 Summary: Oslo Serialization library
 Home-page: http://launchpad.net/oslo
 Author: OpenStack
@@ -10,11 +10,11 @@
          oslo.serialization
         ====================
         
-        .. image:: https://pypip.in/version/oslo.serialization/badge.svg
+        .. image:: https://img.shields.io/pypi/v/oslo.serialization.svg
             :target: https://pypi.python.org/pypi/oslo.serialization/
             :alt: Latest Version
         
-        .. image:: 
https://pypip.in/download/oslo.serialization/badge.svg?period=month
+        .. image:: https://img.shields.io/pypi/dm/oslo.serialization.svg
             :target: https://pypi.python.org/pypi/oslo.serialization/
             :alt: Downloads
         
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.serialization-1.6.0/oslo.serialization.egg-info/SOURCES.txt 
new/oslo.serialization-1.9.0/oslo.serialization.egg-info/SOURCES.txt
--- old/oslo.serialization-1.6.0/oslo.serialization.egg-info/SOURCES.txt        
2015-06-02 17:09:32.000000000 +0200
+++ new/oslo.serialization-1.9.0/oslo.serialization.egg-info/SOURCES.txt        
2015-09-08 18:00:56.000000000 +0200
@@ -20,23 +20,15 @@
 doc/source/history.rst
 doc/source/index.rst
 doc/source/installation.rst
-oslo/__init__.py
 oslo.serialization.egg-info/PKG-INFO
 oslo.serialization.egg-info/SOURCES.txt
 oslo.serialization.egg-info/dependency_links.txt
-oslo.serialization.egg-info/namespace_packages.txt
 oslo.serialization.egg-info/not-zip-safe
 oslo.serialization.egg-info/pbr.json
 oslo.serialization.egg-info/requires.txt
 oslo.serialization.egg-info/top_level.txt
-oslo/serialization/__init__.py
-oslo/serialization/jsonutils.py
 oslo_serialization/__init__.py
 oslo_serialization/jsonutils.py
 oslo_serialization/msgpackutils.py
 oslo_serialization/tests/__init__.py
-oslo_serialization/tests/test_jsonutils.py
-tests/__init__.py
-tests/test_jsonutils.py
-tests/test_msgpackutils.py
-tests/test_warning.py
\ No newline at end of file
+oslo_serialization/tests/test_jsonutils.py
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.serialization-1.6.0/oslo.serialization.egg-info/namespace_packages.txt 
new/oslo.serialization-1.9.0/oslo.serialization.egg-info/namespace_packages.txt
--- 
old/oslo.serialization-1.6.0/oslo.serialization.egg-info/namespace_packages.txt 
    2015-06-02 17:09:32.000000000 +0200
+++ 
new/oslo.serialization-1.9.0/oslo.serialization.egg-info/namespace_packages.txt 
    1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-oslo
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.serialization-1.6.0/oslo.serialization.egg-info/pbr.json 
new/oslo.serialization-1.9.0/oslo.serialization.egg-info/pbr.json
--- old/oslo.serialization-1.6.0/oslo.serialization.egg-info/pbr.json   
2015-06-02 17:09:32.000000000 +0200
+++ new/oslo.serialization-1.9.0/oslo.serialization.egg-info/pbr.json   
2015-09-08 18:00:55.000000000 +0200
@@ -1 +1 @@
-{"is_release": true, "git_version": "15c82cc"}
\ No newline at end of file
+{"is_release": true, "git_version": "03f3431"}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.serialization-1.6.0/oslo.serialization.egg-info/requires.txt 
new/oslo.serialization-1.9.0/oslo.serialization.egg-info/requires.txt
--- old/oslo.serialization-1.6.0/oslo.serialization.egg-info/requires.txt       
2015-06-02 17:09:32.000000000 +0200
+++ new/oslo.serialization-1.9.0/oslo.serialization.egg-info/requires.txt       
2015-09-08 18:00:55.000000000 +0200
@@ -1,7 +1,7 @@
-pbr>=0.11,<2.0
+pbr<2.0,>=1.6
 Babel>=1.3
 six>=1.9.0
 msgpack-python>=0.4.0
 iso8601>=0.1.9
-oslo.utils>=1.4.0                       # Apache-2.0
+oslo.utils>=2.0.0
 pytz>=2013.6
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.serialization-1.6.0/oslo.serialization.egg-info/top_level.txt 
new/oslo.serialization-1.9.0/oslo.serialization.egg-info/top_level.txt
--- old/oslo.serialization-1.6.0/oslo.serialization.egg-info/top_level.txt      
2015-06-02 17:09:32.000000000 +0200
+++ new/oslo.serialization-1.9.0/oslo.serialization.egg-info/top_level.txt      
2015-09-08 18:00:55.000000000 +0200
@@ -1,2 +1 @@
-oslo
 oslo_serialization
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.serialization-1.6.0/oslo_serialization/jsonutils.py 
new/oslo.serialization-1.9.0/oslo_serialization/jsonutils.py
--- old/oslo.serialization-1.6.0/oslo_serialization/jsonutils.py        
2015-06-02 17:08:56.000000000 +0200
+++ new/oslo.serialization-1.9.0/oslo_serialization/jsonutils.py        
2015-09-08 18:00:19.000000000 +0200
@@ -111,7 +111,7 @@
 
     if isinstance(value, datetime.datetime):
         if convert_datetime:
-            return timeutils.strtime(value)
+            return value.strftime(timeutils.PERFECT_TIME_FORMAT)
         else:
             return value
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/requirements.txt 
new/oslo.serialization-1.9.0/requirements.txt
--- old/oslo.serialization-1.6.0/requirements.txt       2015-06-02 
17:08:56.000000000 +0200
+++ new/oslo.serialization-1.9.0/requirements.txt       2015-09-08 
18:00:19.000000000 +0200
@@ -7,12 +7,12 @@
 # adding a new feature to oslo.serialization means adding a new dependency,
 # that is a likely indicator that the feature belongs somewhere else.
 
-pbr>=0.11,<2.0
+pbr<2.0,>=1.6
 Babel>=1.3
 six>=1.9.0
 msgpack-python>=0.4.0
 # Only for timeutils in openstack.common - once we're using the
 # library version this can be removed.
 iso8601>=0.1.9
-oslo.utils>=1.4.0                       # Apache-2.0
+oslo.utils>=2.0.0 # Apache-2.0
 pytz>=2013.6
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/setup.cfg 
new/oslo.serialization-1.9.0/setup.cfg
--- old/oslo.serialization-1.6.0/setup.cfg      2015-06-02 17:09:32.000000000 
+0200
+++ new/oslo.serialization-1.9.0/setup.cfg      2015-09-08 18:00:56.000000000 
+0200
@@ -21,11 +21,7 @@
 
 [files]
 packages = 
-       oslo
-       oslo.serialization
        oslo_serialization
-namespace_packages = 
-       oslo
 
 [pbr]
 warnerrors = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/setup.py 
new/oslo.serialization-1.9.0/setup.py
--- old/oslo.serialization-1.6.0/setup.py       2015-06-02 17:08:56.000000000 
+0200
+++ new/oslo.serialization-1.9.0/setup.py       2015-09-08 18:00:19.000000000 
+0200
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright (c) 2013 Hewlett-Packard Development Company, L.P.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
@@ -26,5 +25,5 @@
     pass
 
 setuptools.setup(
-    setup_requires=['pbr'],
+    setup_requires=['pbr>=1.3'],
     pbr=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/test-requirements.txt 
new/oslo.serialization-1.9.0/test-requirements.txt
--- old/oslo.serialization-1.6.0/test-requirements.txt  2015-06-02 
17:08:56.000000000 +0200
+++ new/oslo.serialization-1.9.0/test-requirements.txt  2015-09-08 
18:00:19.000000000 +0200
@@ -1,15 +1,15 @@
 # The order of packages is significant, because pip processes them in the order
 # of appearance. Changing the order has an impact on the overall integration
 # process, which may cause wedges in the gate later.
-hacking>=0.10.0,<0.11
-mock>=1.0
-netaddr>=0.7.12
+hacking<0.11,>=0.10.0
+mock>=1.2
+netaddr!=0.7.16,>=0.7.12
 
 # this is required for the docs build jobs
-sphinx>=1.1.2,!=1.2.0,!=1.3b1,<1.3
-oslosphinx>=2.5.0  # Apache-2.0
+sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2
+oslosphinx>=2.5.0 # Apache-2.0
 
-oslotest>=1.5.1  # Apache-2.0
+oslotest>=1.10.0 # Apache-2.0
 simplejson>=2.2.0
-oslo.i18n>=1.5.0  # Apache-2.0
+oslo.i18n>=1.5.0 # Apache-2.0
 coverage>=3.6
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/tests/test_jsonutils.py 
new/oslo.serialization-1.9.0/tests/test_jsonutils.py
--- old/oslo.serialization-1.6.0/tests/test_jsonutils.py        2015-06-02 
17:08:56.000000000 +0200
+++ new/oslo.serialization-1.9.0/tests/test_jsonutils.py        1970-01-01 
01:00:00.000000000 +0100
@@ -1,316 +0,0 @@
-# Copyright 2011 OpenStack Foundation.
-# All Rights Reserved.
-#
-#    Licensed under the Apache License, Version 2.0 (the "License"); you may
-#    not use this file except in compliance with the License. You may obtain
-#    a copy of the License at
-#
-#         http://www.apache.org/licenses/LICENSE-2.0
-#
-#    Unless required by applicable law or agreed to in writing, software
-#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-#    License for the specific language governing permissions and limitations
-#    under the License.
-
-import collections
-import datetime
-import json
-import uuid
-
-import mock
-import netaddr
-from oslotest import base as test_base
-import simplejson
-import six
-import six.moves.xmlrpc_client as xmlrpclib
-
-from oslo.i18n import fixture
-from oslo.serialization import jsonutils
-
-
-class JSONUtilsTestMixin(object):
-
-    json_impl = None
-
-    def setUp(self):
-        super(JSONUtilsTestMixin, self).setUp()
-        self.json_patcher = mock.patch.multiple(
-            jsonutils, json=self.json_impl,
-            is_simplejson=self.json_impl is simplejson)
-        self.json_impl_mock = self.json_patcher.start()
-
-    def tearDown(self):
-        self.json_patcher.stop()
-        super(JSONUtilsTestMixin, self).tearDown()
-
-    def test_dumps(self):
-        self.assertEqual('{"a": "b"}', jsonutils.dumps({'a': 'b'}))
-
-    def test_dumps_namedtuple(self):
-        n = collections.namedtuple("foo", "bar baz")(1, 2)
-        self.assertEqual('[1, 2]', jsonutils.dumps(n))
-
-    def test_dump(self):
-        expected = '{"a": "b"}'
-        json_dict = {'a': 'b'}
-
-        fp = six.StringIO()
-        jsonutils.dump(json_dict, fp)
-
-        self.assertEqual(expected, fp.getvalue())
-
-    def test_dump_namedtuple(self):
-        expected = '[1, 2]'
-        json_dict = collections.namedtuple("foo", "bar baz")(1, 2)
-
-        fp = six.StringIO()
-        jsonutils.dump(json_dict, fp)
-
-        self.assertEqual(expected, fp.getvalue())
-
-    def test_dumps_uuid(self):
-        self.assertEqual('"87edfaf4-9bff-11e4-82bd-b7b4e88d3780"',
-                         jsonutils.dumps(
-                             uuid.UUID("87edfaf49bff11e482bdb7b4e88d3780")))
-
-    def test_dump_set(self):
-        # Only test with one entry because the order is random :]
-        self.assertEqual("[1]", jsonutils.dumps(set([1])))
-
-    def test_loads(self):
-        self.assertEqual({'a': 'b'}, jsonutils.loads('{"a": "b"}'))
-
-    def test_loads_unicode(self):
-        self.assertIsInstance(jsonutils.loads(b'"foo"'), six.text_type)
-        self.assertIsInstance(jsonutils.loads(u'"foo"'), six.text_type)
-
-        # 'test' in Ukrainian
-        i18n_str_unicode = u'"\u0442\u0435\u0441\u0442"'
-        self.assertIsInstance(jsonutils.loads(i18n_str_unicode), six.text_type)
-
-        i18n_str = i18n_str_unicode.encode('utf-8')
-        self.assertIsInstance(jsonutils.loads(i18n_str), six.text_type)
-
-    def test_loads_with_kwargs(self):
-        jsontext = u'{"foo": 3}'
-        result = jsonutils.loads(jsontext, parse_int=lambda x: 5)
-        self.assertEqual(5, result['foo'])
-
-    def test_load(self):
-
-        jsontext = u'{"a": "\u0442\u044d\u0441\u0442"}'
-        expected = {u'a': u'\u0442\u044d\u0441\u0442'}
-
-        for encoding in ('utf-8', 'cp1251'):
-            fp = six.BytesIO(jsontext.encode(encoding))
-            result = jsonutils.load(fp, encoding=encoding)
-            self.assertEqual(expected, result)
-            for key, val in result.items():
-                self.assertIsInstance(key, six.text_type)
-                self.assertIsInstance(val, six.text_type)
-
-
-class JSONUtilsTestJson(JSONUtilsTestMixin, test_base.BaseTestCase):
-    json_impl = json
-
-
-class JSONUtilsTestSimpleJson(JSONUtilsTestMixin, test_base.BaseTestCase):
-    json_impl = simplejson
-
-
-class ToPrimitiveTestCase(test_base.BaseTestCase):
-    def setUp(self):
-        super(ToPrimitiveTestCase, self).setUp()
-        self.trans_fixture = self.useFixture(fixture.Translation())
-
-    def test_list(self):
-        self.assertEqual(jsonutils.to_primitive([1, 2, 3]), [1, 2, 3])
-
-    def test_set(self):
-        self.assertEqual(jsonutils.to_primitive(set([1, 2, 3])), [1, 2, 3])
-
-    def test_empty_list(self):
-        self.assertEqual(jsonutils.to_primitive([]), [])
-
-    def test_tuple(self):
-        self.assertEqual(jsonutils.to_primitive((1, 2, 3)), [1, 2, 3])
-
-    def test_dict(self):
-        self.assertEqual(jsonutils.to_primitive(dict(a=1, b=2, c=3)),
-                         dict(a=1, b=2, c=3))
-
-    def test_dict_values(self):
-        self.assertEqual(
-            jsonutils.to_primitive(
-                dict(a=uuid.UUID("DD9FB2B6-CE81-4A7B-8B56-90E35D650A0B"))),
-            dict(a=u"dd9fb2b6-ce81-4a7b-8b56-90e35d650a0b"))
-
-    def test_dict_keys(self):
-        self.assertEqual(
-            jsonutils.to_primitive(
-                {uuid.UUID("DD9FB2B6-CE81-4A7B-8B56-90E35D650A0B"): 4}),
-            {u"dd9fb2b6-ce81-4a7b-8b56-90e35d650a0b": 4})
-
-    def test_empty_dict(self):
-        self.assertEqual(jsonutils.to_primitive({}), {})
-
-    def test_datetime(self):
-        x = datetime.datetime(1920, 2, 3, 4, 5, 6, 7)
-        self.assertEqual(jsonutils.to_primitive(x),
-                         '1920-02-03T04:05:06.000007')
-
-    def test_uuid(self):
-        x = uuid.uuid4()
-        self.assertEqual(jsonutils.to_primitive(x),
-                         six.text_type(x))
-
-    def test_datetime_preserve(self):
-        x = datetime.datetime(1920, 2, 3, 4, 5, 6, 7)
-        self.assertEqual(jsonutils.to_primitive(x, convert_datetime=False), x)
-
-    def test_DateTime(self):
-        x = xmlrpclib.DateTime()
-        x.decode("19710203T04:05:06")
-        self.assertEqual(jsonutils.to_primitive(x),
-                         '1971-02-03T04:05:06.000000')
-
-    def test_iter(self):
-        class IterClass(object):
-            def __init__(self):
-                self.data = [1, 2, 3, 4, 5]
-                self.index = 0
-
-            def __iter__(self):
-                return self
-
-            def next(self):
-                if self.index == len(self.data):
-                    raise StopIteration
-                self.index = self.index + 1
-                return self.data[self.index - 1]
-            __next__ = next
-
-        x = IterClass()
-        self.assertEqual(jsonutils.to_primitive(x), [1, 2, 3, 4, 5])
-
-    def test_iteritems(self):
-        class IterItemsClass(object):
-            def __init__(self):
-                self.data = dict(a=1, b=2, c=3).items()
-                self.index = 0
-
-            def iteritems(self):
-                return self.data
-
-        x = IterItemsClass()
-        p = jsonutils.to_primitive(x)
-        self.assertEqual(p, {'a': 1, 'b': 2, 'c': 3})
-
-    def test_iteritems_with_cycle(self):
-        class IterItemsClass(object):
-            def __init__(self):
-                self.data = dict(a=1, b=2, c=3)
-                self.index = 0
-
-            def iteritems(self):
-                return self.data.items()
-
-        x = IterItemsClass()
-        x2 = IterItemsClass()
-        x.data['other'] = x2
-        x2.data['other'] = x
-
-        # If the cycle isn't caught, to_primitive() will eventually result in
-        # an exception due to excessive recursion depth.
-        jsonutils.to_primitive(x)
-
-    def test_instance(self):
-        class MysteryClass(object):
-            a = 10
-
-            def __init__(self):
-                self.b = 1
-
-        x = MysteryClass()
-        self.assertEqual(jsonutils.to_primitive(x, convert_instances=True),
-                         dict(b=1))
-
-        self.assertEqual(jsonutils.to_primitive(x), x)
-
-    def test_typeerror(self):
-        x = bytearray  # Class, not instance
-        if six.PY3:
-            self.assertEqual(jsonutils.to_primitive(x), u"<class 'bytearray'>")
-        else:
-            self.assertEqual(jsonutils.to_primitive(x), u"<type 'bytearray'>")
-
-    def test_nasties(self):
-        def foo():
-            pass
-        x = [datetime, foo, dir]
-        ret = jsonutils.to_primitive(x)
-        self.assertEqual(len(ret), 3)
-        self.assertTrue(ret[0].startswith(u"<module 'datetime' from ") or
-                        ret[0].startswith(u"<module 'datetime' (built-in)"))
-        if six.PY3:
-            self.assertTrue(ret[1].startswith(
-                '<function ToPrimitiveTestCase.test_nasties.<locals>.foo at 0x'
-            ))
-        else:
-            self.assertTrue(ret[1].startswith('<function foo at 0x'))
-        self.assertEqual(ret[2], '<built-in function dir>')
-
-    def test_depth(self):
-        class LevelsGenerator(object):
-            def __init__(self, levels):
-                self._levels = levels
-
-            def iteritems(self):
-                if self._levels == 0:
-                    return iter([])
-                else:
-                    return iter([(0, LevelsGenerator(self._levels - 1))])
-
-        l4_obj = LevelsGenerator(4)
-
-        json_l2 = {0: {0: '?'}}
-        json_l3 = {0: {0: {0: '?'}}}
-        json_l4 = {0: {0: {0: {0: '?'}}}}
-
-        ret = jsonutils.to_primitive(l4_obj, max_depth=2)
-        self.assertEqual(ret, json_l2)
-
-        ret = jsonutils.to_primitive(l4_obj, max_depth=3)
-        self.assertEqual(ret, json_l3)
-
-        ret = jsonutils.to_primitive(l4_obj, max_depth=4)
-        self.assertEqual(ret, json_l4)
-
-    def test_ipaddr(self):
-        thing = {'ip_addr': netaddr.IPAddress('1.2.3.4')}
-        ret = jsonutils.to_primitive(thing)
-        self.assertEqual({'ip_addr': '1.2.3.4'}, ret)
-
-    def test_dumps_ipaddr(self):
-        thing = {'ip_addr': netaddr.IPAddress('1.2.3.4')}
-        ret = jsonutils.dumps(thing)
-        self.assertEqual('{"ip_addr": "1.2.3.4"}', ret)
-
-    def test_dump_ipaddr(self):
-        thing = {'ip_addr': netaddr.IPAddress('1.2.3.4')}
-        fp = six.StringIO()
-        jsonutils.dump(thing, fp)
-        self.assertEqual('{"ip_addr": "1.2.3.4"}', fp.getvalue())
-
-    def test_message_with_param(self):
-        msg = self.trans_fixture.lazy('A message with param: %s')
-        msg = msg % 'test_domain'
-        ret = jsonutils.to_primitive(msg)
-        self.assertEqual(msg, ret)
-
-    def test_message_with_named_param(self):
-        msg = self.trans_fixture.lazy('A message with params: %(param)s')
-        msg = msg % {'param': 'hello'}
-        ret = jsonutils.to_primitive(msg)
-        self.assertEqual(msg, ret)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/tests/test_msgpackutils.py 
new/oslo.serialization-1.9.0/tests/test_msgpackutils.py
--- old/oslo.serialization-1.6.0/tests/test_msgpackutils.py     2015-06-02 
17:08:56.000000000 +0200
+++ new/oslo.serialization-1.9.0/tests/test_msgpackutils.py     1970-01-01 
01:00:00.000000000 +0100
@@ -1,154 +0,0 @@
-#    Copyright (C) 2015 Yahoo! Inc. All Rights Reserved.
-#
-#    Licensed under the Apache License, Version 2.0 (the "License"); you may
-#    not use this file except in compliance with the License. You may obtain
-#    a copy of the License at
-#
-#         http://www.apache.org/licenses/LICENSE-2.0
-#
-#    Unless required by applicable law or agreed to in writing, software
-#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-#    License for the specific language governing permissions and limitations
-#    under the License.
-
-import datetime
-import itertools
-import sys
-import uuid
-
-import netaddr
-from oslotest import base as test_base
-from pytz import timezone
-import six
-import six.moves.xmlrpc_client as xmlrpclib
-import testtools
-
-from oslo_serialization import msgpackutils
-
-# NOTE(harlowja): itertools.count only started to take a step value
-# in python 2.7+ so we can't use it in 2.6...
-if sys.version_info[0:2] == (2, 6):
-    _PY26 = True
-else:
-    _PY26 = False
-
-
-_TZ_FMT = '%Y-%m-%d %H:%M:%S %Z%z'
-
-
-def _dumps_loads(obj):
-    obj = msgpackutils.dumps(obj)
-    return msgpackutils.loads(obj)
-
-
-class MsgPackUtilsTestMixin(test_base.BaseTestCase):
-    def test_list(self):
-        self.assertEqual(_dumps_loads([1, 2, 3]), [1, 2, 3])
-
-    def test_empty_list(self):
-        self.assertEqual(_dumps_loads([]), [])
-
-    def test_tuple(self):
-        # Seems like we do lose whether it was a tuple or not...
-        #
-        # Maybe fixed someday:
-        #
-        # https://github.com/msgpack/msgpack-python/issues/98
-        self.assertEqual(_dumps_loads((1, 2, 3)), [1, 2, 3])
-
-    def test_dict(self):
-        self.assertEqual(_dumps_loads(dict(a=1, b=2, c=3)),
-                         dict(a=1, b=2, c=3))
-
-    def test_empty_dict(self):
-        self.assertEqual(_dumps_loads({}), {})
-
-    def test_complex_dict(self):
-        src = {
-            'now': datetime.datetime(1920, 2, 3, 4, 5, 6, 7),
-            'later': datetime.datetime(1921, 2, 3, 4, 5, 6, 9),
-            'a': 1,
-            'b': 2.0,
-            'c': [],
-            'd': set([1, 2, 3]),
-            'zzz': uuid.uuid4(),
-            'yyy': 'yyy',
-            'ddd': b'bbb',
-            'today': datetime.date.today(),
-        }
-        self.assertEqual(_dumps_loads(src), src)
-
-    def test_itercount(self):
-        it = itertools.count(1)
-        six.next(it)
-        six.next(it)
-        it2 = _dumps_loads(it)
-        self.assertEqual(six.next(it), six.next(it2))
-
-        it = itertools.count(0)
-        it2 = _dumps_loads(it)
-        self.assertEqual(six.next(it), six.next(it2))
-
-    @testtools.skipIf(_PY26, 'itertools.count step not supported')
-    def test_itercount_step(self):
-        it = itertools.count(1, 3)
-        it2 = _dumps_loads(it)
-        self.assertEqual(six.next(it), six.next(it2))
-
-    def test_set(self):
-        self.assertEqual(_dumps_loads(set([1, 2])), set([1, 2]))
-
-    def test_empty_set(self):
-        self.assertEqual(_dumps_loads(set([])), set([]))
-
-    def test_frozenset(self):
-        self.assertEqual(_dumps_loads(frozenset([1, 2])), frozenset([1, 2]))
-
-    def test_empty_frozenset(self):
-        self.assertEqual(_dumps_loads(frozenset([])), frozenset([]))
-
-    def test_datetime_preserve(self):
-        x = datetime.datetime(1920, 2, 3, 4, 5, 6, 7)
-        self.assertEqual(_dumps_loads(x), x)
-
-    def test_datetime(self):
-        x = xmlrpclib.DateTime()
-        x.decode("19710203T04:05:06")
-        self.assertEqual(_dumps_loads(x), x)
-
-    def test_ipaddr(self):
-        thing = {'ip_addr': netaddr.IPAddress('1.2.3.4')}
-        self.assertEqual(_dumps_loads(thing), thing)
-
-    def test_today(self):
-        today = datetime.date.today()
-        self.assertEqual(today, _dumps_loads(today))
-
-    def test_datetime_tz_clone(self):
-        eastern = timezone('US/Eastern')
-        now = datetime.datetime.now()
-        e_dt = eastern.localize(now)
-        e_dt2 = _dumps_loads(e_dt)
-        self.assertEqual(e_dt, e_dt2)
-        self.assertEqual(e_dt.strftime(_TZ_FMT), e_dt2.strftime(_TZ_FMT))
-
-    def test_datetime_tz_different(self):
-        eastern = timezone('US/Eastern')
-        pacific = timezone('US/Pacific')
-        now = datetime.datetime.now()
-
-        e_dt = eastern.localize(now)
-        p_dt = pacific.localize(now)
-
-        self.assertNotEqual(e_dt, p_dt)
-        self.assertNotEqual(e_dt.strftime(_TZ_FMT), p_dt.strftime(_TZ_FMT))
-
-        e_dt2 = _dumps_loads(e_dt)
-        p_dt2 = _dumps_loads(p_dt)
-
-        self.assertNotEqual(e_dt2, p_dt2)
-        self.assertNotEqual(e_dt2.strftime(_TZ_FMT), p_dt2.strftime(_TZ_FMT))
-
-        self.assertEqual(e_dt, e_dt2)
-        self.assertEqual(p_dt, p_dt2)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/tests/test_warning.py 
new/oslo.serialization-1.9.0/tests/test_warning.py
--- old/oslo.serialization-1.6.0/tests/test_warning.py  2015-06-02 
17:08:56.000000000 +0200
+++ new/oslo.serialization-1.9.0/tests/test_warning.py  1970-01-01 
01:00:00.000000000 +0100
@@ -1,61 +0,0 @@
-#    Licensed under the Apache License, Version 2.0 (the "License"); you may
-#    not use this file except in compliance with the License. You may obtain
-#    a copy of the License at
-#
-#         http://www.apache.org/licenses/LICENSE-2.0
-#
-#    Unless required by applicable law or agreed to in writing, software
-#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-#    License for the specific language governing permissions and limitations
-#    under the License.
-
-import imp
-import os
-import warnings
-
-import mock
-from oslotest import base as test_base
-import six
-
-
-class DeprecationWarningTest(test_base.BaseTestCase):
-
-    @mock.patch('warnings.warn')
-    def test_warning(self, mock_warn):
-        import oslo.serialization
-        imp.reload(oslo.serialization)
-        self.assertTrue(mock_warn.called)
-        args = mock_warn.call_args
-        self.assertIn('oslo_serialization', args[0][0])
-        self.assertIn('deprecated', args[0][0])
-        self.assertTrue(issubclass(args[0][1], DeprecationWarning))
-
-    def test_real_warning(self):
-        with warnings.catch_warnings(record=True) as warning_msgs:
-            warnings.resetwarnings()
-            warnings.simplefilter('always', DeprecationWarning)
-            import oslo.serialization
-
-            # Use a separate function to get the stack level correct
-            # so we know the message points back to this file. This
-            # corresponds to an import or reload, which isn't working
-            # inside the test under Python 3.3. That may be due to a
-            # difference in the import implementation not triggering
-            # warnings properly when the module is reloaded, or
-            # because the warnings module is mostly implemented in C
-            # and something isn't cleanly resetting the global state
-            # used to track whether a warning needs to be
-            # emitted. Whatever the cause, we definitely see the
-            # warnings.warn() being invoked on a reload (see the test
-            # above) and warnings are reported on the console when we
-            # run the tests. A simpler test script run outside of
-            # testr does correctly report the warnings.
-            def foo():
-                oslo.serialization.deprecated()
-
-            foo()
-            self.assertEqual(1, len(warning_msgs))
-            msg = warning_msgs[0]
-            self.assertIn('oslo_serialization', six.text_type(msg.message))
-            self.assertEqual('test_warning.py', os.path.basename(msg.filename))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.serialization-1.6.0/tox.ini 
new/oslo.serialization-1.9.0/tox.ini
--- old/oslo.serialization-1.6.0/tox.ini        2015-06-02 17:08:56.000000000 
+0200
+++ new/oslo.serialization-1.9.0/tox.ini        2015-09-08 18:00:19.000000000 
+0200
@@ -35,3 +35,11 @@
 show-source = True
 ignore = E123,E125,H803
 exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build
+
+[testenv:pip-missing-reqs]
+# do not install test-requirements as that will pollute the virtualenv for
+# determining missing packages
+# this also means that pip-missing-reqs must be installed separately, outside
+# of the requirements.txt files
+deps = pip_missing_reqs
+commands = pip-missing-reqs -d --ignore-module=oslo_serialization* 
--ignore-module=pkg_resources --ignore-file=oslo_serialization/test.py 
--ignore-file=oslo_serialization/tests/* oslo_serialization
\ No newline at end of file


Reply via email to