{"id":808267,"url":"http://patchwork.ozlabs.org/api/1.0/patches/808267/?format=json","project":{"id":14,"url":"http://patchwork.ozlabs.org/api/1.0/projects/14/?format=json","name":"QEMU Development","link_name":"qemu-devel","list_id":"qemu-devel.nongnu.org","list_email":"qemu-devel@nongnu.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20170831142430.16665-3-berrange@redhat.com>","date":"2017-08-31T14:24:27","name":"[v2,2/5] qapi: use items()/values() intead of iteritems()/itervalues()","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"441dd90e37fc942726e9083d8bc115518124d3ec","submitter":{"id":2694,"url":"http://patchwork.ozlabs.org/api/1.0/people/2694/?format=json","name":"Daniel P. Berrangé","email":"berrange@redhat.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/qemu-devel/patch/20170831142430.16665-3-berrange@redhat.com/mbox/","series":[{"id":841,"url":"http://patchwork.ozlabs.org/api/1.0/series/841/?format=json","date":"2017-08-31T14:24:26","name":"qapi: support py2 & py3 in parallel","version":2,"mbox":"http://patchwork.ozlabs.org/series/841/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/808267/checks/","tags":{},"headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx01.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx01.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=berrange@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xjl8j1GM8z9s83\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri,  1 Sep 2017 00:28:05 +1000 (AEST)","from localhost ([::1]:56054 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dnQRv-00026s-5M\n\tfor incoming@patchwork.ozlabs.org; Thu, 31 Aug 2017 10:28:03 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:43441)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <berrange@redhat.com>) id 1dnQOi-0007tO-Mp\n\tfor qemu-devel@nongnu.org; Thu, 31 Aug 2017 10:24:45 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <berrange@redhat.com>) id 1dnQOh-0007bh-Hn\n\tfor qemu-devel@nongnu.org; Thu, 31 Aug 2017 10:24:44 -0400","from mx1.redhat.com ([209.132.183.28]:42250)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <berrange@redhat.com>) id 1dnQOh-0007bP-8h\n\tfor qemu-devel@nongnu.org; Thu, 31 Aug 2017 10:24:43 -0400","from smtp.corp.redhat.com\n\t(int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 4B59D81DEE;\n\tThu, 31 Aug 2017 14:24:42 +0000 (UTC)","from localhost.localdomain.com (unknown [10.42.22.189])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id 696FA7BAE3;\n\tThu, 31 Aug 2017 14:24:39 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com 4B59D81DEE","From":"\"Daniel P. Berrange\" <berrange@redhat.com>","To":"qemu-devel@nongnu.org","Date":"Thu, 31 Aug 2017 15:24:27 +0100","Message-Id":"<20170831142430.16665-3-berrange@redhat.com>","In-Reply-To":"<20170831142430.16665-1-berrange@redhat.com>","References":"<20170831142430.16665-1-berrange@redhat.com>","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.14","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.25]);\n\tThu, 31 Aug 2017 14:24:42 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"[Qemu-devel] [PATCH v2 2/5] qapi: use items()/values() intead of\n\titeritems()/itervalues()","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"Markus Armbruster <armbru@redhat.com>,\n\tMichael Roth <mdroth@linux.vnet.ibm.com>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"},"content":"The iteritems()/itervalues() methods are gone in py3, but the\nitems()/values() methods are still around. The latter are less\nefficient than the former in py2, but this has unmeasurably\nsmall impact on QEMU build time, so taking portability over\nefficiency is a net win\n\nSigned-off-by: Daniel P. Berrange <berrange@redhat.com>\n---\n scripts/qapi.py      | 12 ++++++------\n scripts/qapi2texi.py |  2 +-\n 2 files changed, 7 insertions(+), 7 deletions(-)","diff":"diff --git a/scripts/qapi.py b/scripts/qapi.py\nindex a60b79c126..d89af7d6c6 100644\n--- a/scripts/qapi.py\n+++ b/scripts/qapi.py\n@@ -253,7 +253,7 @@ class QAPIDoc(object):\n                                \"'Returns:' is only valid for commands\")\n \n     def check(self):\n-        bogus = [name for name, section in self.args.iteritems()\n+        bogus = [name for name, section in self.args.items()\n                  if not section.member]\n         if bogus:\n             raise QAPISemError(\n@@ -309,7 +309,7 @@ class QAPISchemaParser(object):\n                 if not isinstance(pragma, dict):\n                     raise QAPISemError(\n                         info, \"Value of 'pragma' must be a dictionary\")\n-                for name, value in pragma.iteritems():\n+                for name, value in pragma.items():\n                     self._pragma(name, value, info)\n             else:\n                 expr_elem = {'expr': expr,\n@@ -1575,7 +1575,7 @@ class QAPISchema(object):\n \n     def _make_members(self, data, info):\n         return [self._make_member(key, value, info)\n-                for (key, value) in data.iteritems()]\n+                for (key, value) in data.items()]\n \n     def _def_struct_type(self, expr, info, doc):\n         name = expr['struct']\n@@ -1607,11 +1607,11 @@ class QAPISchema(object):\n                 name, info, doc, 'base', self._make_members(base, info)))\n         if tag_name:\n             variants = [self._make_variant(key, value)\n-                        for (key, value) in data.iteritems()]\n+                        for (key, value) in data.items()]\n             members = []\n         else:\n             variants = [self._make_simple_variant(key, value, info)\n-                        for (key, value) in data.iteritems()]\n+                        for (key, value) in data.items()]\n             typ = self._make_implicit_enum_type(name, info,\n                                                 [v.name for v in variants])\n             tag_member = QAPISchemaObjectTypeMember('type', typ, False)\n@@ -1626,7 +1626,7 @@ class QAPISchema(object):\n         name = expr['alternate']\n         data = expr['data']\n         variants = [self._make_variant(key, value)\n-                    for (key, value) in data.iteritems()]\n+                    for (key, value) in data.items()]\n         tag_member = QAPISchemaObjectTypeMember('type', 'QType', False)\n         self._def_entity(\n             QAPISchemaAlternateType(name, info, doc,\ndiff --git a/scripts/qapi2texi.py b/scripts/qapi2texi.py\nindex 9c57b01bb4..bc43edabd7 100755\n--- a/scripts/qapi2texi.py\n+++ b/scripts/qapi2texi.py\n@@ -148,7 +148,7 @@ def texi_member(member, suffix=''):\n def texi_members(doc, what, base, variants, member_func):\n     \"\"\"Format the table of members\"\"\"\n     items = ''\n-    for section in doc.args.itervalues():\n+    for section in doc.args.values():\n         # TODO Drop fallbacks when undocumented members are outlawed\n         if section.content:\n             desc = texi_format(str(section))\n","prefixes":["v2","2/5"]}