Hello community, here is the log from the commit of package python-heatclient for openSUSE:Factory checked in at 2013-09-16 16:32:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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-16 12:45:26.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.python-heatclient.new/python-heatclient.changes 2013-09-16 16:32:39.000000000 +0200 @@ -1,0 +2,16 @@ +Thu Sep 12 00:12:30 UTC 2013 - opensuse-cl...@opensuse.org + +- Update to version 0.2.4.20: + + Support --version for heatclient + + Stack instance identifier property + + Add handler for heatclient.common.http + +------------------------------------------------------------------- +Thu Sep 5 00:08:57 UTC 2013 - opensuse-cl...@opensuse.org + +- Update to version 0.2.4.15: + + Added support for running the tests under PyPy with tox + + Fix and enable Hacking H501 warning + + Be backward compatible after a renaming in API + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-heatclient.spec ++++++ --- /var/tmp/diff_new_pack.fYGDXp/_old 2013-09-16 16:32:39.000000000 +0200 +++ /var/tmp/diff_new_pack.fYGDXp/_new 2013-09-16 16:32:39.000000000 +0200 @@ -19,7 +19,7 @@ %define component heatclient Name: python-%{component} -Version: 0.2.4.10 +Version: 0.2.4.20 Release: 0 Summary: Openstack Orchestration (Heat) API Client License: Apache-2.0 @@ -85,7 +85,7 @@ This package contains testsuite files for %{name}. %prep -%setup -q -n python-heatclient-0.2.4.10.ga5d7108 +%setup -q -n python-heatclient-0.2.4.20.g978e3f4 %openstack_cleanup_prep echo %{version} > heatclient/versioninfo ++++++ python-heatclient-master.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/AUTHORS new/python-heatclient-0.2.4.20.g978e3f4/AUTHORS --- old/python-heatclient-0.2.4.10.ga5d7108/AUTHORS 2013-08-27 17:38:02.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/AUTHORS 2013-09-11 22:49:25.000000000 +0200 @@ -1,3 +1,4 @@ +Alex Gaynor <alex.gay...@gmail.com> Andrew Plunk <andrew.pl...@rackspace.com> Angus Salkeld <asalk...@redhat.com> Bryan D. Payne <bdpa...@acm.org> @@ -16,3 +17,4 @@ Steven Hardy <sha...@redhat.com> Sulochan Acharya <suloc...@gmail.com> Swann Croiset <swann.croi...@bull.net> +ZhiQiang Fan <aji.zq...@gmail.com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/ChangeLog new/python-heatclient-0.2.4.20.g978e3f4/ChangeLog --- old/python-heatclient-0.2.4.10.ga5d7108/ChangeLog 2013-08-27 17:38:02.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/ChangeLog 2013-09-11 22:49:25.000000000 +0200 @@ -1,3 +1,108 @@ +commit 978e3f45423acc86b7836a4c07a42bbf878f31d4 +Merge: 120efdb ebb57f1 +Author: Jenkins <jenk...@review.openstack.org> +Date: Wed Sep 11 20:48:34 2013 +0000 + + Merge "Add handler for heatclient.common.http" + +commit 120efdb9cf3e9ad04298b4750c2ce1e96edbab86 +Merge: 5cb3fc0 3146d22 +Author: Jenkins <jenk...@review.openstack.org> +Date: Wed Sep 11 17:22:57 2013 +0000 + + Merge "Stack instance identifier property" + +commit ebb57f109517045d1d321b4fcb8b788e062ff079 +Author: ZhiQiang Fan <aji.zq...@gmail.com> +Date: Wed Sep 4 14:38:49 2013 +0800 + + Add handler for heatclient.common.http + + If no handler is found, add StreamHandler to LOG + + Closes-Bug: #1220532 + Change-Id: I32d541d242845b7311fd6810a5e87f07fafd8efd + +commit 5cb3fc07d50d76133565717659abc886d43fc2a2 +Author: ZhiQiang Fan <aji.zq...@gmail.com> +Date: Wed Sep 4 14:10:55 2013 +0800 + + Support --version for heatclient + + Closes-Bug: #1220524 + Change-Id: Id78f7c7c78d31c0126b43f7a846f02f2542b0b7c + +commit e2cbb450361893976316211cb1656d6cf8de686d +Merge: a7ffcd7 b95657f +Author: Jenkins <jenk...@review.openstack.org> +Date: Wed Sep 4 03:35:34 2013 +0000 + + Merge "Be backward compatible after a renaming in API" + +commit a7ffcd76d08f52a928e7cae2b3f82ac4dba3cc37 +Merge: 9d19772 d48d358 +Author: Jenkins <jenk...@review.openstack.org> +Date: Wed Sep 4 03:12:33 2013 +0000 + + Merge "Fix and enable Hacking H501 warning" + +commit 3146d22b70490c4f640fee01e23c2208667d382c +Author: Steve Baker <sba...@redhat.com> +Date: Wed Sep 4 11:33:29 2013 +1200 + + Stack instance identifier property + + The identifier property formats the stack name and ID for + REST API request paths. + + This has the following consequences for each action method: + - get, same behaviour but using the identifier property + - delete, using the full identifier avoids one http redirect + - update, this method was non-functional before this change, and is + now fixed + + Change-Id: Ib2b12826243e25772acccb8ca56039e54d3857d5 + +commit 9d19772089bedeefd33d8a8cfef8aac00998f2c7 +Author: Alex Gaynor <alex.gay...@gmail.com> +Date: Tue Sep 3 17:31:12 2013 -0700 + + Added support for running the tests under PyPy with tox + + This is a precursor to having them run under check and gate. + + This also fixes a single test which fails on PyPy, the test failes at + because it assumes a ``dict`` has a particular order for its keys when + it is printed out, on PyPy dicts have a different order sometimes, the + exact ordering is not a guarnteed property of Python. + + Change-Id: Ie86726a0221e5e9aa68f7303d8ca8c7acd878f65 + +commit d48d3587bd9593eb03ecec556eea3772b9c89d04 +Author: Dirk Mueller <d...@dmllr.de> +Date: Mon Sep 2 21:39:21 2013 +0200 + + Fix and enable Hacking H501 warning + + Enable Gating on H501. Fix the only two cases + that trigger. + + Change-Id: Ib309b989df6556d7436e718e1497ce4dcacc83d6 + +commit b95657fd15e8e1880978a130c4faa45b290397a8 +Author: Swann Croiset <swann.croi...@bull.net> +Date: Thu Aug 29 15:47:22 2013 +0200 + + Be backward compatible after a renaming in API + + The need was introduced with the renaming of field logical_resource_id + to resource_name, so let heatclient display the good one for the two + Heat versions. + + Fixes bug #1216903 + + Change-Id: I3e86f482a1b814a27b15be3c102727c44153221f + commit a5d71080efc63a174d77614c9d816a7d86423971 Merge: 6f99131 1426237 Author: Jenkins <jenk...@review.openstack.org> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/PKG-INFO new/python-heatclient-0.2.4.20.g978e3f4/PKG-INFO --- old/python-heatclient-0.2.4.10.ga5d7108/PKG-INFO 2013-08-27 17:38:03.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/PKG-INFO 2013-09-11 22:49:26.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: python-heatclient -Version: 0.2.4.10.ga5d7108 +Version: 0.2.4.20.g978e3f4 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.10.ga5d7108/heatclient/__init__.py new/python-heatclient-0.2.4.20.g978e3f4/heatclient/__init__.py --- old/python-heatclient-0.2.4.10.ga5d7108/heatclient/__init__.py 2013-08-27 17:37:22.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/heatclient/__init__.py 2013-09-11 22:48:43.000000000 +0200 @@ -9,23 +9,8 @@ # 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 inspect -import os +import pbr.version -def _get_heatclient_version(): - """Read version from versioninfo file.""" - mod_abspath = inspect.getabsfile(inspect.currentframe()) - heatclient_path = os.path.dirname(mod_abspath) - version_path = os.path.join(heatclient_path, 'versioninfo') - if os.path.exists(version_path): - version = open(version_path).read().strip() - else: - version = "Unknown, couldn't find versioninfo file at %s"\ - % version_path - - return version - - -__version__ = _get_heatclient_version() +__version__ = pbr.version.VersionInfo('python-heatclient').version_string() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/heatclient/common/http.py new/python-heatclient-0.2.4.20.g978e3f4/heatclient/common/http.py --- old/python-heatclient-0.2.4.10.ga5d7108/heatclient/common/http.py 2013-08-27 17:37:22.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/heatclient/common/http.py 2013-09-11 22:48:43.000000000 +0200 @@ -41,6 +41,8 @@ LOG = logging.getLogger(__name__) +if not LOG.handlers: + LOG.addHandler(logging.StreamHandler()) USER_AGENT = 'python-heatclient' CHUNKSIZE = 1024 * 64 # 64kB @@ -148,11 +150,13 @@ conn.request(method, conn_url, **kwargs) resp = conn.getresponse() except socket.gaierror as e: - message = "Error finding address for %(url)s: %(e)s" % locals() + message = ("Error finding address for %(url)s: %(e)s" % + {'url': url, 'e': e}) raise exc.InvalidEndpoint(message=message) except (socket.error, socket.timeout) as e: endpoint = self.endpoint - message = "Error communicating with %(endpoint)s %(e)s" % locals() + message = ("Error communicating with %(endpoint)s %(e)s" % + {'endpoint': endpoint, 'e': e}) raise exc.CommunicationError(message=message) body_iter = ResponseBodyIterator(resp) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/heatclient/shell.py new/python-heatclient-0.2.4.20.g978e3f4/heatclient/shell.py --- old/python-heatclient-0.2.4.10.ga5d7108/heatclient/shell.py 2013-08-27 17:37:22.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/heatclient/shell.py 2013-09-11 22:48:43.000000000 +0200 @@ -21,7 +21,8 @@ from keystoneclient.v2_0 import client as ksclient -from heatclient import client as heatclient +import heatclient +from heatclient import client as heat_client from heatclient.common import utils from heatclient import exc @@ -45,6 +46,11 @@ action='store_true', help=argparse.SUPPRESS) + parser.add_argument('--version', + action='version', + version=heatclient.__version__, + help="Shows the client version and exits") + parser.add_argument('-d', '--debug', default=bool(utils.env('HEATCLIENT_DEBUG')), action='store_true', @@ -328,7 +334,7 @@ if not endpoint: endpoint = self._get_endpoint(_ksclient, **kwargs) - client = heatclient.Client(api_version, endpoint, **kwargs) + client = heat_client.Client(api_version, endpoint, **kwargs) args.func(client, args) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/heatclient/tests/test_shell.py new/python-heatclient-0.2.4.20.g978e3f4/heatclient/tests/test_shell.py --- old/python-heatclient-0.2.4.10.ga5d7108/heatclient/tests/test_shell.py 2013-08-27 17:37:22.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/heatclient/tests/test_shell.py 2013-09-11 22:48:43.000000000 +0200 @@ -438,9 +438,9 @@ show_text = self.shell('template-show teststack') required = [ '{', - ' "AWSTemplateFormatVersion": "2010-09-09",', - ' "Outputs": {},', - ' "Resources": {},', + ' "AWSTemplateFormatVersion": "2010-09-09"', + ' "Outputs": {}', + ' "Resources": {}', ' "Parameters": {}', '}' ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/heatclient/tests/test_stacks.py new/python-heatclient-0.2.4.20.g978e3f4/heatclient/tests/test_stacks.py --- old/python-heatclient-0.2.4.10.ga5d7108/heatclient/tests/test_stacks.py 2013-08-27 17:37:22.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/heatclient/tests/test_stacks.py 2013-09-11 22:48:43.000000000 +0200 @@ -63,13 +63,20 @@ self.assertEqual(self.status, stack.status) +class StackIdentifierTest(testtools.TestCase): + + def test_stack_identifier(self): + stack = mock_stack(None, 'the_stack', 'abcd1234') + self.assertEqual('the_stack/abcd1234', stack.identifier) + + class StackOperationsTest(testtools.TestCase): def test_delete_stack(self): manager = MagicMock() - stack = mock_stack(manager, None, 'abcd1234') + stack = mock_stack(manager, 'the_stack', 'abcd1234') stack.delete() - manager.delete.assert_called_once_with('abcd1234') + manager.delete.assert_called_once_with('the_stack/abcd1234') def test_get_stack(self): manager = MagicMock() @@ -77,6 +84,12 @@ stack.get() manager.get.assert_called_once_with('the_stack/abcd1234') + def test_update_stack(self): + manager = MagicMock() + stack = mock_stack(manager, 'the_stack', 'abcd1234') + stack.update() + manager.update.assert_called_once_with('the_stack/abcd1234') + class StackManagerNoPaginationTest(testtools.TestCase): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/heatclient/v1/shell.py new/python-heatclient-0.2.4.20.g978e3f4/heatclient/v1/shell.py --- old/python-heatclient-0.2.4.10.ga5d7108/heatclient/v1/shell.py 2013-08-27 17:37:22.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/heatclient/v1/shell.py 2013-09-11 22:48:43.000000000 +0200 @@ -333,8 +333,13 @@ except exc.HTTPNotFound: raise exc.CommandError('Stack not found: %s' % args.id) else: - fields = ['resource_name', 'resource_type', - 'resource_status', 'updated_time'] + fields = ['resource_type', 'resource_status', 'updated_time'] + if len(resources) >= 1: + if hasattr(resources[0], 'resource_name'): + fields.insert(0, 'resource_name') + else: + fields.insert(0, 'logical_resource_id') + utils.print_list(resources, fields, sortby=3) @@ -416,8 +421,13 @@ except exc.HTTPNotFound: raise exc.CommandError('Stack not found: %s' % args.id) else: - fields = ['resource_name', 'id', 'resource_status_reason', + fields = ['id', 'resource_status_reason', 'resource_status', 'event_time'] + if len(events) >= 1: + if hasattr(events[0], 'resource_name'): + fields.insert(0, 'resource_name') + else: + fields.insert(0, 'logical_resource_id') utils.print_list(events, fields) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/heatclient/v1/stacks.py new/python-heatclient-0.2.4.20.g978e3f4/heatclient/v1/stacks.py --- old/python-heatclient-0.2.4.10.ga5d7108/heatclient/v1/stacks.py 2013-08-27 17:37:22.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/heatclient/v1/stacks.py 2013-09-11 22:48:43.000000000 +0200 @@ -23,10 +23,10 @@ return "<Stack %s>" % self._info def update(self, **fields): - self.manager.update(self, **fields) + self.manager.update(self.identifier, **fields) def delete(self): - return self.manager.delete(self.id) + return self.manager.delete(self.identifier) def get(self): # set_loaded() first ... so if we have to bail, we know we tried. @@ -34,7 +34,7 @@ if not hasattr(self.manager, 'get'): return - new = self.manager.get('%s/%s' % (self.stack_name, self.id)) + new = self.manager.get(self.identifier) if new: self._add_details(new._info) @@ -50,6 +50,10 @@ # Return everything after the first underscore return s[s.index('_') + 1:] + @property + def identifier(self): + return '%s/%s' % (self.stack_name, self.id) + class StackManager(base.Manager): resource_class = Stack @@ -105,9 +109,8 @@ resp, body = self.api.json_request('POST', '/stacks', body=kwargs, headers=headers) - def update(self, **kwargs): + def update(self, stack_id, **kwargs): """Update a stack.""" - stack_id = kwargs.pop('stack_id') headers = self.api.credentials_headers() resp, body = self.api.json_request('PUT', '/stacks/%s' % stack_id, body=kwargs, headers=headers) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-heatclient-0.2.4.10.ga5d7108/python_heatclient.egg-info/PKG-INFO new/python-heatclient-0.2.4.20.g978e3f4/python_heatclient.egg-info/PKG-INFO --- old/python-heatclient-0.2.4.10.ga5d7108/python_heatclient.egg-info/PKG-INFO 2013-08-27 17:38:02.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/python_heatclient.egg-info/PKG-INFO 2013-09-11 22:49:25.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: python-heatclient -Version: 0.2.4.10.ga5d7108 +Version: 0.2.4.20.g978e3f4 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.10.ga5d7108/tox.ini new/python-heatclient-0.2.4.20.g978e3f4/tox.ini --- old/python-heatclient-0.2.4.10.ga5d7108/tox.ini 2013-08-27 17:37:22.000000000 +0200 +++ new/python-heatclient-0.2.4.20.g978e3f4/tox.ini 2013-09-11 22:48:43.000000000 +0200 @@ -1,5 +1,5 @@ [tox] -envlist = py26,py27,pep8 +envlist = py26,py27,pypy,pep8 [testenv] setenv = VIRTUAL_ENV={envdir} @@ -22,6 +22,6 @@ [flake8] show-source = True -ignore = H233,H302,H501 +ignore = H233,H302 builtins = _ exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org