Hello community, here is the log from the commit of package python-heatclient for openSUSE:Factory checked in at 2013-06-13 21:43:11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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-04-29 14:17:07.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.python-heatclient.new/python-heatclient.changes 2013-06-13 21:43:12.000000000 +0200 @@ -1,0 +2,15 @@ +Wed May 29 10:49:23 UTC 2013 - [email protected] + +- remove setBadness call from rpmlintrc + +------------------------------------------------------------------- +Mon May 6 11:29:28 UTC 2013 - [email protected] + +- update requires to python-PrettyTable + +------------------------------------------------------------------- +Mon Apr 22 12:20:31 UTC 2013 - [email protected] + +- update to 0.2.2 + +------------------------------------------------------------------- Old: ---- python-heatclient-master.tar.gz New: ---- python-heatclient-0.2.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-heatclient.spec ++++++ --- /var/tmp/diff_new_pack.ufzBAU/_old 2013-06-13 21:43:12.000000000 +0200 +++ /var/tmp/diff_new_pack.ufzBAU/_new 2013-06-13 21:43:12.000000000 +0200 @@ -19,28 +19,28 @@ %define component heatclient Name: python-%{component} -Version: 0.2.0 +Version: 0.2.2 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.2.tar.gz BuildRequires: openstack-suse-macros BuildRequires: python-base BuildRequires: python-distribute # Documentation build requirements: +BuildRequires: python-PrettyTable BuildRequires: python-Sphinx BuildRequires: python-httplib2 BuildRequires: python-iso8601 >= 0.1.4 BuildRequires: python-keystoneclient -BuildRequires: python-prettytable Requires: python >= 2.6.8 +Requires: python-PrettyTable >= 0.5 Requires: python-argparse Requires: python-httplib2 Requires: python-iso8601 >= 0.1.4 Requires: python-keystoneclient >= 0.2 -Requires: python-prettytable >= 0.5 Requires: python-warlock < 2 BuildRoot: %{_tmppath}/%{name}-%{version}-build %if 0%{?suse_version} && 0%{?suse_version} <= 1110 @@ -77,7 +77,7 @@ This package contains testsuite files for %{name}. %prep -%setup -q -n python-heatclient-0.2.0 +%setup -q -n python-heatclient-0.2.2 %openstack_cleanup_prep echo %{version} > heatclient/versioninfo ++++++ _service ++++++ --- /var/tmp/diff_new_pack.ufzBAU/_old 2013-06-13 21:43:12.000000000 +0200 +++ /var/tmp/diff_new_pack.ufzBAU/_new 2013-06-13 21:43:12.000000000 +0200 @@ -1,7 +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="email">[email protected]</param> + <param name="url">http://tarballs.openstack.org/python-heatclient/python-heatclient-0.2.2.tar.gz</param> + <param name="email">[email protected]</param> <param name="plain-version">True</param> </service> </services> ++++++ python-heatclient-master.tar.gz -> python-heatclient-0.2.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/AUTHORS new/python-heatclient-0.2.2/AUTHORS --- old/python-heatclient-0.2.0/AUTHORS 2013-03-18 00:22:42.000000000 +0100 +++ new/python-heatclient-0.2.2/AUTHORS 2013-04-11 04:08:18.000000000 +0200 @@ -4,6 +4,7 @@ Ian Main <[email protected]> Jeremy Stanley <[email protected]> Monty Taylor <[email protected]> +Simon Pasquier <[email protected]> Steve Baker <[email protected]> Steven Dake <[email protected]> Steven Hardy <[email protected]> \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/ChangeLog new/python-heatclient-0.2.2/ChangeLog --- old/python-heatclient-0.2.0/ChangeLog 2013-03-18 00:22:42.000000000 +0100 +++ new/python-heatclient-0.2.2/ChangeLog 2013-04-11 04:08:18.000000000 +0200 @@ -1,3 +1,101 @@ +commit 9354f84e59440e6a6eade085e964a7374c73509f +Author: Simon Pasquier <[email protected]> +Date: Tue Apr 2 17:04:16 2013 +0200 + + "heat stack-create" doesn't return the error message from server + + Change-Id: Icef10df6547e5830abb17edf5ed8c622b3b021b5 + Fixes: bug #1163335 + + heatclient/common/http.py | 8 ++++---- + tests/test_common_http.py | 18 ++++++++++++++++-- + 2 files changed, 20 insertions(+), 6 deletions(-) + +commit 8eaba001434d85f4b9125524ebf55aa8288aa12e +Merge: f3a7dde 1f22278 +Author: Jenkins <[email protected]> +Date: Mon Apr 1 19:35:37 2013 +0000 + + Merge "Always pass username, even for --token-only" + +commit f3a7dde3c1b07113c483a6fecef5cc5a978f6573 +Merge: 11f24ff bcd0a35 +Author: Jenkins <[email protected]> +Date: Mon Apr 1 19:33:10 2013 +0000 + + Merge "Display resource metadata as indented json" + +commit 11f24ff4253d0acea7b1a7cd810b091be93b5478 +Merge: bbf58d1 58b96ef +Author: Jenkins <[email protected]> +Date: Mon Apr 1 19:33:09 2013 +0000 + + Merge "Don't use human readable heading labels in tables" + +commit bbf58d1a41cf6f676e3522ea1054022c2c4aea35 +Merge: 3740ae9 a5d6df0 +Author: Jenkins <[email protected]> +Date: Mon Apr 1 17:56:12 2013 +0000 + + Merge "Return the body as a string instead of an iterable." + +commit bcd0a35ba067091d27e0f21e38e92a1ee61f406f +Author: Steve Baker <[email protected]> +Date: Wed Mar 27 16:07:56 2013 +1300 + + Display resource metadata as indented json + + displaying as a pretty table wasn't pretty. + + Change-Id: Ia25dd7d08b46b6b497f13707430664718f01d1cc + Fixes: bug #1160689 + + heatclient/v1/resources.py | 3 ++- + heatclient/v1/shell.py | 5 ++--- + 2 files changed, 4 insertions(+), 4 deletions(-) + +commit 58b96efe9545d40ba33f85afbcac07995c52abc3 +Author: Steve Baker <[email protected]> +Date: Wed Mar 27 15:59:48 2013 +1300 + + Don't use human readable heading labels in tables + + This is in line with what other OS clients do. + Fixes: bug #1160689 + + Change-Id: Icbf053bd93ecdbeeb2ea791c32199225803d09be + + heatclient/common/utils.py | 3 ++- + heatclient/v1/shell.py | 11 +++-------- + tests/test_shell.py | 26 +++++++++++++------------- + 3 files changed, 18 insertions(+), 22 deletions(-) + +commit a5d6df0630f6df4c5881071a4deebc6f2e32af79 +Author: Steve Baker <[email protected]> +Date: Wed Mar 27 16:09:18 2013 +1300 + + Return the body as a string instead of an iterable. + + Heat REST API will never return an application/octet-stream so + this removes some dead code. + + Change-Id: Ia0d35c898ba92924ba82d50f1cfde14b299569e5 + + heatclient/common/http.py | 12 +++--------- + 1 file changed, 3 insertions(+), 9 deletions(-) + +commit 1f2227807fb0cad314b00a9dd9a27e5dc21846f6 +Author: Steve Baker <[email protected]> +Date: Wed Mar 27 16:12:55 2013 +1300 + + Always pass username, even for --token-only + + Change-Id: I3cf164a2d6573fe1f8d3e610c859bfa5ad19aaed + Fixes: bug #1160648 + + heatclient/shell.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + commit 3740ae9fcb1ed4dc39796ceccbf0e7000be71002 Author: Dirk Mueller <[email protected]> Date: Fri Mar 15 17:41:41 2013 +0100 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/PKG-INFO new/python-heatclient-0.2.2/PKG-INFO --- old/python-heatclient-0.2.0/PKG-INFO 2013-03-18 00:22:43.000000000 +0100 +++ new/python-heatclient-0.2.2/PKG-INFO 2013-04-11 04:08:19.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: python-heatclient -Version: 0.2.0 +Version: 0.2.2 Summary: Client library for Heat orchestration API Home-page: https://github.com/openstack/python-heatclient Author: Heat API Developers diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/heatclient/common/http.py new/python-heatclient-0.2.2/heatclient/common/http.py --- old/python-heatclient-0.2.0/heatclient/common/http.py 2013-03-18 00:21:09.000000000 +0100 +++ new/python-heatclient-0.2.2/heatclient/common/http.py 2013-04-11 04:07:56.000000000 +0200 @@ -156,17 +156,11 @@ raise exc.CommunicationError(message=message) body_iter = ResponseBodyIterator(resp) - - # Read body into string if it isn't obviously image data - if resp.getheader('content-type', None) != 'application/octet-stream': - body_str = ''.join([chunk for chunk in body_iter]) - self.log_http_response(resp, body_str) - body_iter = StringIO.StringIO(body_str) - else: - self.log_http_response(resp) + body_str = ''.join([chunk for chunk in body_iter]) + self.log_http_response(resp, body_str) if 400 <= resp.status < 600: - raise exc.from_response(resp, body_iter) + raise exc.from_response(resp, body_str) elif resp.status in (301, 302, 305): # Redirected. Reissue the request to the new location. location = resp.getheader('location', None) @@ -181,9 +175,9 @@ raise exc.InvalidEndpoint(message=message) return self._http_request(location, method, **kwargs) elif resp.status == 300: - raise exc.from_response(resp, body_iter) + raise exc.from_response(resp, body_str) - return resp, body_iter + return resp, body_str def json_request(self, method, url, **kwargs): kwargs.setdefault('headers', {}) @@ -193,10 +187,10 @@ if 'body' in kwargs: kwargs['body'] = json.dumps(kwargs['body']) - resp, body_iter = self._http_request(url, method, **kwargs) + resp, body_str = self._http_request(url, method, **kwargs) if 'application/json' in resp.getheader('content-type', None): - body = ''.join([chunk for chunk in body_iter]) + body = body_str try: body = json.loads(body) except ValueError: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/heatclient/common/utils.py new/python-heatclient-0.2.2/heatclient/common/utils.py --- old/python-heatclient-0.2.0/heatclient/common/utils.py 2013-03-18 00:21:09.000000000 +0100 +++ new/python-heatclient-0.2.2/heatclient/common/utils.py 2013-04-11 04:07:56.000000000 +0200 @@ -39,7 +39,8 @@ return ', '.join("'%s'" % i for i in l) -def print_list(objs, fields, field_labels, formatters={}, sortby=0): +def print_list(objs, fields, field_labels=None, formatters={}, sortby=0): + field_labels = field_labels or fields pt = prettytable.PrettyTable([f for f in field_labels], caching=False) pt.align = 'l' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/heatclient/shell.py new/python-heatclient-0.2.2/heatclient/shell.py --- old/python-heatclient-0.2.0/heatclient/shell.py 2013-03-18 00:21:09.000000000 +0100 +++ new/python-heatclient-0.2.2/heatclient/shell.py 2013-04-11 04:07:56.000000000 +0200 @@ -301,13 +301,13 @@ 'ca_file': args.ca_file, 'cert_file': args.cert_file, 'key_file': args.key_file, + 'username': args.os_username } if not endpoint: endpoint = self._get_endpoint(_ksclient, **kwargs) if not args.token_only: - kwargs['username'] = args.os_username kwargs['password'] = args.os_password client = heatclient.Client(api_version, endpoint, **kwargs) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/heatclient/v1/resources.py new/python-heatclient-0.2.2/heatclient/v1/resources.py --- old/python-heatclient-0.2.0/heatclient/v1/resources.py 2013-03-18 00:21:09.000000000 +0100 +++ new/python-heatclient-0.2.2/heatclient/v1/resources.py 2013-04-11 04:07:56.000000000 +0200 @@ -13,6 +13,7 @@ # License for the specific language governing permissions and limitations # under the License. +import json from heatclient.common import base from heatclient.v1 import stacks import heatclient.exc as exc @@ -67,4 +68,4 @@ resp, body = self.api.json_request('GET', '/stacks/%s/resources/%s/metadata' % (stack_id, resource_name)) - return Resource(self, body['metadata']) + return body['metadata'] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/heatclient/v1/shell.py new/python-heatclient-0.2.2/heatclient/v1/shell.py --- old/python-heatclient-0.2.0/heatclient/v1/shell.py 2013-03-18 00:21:09.000000000 +0100 +++ new/python-heatclient-0.2.2/heatclient/v1/shell.py 2013-04-11 04:07:56.000000000 +0200 @@ -182,9 +182,8 @@ '''List the user's stacks''' kwargs = {} stacks = hc.stacks.list(**kwargs) - field_labels = ['ID', 'Name', 'Status', 'Created'] fields = ['id', 'stack_name', 'stack_status', 'creation_time'] - utils.print_list(stacks, fields, field_labels, sortby=3) + utils.print_list(stacks, fields, sortby=3) @utils.arg('id', metavar='<NAME or ID>', @@ -247,11 +246,9 @@ except exc.HTTPNotFound: raise exc.CommandError('Stack not found: %s' % args.id) else: - field_labels = ['Name', 'Type', - 'Status', 'Updated'] fields = ['logical_resource_id', 'resource_type', 'resource_status', 'updated_time'] - utils.print_list(resources, fields, field_labels, sortby=3) + utils.print_list(resources, fields, sortby=3) @utils.arg('id', metavar='<NAME or ID>', @@ -294,13 +291,12 @@ fields = {'stack_id': args.id, 'resource_name': args.resource} try: - resource = hc.resources.metadata(**fields) + metadata = hc.resources.metadata(**fields) except exc.HTTPNotFound: raise exc.CommandError('Stack or resource not found: %s %s' % (args.id, args.resource)) else: - formatters = {} - utils.print_dict(resource.to_dict(), formatters=formatters) + print json.dumps(metadata, indent=2) @utils.arg('id', metavar='<NAME or ID>', @@ -316,11 +312,9 @@ except exc.HTTPNotFound: raise exc.CommandError('Stack not found: %s' % args.id) else: - field_labels = ['Resource', 'ID', 'Reason', - 'Status', 'Event time'] fields = ['logical_resource_id', 'id', 'resource_status_reason', 'resource_status', 'event_time'] - utils.print_list(events, fields, field_labels, sortby=4) + utils.print_list(events, fields, sortby=4) @utils.arg('id', metavar='<NAME or ID>', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/heatclient/versioninfo new/python-heatclient-0.2.2/heatclient/versioninfo --- old/python-heatclient-0.2.0/heatclient/versioninfo 2013-03-18 00:22:41.000000000 +0100 +++ new/python-heatclient-0.2.2/heatclient/versioninfo 2013-04-11 04:08:18.000000000 +0200 @@ -1 +1 @@ -0.2.0~20130317.3.g3740ae9 +0.2.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/python_heatclient.egg-info/PKG-INFO new/python-heatclient-0.2.2/python_heatclient.egg-info/PKG-INFO --- old/python-heatclient-0.2.0/python_heatclient.egg-info/PKG-INFO 2013-03-18 00:22:42.000000000 +0100 +++ new/python-heatclient-0.2.2/python_heatclient.egg-info/PKG-INFO 2013-04-11 04:08:18.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: python-heatclient -Version: 0.2.0 +Version: 0.2.2 Summary: Client library for Heat orchestration API Home-page: https://github.com/openstack/python-heatclient Author: Heat API Developers diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/tests/test_common_http.py new/python-heatclient-0.2.2/tests/test_common_http.py --- old/python-heatclient-0.2.0/tests/test_common_http.py 2013-03-18 00:21:09.000000000 +0100 +++ new/python-heatclient-0.2.2/tests/test_common_http.py 2013-04-11 04:07:56.000000000 +0200 @@ -183,7 +183,14 @@ # Replay, create client, assert self.m.ReplayAll() client = http.HTTPClient('http://example.com:8004') - self.assertRaises(exc.HTTPNotFound, client.json_request, 'GET', '') + try: + client.json_request('GET', '') + self.fail('No exception raised') + except exc.HTTPNotFound as e: + # Assert that the raised exception can be converted to string + self.assertNotEqual(e.message, None) + except: + raise self.m.VerifyAll() def test_http_300_json_request(self): @@ -200,7 +207,14 @@ # Replay, create client, assert self.m.ReplayAll() client = http.HTTPClient('http://example.com:8004') - self.assertRaises(exc.HTTPMultipleChoices, client.json_request, 'GET', '') + try: + client.json_request('GET', '') + self.fail('No exception raised') + except exc.HTTPMultipleChoices as e: + # Assert that the raised exception can be converted to string + self.assertNotEqual(e.message, None) + except: + raise self.m.VerifyAll() #def test_https_json_request(self): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.0/tests/test_shell.py new/python-heatclient-0.2.2/tests/test_shell.py --- old/python-heatclient-0.2.0/tests/test_shell.py 2013-03-18 00:21:09.000000000 +0100 +++ new/python-heatclient-0.2.2/tests/test_shell.py 2013-04-11 04:07:56.000000000 +0200 @@ -215,9 +215,9 @@ list_text = self.shell('list') required = [ - 'ID', - 'Status', - 'Created', + 'id', + 'stack_status', + 'creation_time', 'teststack', '1', 'CREATE_COMPLETE', @@ -282,8 +282,8 @@ 'LinuxDistribution=F17"' % template_file) required = [ - 'Name', - 'ID', + 'stack_name', + 'id', 'teststack', '1' ] @@ -313,8 +313,8 @@ 'LinuxDistribution=F17"') required = [ - 'Name', - 'ID', + 'stack_name', + 'id', 'teststack2', '2' ] @@ -350,8 +350,8 @@ 'LinuxDistribution=F17"') required = [ - 'Name', - 'ID', + 'stack_name', + 'id', 'teststack2', '2' ] @@ -380,8 +380,8 @@ 'LinuxDistribution=F17"' % template_file) required = [ - 'Name', - 'ID', + 'stack_name', + 'id', 'teststack2', '1' ] @@ -405,8 +405,8 @@ create_text = self.shell('delete teststack2/2') required = [ - 'Name', - 'ID', + 'stack_name', + 'id', 'teststack', '1' ] -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
