Hello community,
here is the log from the commit of package python-oslo.config for openSUSE:13.1 checked in at 2013-10-02 13:33:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:13.1/python-oslo.config (Old)
and /work/SRC/openSUSE:13.1/.python-oslo.config.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-oslo.config"
Changes:
--------
--- /work/SRC/openSUSE:13.1/python-oslo.config/python-oslo.config.changes 2013-09-23 11:06:46.000000000 +0200
+++ /work/SRC/openSUSE:13.1/.python-oslo.config.new/python-oslo.config.changes 2013-10-02 13:33:08.000000000 +0200
@@ -1,0 +2,20 @@
+Fri Sep 27 08:11:13 UTC 2013 - speilicke@suse.com
+
+- Fix service URL
+
+-------------------------------------------------------------------
+Thu Sep 26 13:18:36 UTC 2013 - dmueller@suse.com
+
+- update to 1.2.1:
+ * 1223667_: Fix DictOpt to split only the first colon
+ * 1228995_: Disallow duplicate keys in DictOpt
+ * Explicit version removed from setup.cfg
+ * Dependency version updates
+ * Add auto-create support for OptGroup instances (see review 41865_)
+ * Publish full API docs to docs.openstack.org_
+ * Finished Python 3 support
+ * 1196601_: Raise an exception if print_help() is called before __call__
+ * Fix DeprecatedOpt equality test
+ * Use oslo.sphinx
+
+-------------------------------------------------------------------
Old:
----
oslo.config-1.2.0a4.tar.gz
New:
----
oslo.config-1.2.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-oslo.config.spec ++++++
--- /var/tmp/diff_new_pack.JkWRc1/_old 2013-10-02 13:33:08.000000000 +0200
+++ /var/tmp/diff_new_pack.JkWRc1/_new 2013-10-02 13:33:08.000000000 +0200
@@ -19,23 +19,21 @@
%define component oslo
Name: python-oslo.config
-Version: 1.2.0a4
+Version: 1.2.1
Release: 0
Url: https://launchpad.net/oslo/
Summary: OpenStack configuration API
License: Apache-2.0
Group: Development/Languages/Python
-Source: oslo.config-1.2.0a4.tar.gz
+Source: oslo.config-1.2.1.tar.gz
Source99: rpmlintrc
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: fdupes
BuildRequires: openstack-suse-macros
BuildRequires: python-base
-BuildRequires: python-d2to1
BuildRequires: python-oslo.sphinx
BuildRequires: python-pbr
Requires: python-argparse
-Requires: python-d2to1
Requires: python-pbr
Requires: python-six
Provides: python-oslo-config = 2013.2
@@ -85,13 +83,7 @@
This package contains testsuite files for %{name}.
%prep
-%setup -q -n oslo.config-1.2.0a4
-
-# https://bugs.launchpad.net/oslo/+bug/1200984
-%if "%version" < "1.2.0a3"
-echo "need versioning fix first"
-exit 1
-%endif
+%setup -q -n oslo.config-1.2.1
%build
python setup.py build
++++++ _service ++++++
--- /var/tmp/diff_new_pack.JkWRc1/_old 2013-10-02 13:33:08.000000000 +0200
+++ /var/tmp/diff_new_pack.JkWRc1/_new 2013-10-02 13:33:08.000000000 +0200
@@ -1,6 +1,6 @@
<services>
<service name="git_tarballs" mode="disabled">
- <param name="url">http://tarballs.openstack.org/oslo.config/oslo.config-1.2.0a4.tar.gz</param>
+ <param name="url">http://tarballs.openstack.org/oslo.config/oslo.config-1.2.1.tar.gz</param>
<param name="email">opensuse-cloud@opensuse.org</param>
<param name="plain-version">True</param>
</service>
++++++ oslo.config-1.2.0a4.tar.gz -> oslo.config-1.2.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/AUTHORS new/oslo.config-1.2.1/AUTHORS
--- old/oslo.config-1.2.0a4/AUTHORS 2013-08-23 16:41:52.000000000 +0200
+++ new/oslo.config-1.2.1/AUTHORS 2013-09-26 11:48:14.000000000 +0200
@@ -12,6 +12,7 @@
Flaper Fesp
Gary Kotton
Giampaolo Lauria
+Ian Wienand
James E. Blair
Jason Kölker
Joe Gordon
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/ChangeLog new/oslo.config-1.2.1/ChangeLog
--- old/oslo.config-1.2.0a4/ChangeLog 2013-08-23 16:41:52.000000000 +0200
+++ new/oslo.config-1.2.1/ChangeLog 2013-09-26 11:48:14.000000000 +0200
@@ -1,3 +1,148 @@
+commit eae8b3108d2c794a373660633042f3c0e3a23546
+Merge: 3d59667 bf70519
+Author: Jenkins
+Date: Thu Sep 26 09:05:00 2013 +0000
+
+ Merge "Fix subparsers add_parser() regression"
+
+commit bf705193595d34a70abefc4b3867ea550c0c15db
+Author: Mark McLoughlin
+Date: Wed Sep 25 20:07:03 2013 +0100
+
+ Fix subparsers add_parser() regression
+
+ With SubCommandOpt, the handler() callback gets invoked with a
+ subparsers object which has a add_parser() method. The arguments to
+ this method match the arguments to the ArgumentParser constructor and
+ the arguments are passed to the class for our ArgumentParser instance.
+
+ However, we added a ArgumentParser subclass (_CachedArgumentParser) so
+ that we could sort the output of --help ... but the subclass doesn't
+ support all the arguments of the parent class.
+
+ glance-control is the only known example of a SubCommandOpt user which
+ passes unusual arguments to subparsers.add_parser(). It uses the parent
+ arg and blows up at startup with:
+
+ File "./bin/glance-control", line 276, in add_command_parsers
+ parser = subparsers.add_parser(server, parents=[cmd_parser])
+ File "/usr/lib64/python2.7/argparse.py", line 1064, in add_parser
+ parser = self._parser_class(**kwargs)
+ TypeError: __init__() got an unexpected keyword argument 'parents'
+
+ It appears we broke glance-control back in June (commit 2951391), but
+ nobody noticed it until 1.2.0 was released and broke stable/grizzly
+ because we stopped using glance-control in the Havana glance unit tests
+ before this regression.
+
+ Closes-Bug: #1230416
+ Change-Id: I8d1b52e5390295726eb49af32eb7cab14c29592c
+
+commit 3d59667b781650039f5ba2c454dff39d860f879e
+Author: Ian Wienand
+Date: Wed Sep 25 14:31:06 2013 +1000
+
+ Expand DeprecatedOpt documentation
+
+ It is not a priori obvious how deprecated options are chosen, so
+ expand the docstring a bit
+
+ Change-Id: If10b45fb042b4a4d6063129b693228fd6ca86b82
+
+commit 9dabbd0ff744ae9fde993861aaeae576c2e19597
+Author: Mark McLoughlin
+Date: Mon Sep 23 15:55:30 2013 +0100
+
+ Release notes for 1.2.0
+
+ Change-Id: Ic9c36f9d2b2ecc2d8d76ca87079e75f83c7f08c1
+
+commit 7ec9a88fc451386c23e472036849385da038f4fa
+Author: Zhongyue Luo
+Date: Thu Sep 12 21:23:36 2013 +0800
+
+ Raises error if duplicate keys found in DictOpt
+
+ DictOpt didn't report when the input values had duplicate keys.
+ This would be a problem if the user had put in duplicate keys in
+ the conf file and the service didn't work as expected.
+ (c.f) Neutrons provider network mapping options
+ This patch raises a ConfigFileValueError when duplicate keys are found.
+
+ Fixes bug #1228995
+
+ Change-Id: I91e1bd0eda4ed4fd6c7eb6ea5d4a89d583d1305e
+
+commit f2be4e83f04579ee0cd87e8601868f310c951fac
+Author: Zhongyue Luo
+Date: Wed Sep 11 13:11:17 2013 +0800
+
+ Fix DictOpt to split only the first colon
+
+ I've encountered a ValueError when adapting DictOpt to
+ neutron's network_vlan_ranges.
+ https://github.com/openstack/neutron/blob/master/etc/neutron/plugins/openvsw...
+
+ This patch makes dictopt to split only the first colon for every value
+
+ Fixes bug #1223667
+
+ Change-Id: Iee4011f2a45be933dad393c72df099d6a8116849
+
+commit 0b915fd91f40c968aa507ba3c90ae43071646a5f
+Merge: a0905c8 58aa8f1
+Author: Jenkins
+Date: Tue Aug 27 02:53:18 2013 +0000
+
+ Merge "Update requirements"
+
+commit 58aa8f12a357ca7ef8d78d2b00ae03057103f8d3
+Author: Julien Danjou
+Date: Fri Aug 23 11:06:04 2013 +0200
+
+ Update requirements
+
+ This is the fabulous result of running the update.py script from
+ openstack/requirements with this repository as the target. It therefore
+ updates all dependencies, with nice version numbers that this repository
+ have to use to work. It also fixes case on some dependencies.
+ This update also brings a brand shiny new setup.py automatically handled
+ and generate by this same openstack/requirements repository.
+
+ Change-Id: I22ec396e5fa802c1617514aa6df3ed82f05271b0
+
+commit a0905c875ba19f52c72822fa2cb85598d7099f95
+Author: Mark McLoughlin
+Date: Fri Aug 23 16:06:23 2013 +0100
+
+ Release notes for 1.2.0a4
+
+ Change-Id: Iff43254317071b863d1ccd50eef4d71fb85240a7
+
+commit 662cfb09c0ea62e642077f80d74056b31dba94d1
+Author: Mark McLoughlin
+Date: Sun Aug 25 12:46:48 2013 +0100
+
+ Remove explicit version from setup.cfg
+
+ With the explicit "pre version" in setup.cfg, PBR generates our
+ version as 1.2.0.a1.g2748574 and, without it, it generates
+ 1.2.0a4.1.g2748574.
+
+ which in turn causes nova to complain about:
+
+ VersionConflict: (oslo.config 1.2.0.a1.g2748574
+ (/opt/stack/new/oslo.config),
+ Requirement.parse('oslo.config>=1.2.0a3'))
+
+ when trying to load extensions with stevedore.
+
+ I'm not sure why this is suddenly an issue after 1.2.0a4 has been
+ tagged, but removing this version is the right thing to do anyway
+ since we want to rely on tags for all versioning info.
+
+ Change-Id: I9090b8401a43befd73a82f9bb78e0b6165619c7c
+
commit 1cec054637b95fe394bbc57642806d41dd28ed8b
Author: Davanum Srinivas
Date: Sun Aug 18 19:52:33 2013 -0400
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/PKG-INFO new/oslo.config-1.2.1/PKG-INFO
--- old/oslo.config-1.2.0a4/PKG-INFO 2013-08-23 16:41:53.000000000 +0200
+++ new/oslo.config-1.2.1/PKG-INFO 2013-09-26 11:48:14.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: oslo.config
-Version: 1.2.0a4
+Version: 1.2.1
Summary: Oslo Configuration API
Home-page: https://launchpad.net/oslo
Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/doc/source/index.rst new/oslo.config-1.2.1/doc/source/index.rst
--- old/oslo.config-1.2.0a4/doc/source/index.rst 2013-08-23 16:41:15.000000000 +0200
+++ new/oslo.config-1.2.1/doc/source/index.rst 2013-09-26 11:47:53.000000000 +0200
@@ -20,6 +20,31 @@
Release Notes
=============
+1.2.0
+-----
+
+* 1223667_: Fix DictOpt to split only the first colon
+* 1228995_: Disallow duplicate keys in DictOpt
+* Explicit version removed from setup.cfg
+* Dependency version updates
+
+.. _1223667: https://bugs.launchpad.net/oslo/+bug/1223667
+.. _1228995: https://bugs.launchpad.net/oslo/+bug/1228995
+
+1.2.0a4
+-------
+
+* Add auto-create support for OptGroup instances (see review 41865_)
+* Publish full API docs to docs.openstack.org_
+* Finished Python 3 support
+* 1196601_: Raise an exception if print_help() is called before __call__
+* Fix DeprecatedOpt equality test
+* Use oslo.sphinx
+
+.. _41865: https://review.openstack.org/41865
+.. _1196601: https://bugs.launchpad.net/oslo/+bug/1196601
+.. _docs.openstack.org: http://docs.openstack.org/developer/oslo.config/
+
1.2.0a3
-------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/oslo/config/cfg.py new/oslo.config-1.2.1/oslo/config/cfg.py
--- old/oslo.config-1.2.0a4/oslo/config/cfg.py 2013-08-23 16:41:15.000000000 +0200
+++ new/oslo.config-1.2.1/oslo/config/cfg.py 2013-09-26 11:47:53.000000000 +0200
@@ -733,6 +733,13 @@
cfg.CONF.register_group(cfg.OptGroup('blaa'))
cfg.CONF.register_opt(cfg.StrOpt('foo', deprecated_opts=oldopts),
group='blaa')
+
+ Multi-value options will return all new and deprecated
+ options. For single options, if the new option is present
+ ("[blaa]/foo" above) it will override any deprecated options
+ present. If the new option is not present and multiple
+ deprecated options are present, the option corresponding to
+ the first element of deprecated_opts will be chosen.
"""
def __init__(self, name, group=None):
@@ -911,9 +918,23 @@
Split a value into key/value pairs separated by commas, then split
the each into key and value using colons as separator and then
stuff the key/value (s) into a dictionary
+
+ :param value: the string value of key/value pairs separated by commas
+ :returns: a dict object
+ :raises: ConfigFileValueError
"""
- return dict([[a.strip() for a in v.split(':')]
- for v in value.split(',')])
+ res = dict()
+ for v in [a for a in value.split(',')]:
+ try:
+ key, val = [a.strip() for a in v.split(':', 1)]
+ except ValueError:
+ raise ConfigFileValueError("Failed to parse '%s' as a colon "
+ "separated key/value pair" % v)
+ if key in res:
+ raise ConfigFileValueError("Duplicate key error. Key: '%s'" %
+ key)
+ res[key] = val
+ return res
class _StoreDictAction(argparse.Action):
"""An argparse action for parsing an option value into a dictionary."""
@@ -1448,8 +1469,8 @@
order.
"""
- def __init__(self, prog=None, usage=None):
- super(_CachedArgumentParser, self).__init__(prog, usage)
+ def __init__(self, prog=None, usage=None, **kwargs):
+ super(_CachedArgumentParser, self).__init__(prog, usage, **kwargs)
self._args_cache = {}
def add_parser_argument(self, container, *args, **kwargs):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/oslo.config.egg-info/PKG-INFO new/oslo.config-1.2.1/oslo.config.egg-info/PKG-INFO
--- old/oslo.config-1.2.0a4/oslo.config.egg-info/PKG-INFO 2013-08-23 16:41:52.000000000 +0200
+++ new/oslo.config-1.2.1/oslo.config.egg-info/PKG-INFO 2013-09-26 11:48:14.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: oslo.config
-Version: 1.2.0a4
+Version: 1.2.1
Summary: Oslo Configuration API
Home-page: https://launchpad.net/oslo
Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/oslo.config.egg-info/SOURCES.txt new/oslo.config-1.2.1/oslo.config.egg-info/SOURCES.txt
--- old/oslo.config-1.2.0a4/oslo.config.egg-info/SOURCES.txt 2013-08-23 16:41:53.000000000 +0200
+++ new/oslo.config-1.2.1/oslo.config.egg-info/SOURCES.txt 2013-09-26 11:48:14.000000000 +0200
@@ -23,6 +23,7 @@
oslo.config.egg-info/SOURCES.txt
oslo.config.egg-info/dependency_links.txt
oslo.config.egg-info/namespace_packages.txt
+oslo.config.egg-info/not-zip-safe
oslo.config.egg-info/requires.txt
oslo.config.egg-info/top_level.txt
oslo/config/__init__.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/oslo.config.egg-info/not-zip-safe new/oslo.config-1.2.1/oslo.config.egg-info/not-zip-safe
--- old/oslo.config-1.2.0a4/oslo.config.egg-info/not-zip-safe 1970-01-01 01:00:00.000000000 +0100
+++ new/oslo.config-1.2.1/oslo.config.egg-info/not-zip-safe 2013-09-26 11:47:56.000000000 +0200
@@ -0,0 +1 @@
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/setup.cfg new/oslo.config-1.2.1/setup.cfg
--- old/oslo.config-1.2.0a4/setup.cfg 2013-08-23 16:41:53.000000000 +0200
+++ new/oslo.config-1.2.1/setup.cfg 2013-09-26 11:48:14.000000000 +0200
@@ -1,6 +1,5 @@
[metadata]
name = oslo.config
-version = 1.2.0
author = OpenStack
author-email = openstack-dev@lists.openstack.org
summary = Oslo Configuration API
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/setup.py new/oslo.config-1.2.1/setup.py
--- old/oslo.config-1.2.0a4/setup.py 2013-08-23 16:41:15.000000000 +0200
+++ new/oslo.config-1.2.1/setup.py 2013-09-26 11:47:53.000000000 +0200
@@ -14,10 +14,9 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+# THIS FILE IS MANAGED BY THE GLOBAL REQUIREMENTS REPO - DO NOT EDIT
import setuptools
setuptools.setup(
- namespace_packages=['oslo'],
- packages=['oslo', 'oslo.config'],
- setup_requires=['d2to1', 'pbr'],
- d2to1=True)
+ setup_requires=['pbr>=0.5.21,<1.0'],
+ pbr=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/test-requirements.txt new/oslo.config-1.2.1/test-requirements.txt
--- old/oslo.config-1.2.0a4/test-requirements.txt 2013-08-23 16:41:15.000000000 +0200
+++ new/oslo.config-1.2.1/test-requirements.txt 2013-09-26 11:47:53.000000000 +0200
@@ -1,21 +1,17 @@
-# Install bounded pep8/pyflakes first, then let flake8 install
-pep8==1.4.5
-pyflakes==0.7.2
-flake8==2.0
hacking>=0.5.6,<0.8
discover
-fixtures>=0.3.12
+fixtures>=0.3.14
python-subunit
testrepository>=0.0.17
-testscenarios<0.5
-testtools>=0.9.29
+testscenarios>=0.4
+testtools>=0.9.32
# when we can require tox>= 1.4, this can go into tox.ini:
# [testenv:cover]
# deps = {[testenv]deps} coverage
-coverage
+coverage>=3.6
# this is required for the docs build jobs
-sphinx
+sphinx>=1.1.2
oslo.sphinx
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oslo.config-1.2.0a4/tests/test_cfg.py new/oslo.config-1.2.1/tests/test_cfg.py
--- old/oslo.config-1.2.0a4/tests/test_cfg.py 2013-08-23 16:41:15.000000000 +0200
+++ new/oslo.config-1.2.1/tests/test_cfg.py 2013-09-26 11:47:53.000000000 +0200
@@ -14,6 +14,7 @@
# License for the specific language governing permissions and limitations
# under the License.
+import argparse
import os
import shutil
import sys
@@ -1010,6 +1011,42 @@
self.assertTrue(hasattr(self.conf, 'foo'))
self.assertEqual(self.conf.foo, {'key': 'bar'})
+ def test_conf_file_dict_colon_in_value(self):
+ self.conf.register_opt(cfg.DictOpt('foo'))
+
+ paths = self.create_tempfiles([('test',
+ '[DEFAULT]\n'
+ 'foo = key:bar:baz\n')])
+
+ self.conf(['--config-file', paths[0]])
+
+ self.assertTrue(hasattr(self.conf, 'foo'))
+ self.assertEqual(self.conf.foo, {'key': 'bar:baz'})
+
+ def test_conf_file_dict_value_no_colon(self):
+ self.conf.register_opt(cfg.DictOpt('foo'))
+
+ paths = self.create_tempfiles([('test',
+ '[DEFAULT]\n'
+ 'foo = key:bar,baz\n')])
+
+ self.conf(['--config-file', paths[0]])
+
+ self.assertRaises(cfg.ConfigFileValueError, self.conf._get, 'foo')
+ self.assertRaises(AttributeError, getattr, self.conf, 'foo')
+
+ def test_conf_file_dict_value_duplicate_key(self):
+ self.conf.register_opt(cfg.DictOpt('foo'))
+
+ paths = self.create_tempfiles([('test',
+ '[DEFAULT]\n'
+ 'foo = key:bar,key:baz\n')])
+
+ self.conf(['--config-file', paths[0]])
+
+ self.assertRaises(cfg.ConfigFileValueError, self.conf._get, 'foo')
+ self.assertRaises(AttributeError, getattr, self.conf, 'foo')
+
def test_conf_file_dict_values_override_deprecated(self):
self.conf.register_cli_opt(cfg.DictOpt('foo',
deprecated_name='oldfoo'))
@@ -2584,6 +2621,21 @@
self.conf.register_cli_opt(
cfg.SubCommandOpt('cmd', handler=add_parsers))
+ self.assertTrue(hasattr(self.conf, 'cmd'))
+ self.conf(['a', '10'])
+ self.assertTrue(hasattr(self.conf.cmd, 'name'))
+ self.assertTrue(hasattr(self.conf.cmd, 'bar'))
+ self.assertEqual(self.conf.cmd.name, 'a')
+ self.assertEqual(self.conf.cmd.bar, 10)
+
+ def test_sub_command_with_parent(self):
+ def add_parsers(subparsers):
+ parent = argparse.ArgumentParser(add_help=False)
+ parent.add_argument('bar', type=int)
+ subparsers.add_parser('a', parents=[parent])
+
+ self.conf.register_cli_opt(
+ cfg.SubCommandOpt('cmd', handler=add_parsers))
self.assertTrue(hasattr(self.conf, 'cmd'))
self.conf(['a', '10'])
self.assertTrue(hasattr(self.conf.cmd, 'name'))
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org