Hello community, here is the log from the commit of package python-heatclient for openSUSE:Factory checked in at 2013-10-18 11:34:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-heatclient (Old) and /work/SRC/openSUSE:Factory/.python-heatclient.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-heatclient" Changes: -------- --- /work/SRC/openSUSE:Factory/python-heatclient/python-heatclient.changes 2013-09-25 14:37:39.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.python-heatclient.new/python-heatclient.changes 2013-10-18 11:42:49.000000000 +0200 @@ -1,0 +2,17 @@ +Mon Oct 7 10:23:08 UTC 2013 - dmuel...@suse.com + +- go with release tarball of 0.2.5: + * no changes + +------------------------------------------------------------------- +Fri Sep 27 23:40:56 UTC 2013 - opensuse-cl...@opensuse.org + +- Update to version 0.2.4.23: + + Allow -P to be invoked multiple times + +------------------------------------------------------------------- +Thu Sep 26 12:08:59 UTC 2013 - dmuel...@suse.com + +- fix requires + +------------------------------------------------------------------- Old: ---- python-heatclient-master.tar.gz New: ---- python-heatclient-0.2.5.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-heatclient.spec ++++++ --- /var/tmp/diff_new_pack.m3kM7i/_old 2013-10-18 11:42:50.000000000 +0200 +++ /var/tmp/diff_new_pack.m3kM7i/_new 2013-10-18 11:42:50.000000000 +0200 @@ -19,27 +19,26 @@ %define component heatclient Name: python-%{component} -Version: 0.2.4.21 +Version: 0.2.5 Release: 0 Summary: Openstack Orchestration (Heat) API Client License: Apache-2.0 Group: Development/Languages/Python Url: http://launchpad.net/python-heatclient -Source: python-heatclient-master.tar.gz +Source: python-heatclient-0.2.5.tar.gz BuildRequires: openstack-suse-macros BuildRequires: python-base BuildRequires: python-distribute # Documentation build requirements: BuildRequires: python-PrettyTable BuildRequires: python-Sphinx -BuildRequires: python-d2to1 BuildRequires: python-httplib2 BuildRequires: python-iso8601 >= 0.1.4 BuildRequires: python-keystoneclient BuildRequires: python-pbr Requires: python >= 2.6.8 Requires: python-PrettyTable >= 0.6 -Requires: python-d2to1 >= 0.2.10 +Requires: python-PyYAML >= 3.1.0 Requires: python-httplib2 Requires: python-iso8601 >= 0.1.4 Requires: python-keystoneclient >= 0.3.0 @@ -86,7 +85,7 @@ This package contains testsuite files for %{name}. %prep -%setup -q -n python-heatclient-0.2.4.21.g455b1cb +%setup -q -n python-heatclient-0.2.5 %openstack_cleanup_prep echo %{version} > heatclient/versioninfo ++++++ _service ++++++ --- /var/tmp/diff_new_pack.m3kM7i/_old 2013-10-18 11:42:50.000000000 +0200 +++ /var/tmp/diff_new_pack.m3kM7i/_new 2013-10-18 11:42:50.000000000 +0200 @@ -1,8 +1,7 @@ <services> <service name="git_tarballs" mode="disabled"> - <param name="url">http://tarballs.openstack.org/python-heatclient/python-heatclient-master.tar.gz</param> + <param name="url">http://tarballs.openstack.org/python-heatclient/python-heatclient-0.2.5.tar.gz</param> <param name="email">opensuse-cl...@opensuse.org</param> - <param name="version-regexp">.*-([^-]+)\.g[a-zA-Z0-9]{7}</param> <param name="plain-version">True</param> </service> </services> ++++++ python-heatclient-master.tar.gz -> python-heatclient-0.2.5.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.21.g455b1cb/ChangeLog new/python-heatclient-0.2.5/ChangeLog --- old/python-heatclient-0.2.4.21.g455b1cb/ChangeLog 2013-09-20 00:42:47.000000000 +0200 +++ new/python-heatclient-0.2.5/ChangeLog 2013-09-27 06:43:46.000000000 +0200 @@ -1,3 +1,29 @@ +commit 96dbb0911c8d139a5b3fe64af82783cf81790ff8 +Merge: 455b1cb 795d52c +Author: Jenkins <jenk...@review.openstack.org> +Date: Fri Sep 27 04:27:41 2013 +0000 + + Merge "Allow -P to be invoked multiple times" + +commit 795d52c6418fa3beab2e3385da11ece8fca3db37 +Author: Steve Baker <sba...@redhat.com> +Date: Mon Sep 23 17:55:55 2013 +1200 + + Allow -P to be invoked multiple times + + If --parameters is specified more than once it is assumed + that each one contains only one parameter key=value. + + This means semicolons are ignored if there is more than one -P + specified. + + This should be fully backwared compatible, a single -P will + be assumed to be semicolon delimited. + + Change-Id: Ic202ff3e0596b786cd5b07c53509f97a95d41585 + Closes-Bug: #1224825 + Closes-Bug: #1229030 + commit 455b1cb4e88cff87787d69ecf196c64be0467ed4 Author: ZhiQiang Fan <aji.zq...@gmail.com> Date: Fri Sep 20 04:21:21 2013 +0800 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.21.g455b1cb/PKG-INFO new/python-heatclient-0.2.5/PKG-INFO --- old/python-heatclient-0.2.4.21.g455b1cb/PKG-INFO 2013-09-20 00:42:47.000000000 +0200 +++ new/python-heatclient-0.2.5/PKG-INFO 2013-09-27 06:43:47.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: python-heatclient -Version: 0.2.4.21.g455b1cb +Version: 0.2.5 Summary: OpenStack Orchestration API Client Library Home-page: http://www.openstack.org/ Author: OpenStack diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.21.g455b1cb/heatclient/common/utils.py new/python-heatclient-0.2.5/heatclient/common/utils.py --- old/python-heatclient-0.2.4.21.g455b1cb/heatclient/common/utils.py 2013-09-20 00:42:15.000000000 +0200 +++ new/python-heatclient-0.2.5/heatclient/common/utils.py 2013-09-27 06:43:05.000000000 +0200 @@ -147,17 +147,25 @@ def format_parameters(params): '''Reformat parameters into dict of format expected by the API.''' + + if not params: + return {} + + # expect multiple invocations of --parameters but fall back + # to ; delimited if only one --parameters is specified + if len(params) == 1: + params = params[0].split(';') + parameters = {} - if params: - for count, p in enumerate(params.split(';'), 1): - try: - (n, v) = p.split(('='), 1) - except ValueError: - msg = '%s(%s). %s.' % ('Malformed parameter', p, - 'Use the key=value format') - raise exc.CommandError(msg) + for p in params: + try: + (n, v) = p.split(('='), 1) + except ValueError: + msg = '%s(%s). %s.' % ('Malformed parameter', p, + 'Use the key=value format') + raise exc.CommandError(msg) - parameters[n] = v + parameters[n] = v return parameters diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.21.g455b1cb/heatclient/tests/test_utils.py new/python-heatclient-0.2.5/heatclient/tests/test_utils.py --- old/python-heatclient-0.2.4.21.g455b1cb/heatclient/tests/test_utils.py 2013-09-20 00:42:15.000000000 +0200 +++ new/python-heatclient-0.2.5/heatclient/tests/test_utils.py 2013-09-27 06:43:05.000000000 +0200 @@ -23,10 +23,10 @@ self.assertEqual({}, utils.format_parameters(None)) def test_format_parameters(self): - p = utils.format_parameters( + p = utils.format_parameters([ 'InstanceType=m1.large;DBUsername=wp;' 'DBPassword=verybadpassword;KeyName=heat_key;' - 'LinuxDistribution=F17') + 'LinuxDistribution=F17']) self.assertEqual({'InstanceType': 'm1.large', 'DBUsername': 'wp', 'DBPassword': 'verybadpassword', @@ -35,20 +35,50 @@ }, p) def test_format_parameters_split(self): - p = utils.format_parameters( + p = utils.format_parameters([ 'KeyName=heat_key;' 'DnsSecKey=hsgx1m31PbamNF4WEcHlwjIlCGgifOdoB58/wwC7a4oAONQ/fDV5ct' 'qrYBoLlKHhTfkyQEw9iVScKYZbbMtMNg==;' - 'UpstreamDNS=8.8.8.8') + 'UpstreamDNS=8.8.8.8']) self.assertEqual({'KeyName': 'heat_key', 'DnsSecKey': 'hsgx1m31PbamNF4WEcHlwjIlCGgifOdoB58/ww' 'C7a4oAONQ/fDV5ctqrYBoLlKHhTfkyQEw9iVScKYZbbMtMNg==', 'UpstreamDNS': '8.8.8.8'}, p) + def test_format_parameters_multiple(self): + p = utils.format_parameters([ + 'KeyName=heat_key', + 'DnsSecKey=hsgx1m31PbamNF4WEcHlwjIlCGgifOdoB58/wwC7a4oAONQ/fDV5ct' + 'qrYBoLlKHhTfkyQEw9iVScKYZbbMtMNg==', + 'UpstreamDNS=8.8.8.8']) + self.assertEqual({'KeyName': 'heat_key', + 'DnsSecKey': 'hsgx1m31PbamNF4WEcHlwjIlCGgifOdoB58/ww' + 'C7a4oAONQ/fDV5ctqrYBoLlKHhTfkyQEw9iVScKYZbbMtMNg==', + 'UpstreamDNS': '8.8.8.8'}, p) + + def test_format_parameters_multiple_semicolon_values(self): + p = utils.format_parameters([ + 'KeyName=heat_key', + 'DnsSecKey=hsgx1m31;PbaNF4WEcHlwj;IlCGgfOdoB;58/ww7a4oAO;NQ/fD==', + 'UpstreamDNS=8.8.8.8']) + self.assertEqual({'KeyName': 'heat_key', + 'DnsSecKey': 'hsgx1m31;PbaNF4WEcHlwj;IlCGgfOdoB;58/' + 'ww7a4oAO;NQ/fD==', + 'UpstreamDNS': '8.8.8.8'}, p) + def test_format_parameter_bad_parameter(self): - params = 'KeyName=heat_key;UpstreamDNS8.8.8.8' - self.assertRaises(exc.CommandError, - utils.format_parameters, params) + params = ['KeyName=heat_key;UpstreamDNS8.8.8.8'] + ex = self.assertRaises(exc.CommandError, + utils.format_parameters, params) + self.assertEqual('Malformed parameter(UpstreamDNS8.8.8.8). ' + 'Use the key=value format.', str(ex)) + + def test_format_multiple_bad_parameter(self): + params = ['KeyName=heat_key', 'UpstreamDNS8.8.8.8'] + ex = self.assertRaises(exc.CommandError, + utils.format_parameters, params) + self.assertEqual('Malformed parameter(UpstreamDNS8.8.8.8). ' + 'Use the key=value format.', str(ex)) def test_link_formatter(self): self.assertEqual('', utils.link_formatter(None)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.21.g455b1cb/heatclient/v1/shell.py new/python-heatclient-0.2.5/heatclient/v1/shell.py --- old/python-heatclient-0.2.4.21.g455b1cb/heatclient/v1/shell.py 2013-09-20 00:42:15.000000000 +0200 +++ new/python-heatclient-0.2.5/heatclient/v1/shell.py 2013-09-27 06:43:05.000000000 +0200 @@ -103,7 +103,10 @@ @utils.arg('-r', '--enable-rollback', default=False, action="store_true", help='Enable rollback on create/update failure') @utils.arg('-P', '--parameters', metavar='<KEY1=VALUE1;KEY2=VALUE2...>', - help='Parameter values used to create the stack.') + help='Parameter values used to create the stack. ' + 'This can be specified multiple times, or once with parameters ' + 'separated by semicolon.', + action='append') @utils.arg('name', metavar='<STACK_NAME>', help='Name of the stack to create.') def do_create(hc, args): @@ -125,7 +128,10 @@ @utils.arg('-r', '--enable-rollback', default=False, action="store_true", help='Enable rollback on create/update failure') @utils.arg('-P', '--parameters', metavar='<KEY1=VALUE1;KEY2=VALUE2...>', - help='Parameter values used to create the stack.') + help='Parameter values used to create the stack. ' + 'This can be specified multiple times, or once with parameters ' + 'separated by semicolon.', + action='append') @utils.arg('name', metavar='<STACK_NAME>', help='Name of the stack to create.') def do_stack_create(hc, args): @@ -221,7 +227,10 @@ @utils.arg('-o', '--template-object', metavar='<URL>', help='URL to retrieve template object (e.g from swift)') @utils.arg('-P', '--parameters', metavar='<KEY1=VALUE1;KEY2=VALUE2...>', - help='Parameter values used to create the stack.') + help='Parameter values used to create the stack. ' + 'This can be specified multiple times, or once with parameters ' + 'separated by semicolon.', + action='append') @utils.arg('id', metavar='<NAME or ID>', help='Name or ID of stack to update.') def do_update(hc, args): @@ -238,7 +247,10 @@ @utils.arg('-o', '--template-object', metavar='<URL>', help='URL to retrieve template object (e.g from swift)') @utils.arg('-P', '--parameters', metavar='<KEY1=VALUE1;KEY2=VALUE2...>', - help='Parameter values used to create the stack.') + help='Parameter values used to create the stack. ' + 'This can be specified multiple times, or once with parameters ' + 'separated by semicolon.', + action='append') @utils.arg('id', metavar='<NAME or ID>', help='Name or ID of stack to update.') def do_stack_update(hc, args): @@ -297,7 +309,10 @@ @utils.arg('-o', '--template-object', metavar='<URL>', help='URL to retrieve template object (e.g from swift)') @utils.arg('-P', '--parameters', metavar='<KEY1=VALUE1;KEY2=VALUE2...>', - help='Parameter values to validate.') + help='Parameter values to validate. ' + 'This can be specified multiple times, or once with parameters ' + 'separated by semicolon.', + action='append') def do_validate(hc, args): '''DEPRECATED! Use template-validate instead.''' do_template_validate(hc, args) @@ -312,7 +327,10 @@ @utils.arg('-o', '--template-object', metavar='<URL>', help='URL to retrieve template object (e.g from swift)') @utils.arg('-P', '--parameters', metavar='<KEY1=VALUE1;KEY2=VALUE2...>', - help='Parameter values to validate.') + help='Parameter values to validate. ' + 'This can be specified multiple times, or once with parameters ' + 'separated by semicolon.', + action='append') def do_template_validate(hc, args): '''Validate a template with parameters.''' fields = {'parameters': utils.format_parameters(args.parameters)} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.21.g455b1cb/python_heatclient.egg-info/PKG-INFO new/python-heatclient-0.2.5/python_heatclient.egg-info/PKG-INFO --- old/python-heatclient-0.2.4.21.g455b1cb/python_heatclient.egg-info/PKG-INFO 2013-09-20 00:42:47.000000000 +0200 +++ new/python-heatclient-0.2.5/python_heatclient.egg-info/PKG-INFO 2013-09-27 06:43:47.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: python-heatclient -Version: 0.2.4.21.g455b1cb +Version: 0.2.5 Summary: OpenStack Orchestration API Client Library Home-page: http://www.openstack.org/ Author: OpenStack -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org