From patchwork Thu Feb 22 10:30:38 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markos Chandras X-Patchwork-Id: 876585 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=openvswitch.org (client-ip=140.211.169.12; helo=mail.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zn9cw3tbhz9sVy for ; Thu, 22 Feb 2018 21:31:28 +1100 (AEDT) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 3896BFBD; Thu, 22 Feb 2018 10:30:56 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id AFF72FA7 for ; Thu, 22 Feb 2018 10:30:54 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 04A81FE for ; Thu, 22 Feb 2018 10:30:53 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 74414AE86 for ; Thu, 22 Feb 2018 10:30:52 +0000 (UTC) From: Markos Chandras To: dev@openvswitch.org Date: Thu, 22 Feb 2018 10:30:38 +0000 Message-Id: <20180222103041.8046-2-mchandras@suse.de> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180222103041.8046-1-mchandras@suse.de> References: <20180222103041.8046-1-mchandras@suse.de> X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, T_RP_MATCHES_RCVD autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: [ovs-dev] [PATCH branch-2.8 1/4] ovsdb: Use items() instead of iteritems() for Python3 X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org Python3 removed the iteritems() iterator and replaced it with items() which should also work in Python2. This fixes the following build problem on Python3: Traceback (most recent call last): File "./ovsdb/ovsdb-idlc.in", line 1436, in func(*args[1:]) File "./ovsdb/ovsdb-idlc.in", line 314, in printCIDLHeader for columnName, column in sorted(table.columns.iteritems()): AttributeError: 'dict' object has no attribute 'iteritems' Signed-off-by: Markos Chandras --- ovsdb/ovsdb-dot.in | 4 ++-- ovsdb/ovsdb-idlc.in | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ovsdb/ovsdb-dot.in b/ovsdb/ovsdb-dot.in index 134ce2269..f7b7ab0db 100755 --- a/ovsdb/ovsdb-dot.in +++ b/ovsdb/ovsdb-dot.in @@ -46,14 +46,14 @@ def schemaToDot(schemaFile, arrows): print "\tnode [shape=box];" if not arrows: print "\tedge [dir=none, arrowhead=none, arrowtail=none];" - for tableName, table in schema.tables.iteritems(): + for tableName, table in schema.tables.items(): options = {} if table.is_root: options['style'] = 'bold' print "\t%s [%s];" % ( tableName, ', '.join(['%s=%s' % (k,v) for k,v in options.items()])) - for columnName, column in table.columns.iteritems(): + for columnName, column in table.columns.items(): if column.type.value: printEdge(tableName, column.type, column.type.key, "%s key" % columnName) printEdge(tableName, column.type, column.type.value, "%s value" % columnName) diff --git a/ovsdb/ovsdb-idlc.in b/ovsdb/ovsdb-idlc.in index f065ef1c6..7e1c36d1f 100755 --- a/ovsdb/ovsdb-idlc.in +++ b/ovsdb/ovsdb-idlc.in @@ -281,7 +281,7 @@ bool %(s)s_is_updated(const struct %(s)s *, enum %(s)s_column_id); # Table indexes. print("struct %(s)s * %(s)s_index_init_row(struct ovsdb_idl *, const struct ovsdb_idl_table_class *);" % {'s': structName}) print - for columnName, column in sorted(table.columns.iteritems()): + for columnName, column in sorted(table.columns.items()): print('void %(s)s_index_set_%(c)s(const struct %(s)s *,' % {'s': structName, 'c': columnName}) if column.type.is_smap(): args = ['const struct smap *'] @@ -1030,7 +1030,7 @@ void struct %(s)s * %(s)s_index_init_row(struct ovsdb_idl *idl, const struct ovsdb_idl_table_class *class) {""" % {'s': structName, 't': tableName}) - #for columnName, column in sorted(table.columns.iteritems()): + #for columnName, column in sorted(table.columns.items()): # if column.type.is_smap(): # print " smap_init(&row->%s);" % columnName print(" return (struct %(s)s *) ovsdb_idl_index_init_row(idl, class);" % {'s': structName, 't': tableName}) @@ -1097,7 +1097,7 @@ struct %(s)s * return %(s)s_cast(ovsdb_idl_index_data(CONST_CAST(struct ovsdb_idl_index_cursor *, cursor))); }""" % { 's' : structName }) # Indexes Set functions - for columnName, column in sorted(table.columns.iteritems()): + for columnName, column in sorted(table.columns.items()): type = column.type comment, members = cMembers(prefix, tableName, columnName, From patchwork Thu Feb 22 10:30:39 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markos Chandras X-Patchwork-Id: 876587 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=openvswitch.org (client-ip=140.211.169.12; helo=mail.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zn9dZ2cYCz9sVy for ; Thu, 22 Feb 2018 21:32:02 +1100 (AEDT) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 54A54FD8; Thu, 22 Feb 2018 10:30:58 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id B7039FA1 for ; Thu, 22 Feb 2018 10:30:55 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id C6CA7FE for ; Thu, 22 Feb 2018 10:30:54 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 56FB8AE94 for ; Thu, 22 Feb 2018 10:30:53 +0000 (UTC) From: Markos Chandras To: dev@openvswitch.org Date: Thu, 22 Feb 2018 10:30:39 +0000 Message-Id: <20180222103041.8046-3-mchandras@suse.de> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180222103041.8046-1-mchandras@suse.de> References: <20180222103041.8046-1-mchandras@suse.de> X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, T_RP_MATCHES_RCVD autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: [ovs-dev] [PATCH branch-2.8 2/4] ovsdb: ovsdb-dot.in: Use print function for Python3 X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org The python2 print statement no longer works in python3 since the latter uses a print function. As such, replace all instances of 'print' with 'print()'. This fixes the following build problem with python3 > ovsdb/ovsdb-client.1.tmp File "./ovsdb/ovsdb-dot.in", line 34 print "\t%s -> %s [%s];" % ( ^ SyntaxError: invalid syntax Signed-off-by: Markos Chandras --- ovsdb/ovsdb-dot.in | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/ovsdb/ovsdb-dot.in b/ovsdb/ovsdb-dot.in index f7b7ab0db..7f846836d 100755 --- a/ovsdb/ovsdb-dot.in +++ b/ovsdb/ovsdb-dot.in @@ -31,38 +31,38 @@ def printEdge(tableName, type, baseType, label): options['label'] = '"%s%s"' % (label, arity) if baseType.ref_type == 'weak': options['style'] = 'dotted' - print "\t%s -> %s [%s];" % ( + print ("\t%s -> %s [%s];" % ( tableName, baseType.ref_table_name, - ', '.join(['%s=%s' % (k,v) for k,v in options.items()])) + ', '.join(['%s=%s' % (k,v) for k,v in options.items()]))) def schemaToDot(schemaFile, arrows): schema = ovs.db.schema.DbSchema.from_json(ovs.json.from_file(schemaFile)) - print "digraph %s {" % schema.name - print '\trankdir=LR;' - print '\tsize="6.5,4";' - print '\tmargin="0";' - print "\tnode [shape=box];" + print ("digraph %s {" % schema.name) + print ('\trankdir=LR;') + print ('\tsize="6.5,4";') + print ('\tmargin="0";') + print ("\tnode [shape=box];") if not arrows: - print "\tedge [dir=none, arrowhead=none, arrowtail=none];" + print ("\tedge [dir=none, arrowhead=none, arrowtail=none];") for tableName, table in schema.tables.items(): options = {} if table.is_root: options['style'] = 'bold' - print "\t%s [%s];" % ( + print ("\t%s [%s];" % ( tableName, - ', '.join(['%s=%s' % (k,v) for k,v in options.items()])) + ', '.join(['%s=%s' % (k,v) for k,v in options.items()]))) for columnName, column in table.columns.items(): if column.type.value: printEdge(tableName, column.type, column.type.key, "%s key" % columnName) printEdge(tableName, column.type, column.type.value, "%s value" % columnName) else: printEdge(tableName, column.type, column.type.key, columnName) - print "}"; + print ("}"); def usage(): - print """\ + print ("""\ %(argv0)s: compiles ovsdb schemas to graphviz format Prints a .dot file that "dot" can render to an entity-relationship diagram usage: %(argv0)s [OPTIONS] SCHEMA @@ -72,7 +72,7 @@ The following options are also available: --no-arrows omit arrows from diagram -h, --help display this help message -V, --version display version information\ -""" % {'argv0': argv0} +""" % {'argv0': argv0}) sys.exit(0) if __name__ == "__main__": @@ -92,7 +92,7 @@ if __name__ == "__main__": elif key in ['-h', '--help']: usage() elif key in ['-V', '--version']: - print "ovsdb-dot (Open vSwitch) @VERSION@" + print ("ovsdb-dot (Open vSwitch) @VERSION@") else: sys.exit(0) From patchwork Thu Feb 22 10:30:40 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markos Chandras X-Patchwork-Id: 876588 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=openvswitch.org (client-ip=140.211.169.12; helo=mail.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zn9f82jrQz9sVy for ; Thu, 22 Feb 2018 21:32:32 +1100 (AEDT) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 44D9F1059; Thu, 22 Feb 2018 10:30:59 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 41BE7FBE for ; Thu, 22 Feb 2018 10:30:56 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 9AB72473 for ; Thu, 22 Feb 2018 10:30:55 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id EB04AAE98 for ; Thu, 22 Feb 2018 10:30:53 +0000 (UTC) From: Markos Chandras To: dev@openvswitch.org Date: Thu, 22 Feb 2018 10:30:40 +0000 Message-Id: <20180222103041.8046-4-mchandras@suse.de> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180222103041.8046-1-mchandras@suse.de> References: <20180222103041.8046-1-mchandras@suse.de> X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, T_RP_MATCHES_RCVD autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: [ovs-dev] [PATCH branch-2.8 3/4] ovsdb: ovsdb-dot.in: Change exception semantics for Python3 X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org PEP-3110 changes the semantics for capturing exceptions in Python3 from 'except E,N' to 'except E as N'. This fixes the following problem when building with python3 SyntaxError: invalid syntax File "./ovsdb/ovsdb-dot.in", line 106 except ovs.db.error.Error, e: ^ SyntaxError: invalid syntax Link: https://www.python.org/dev/peps/pep-3110/ Signed-off-by: Markos Chandras --- ovsdb/ovsdb-dot.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ovsdb/ovsdb-dot.in b/ovsdb/ovsdb-dot.in index 7f846836d..43c50dabd 100755 --- a/ovsdb/ovsdb-dot.in +++ b/ovsdb/ovsdb-dot.in @@ -81,7 +81,7 @@ if __name__ == "__main__": options, args = getopt.gnu_getopt(sys.argv[1:], 'hV', ['no-arrows', 'help', 'version',]) - except getopt.GetoptError, geo: + except getopt.GetoptError as geo: sys.stderr.write("%s: %s\n" % (argv0, geo.msg)) sys.exit(1) @@ -103,7 +103,7 @@ if __name__ == "__main__": schemaToDot(args[0], arrows) - except ovs.db.error.Error, e: + except ovs.db.error.Error as e: sys.stderr.write("%s: %s\n" % (argv0, e.msg)) sys.exit(1) From patchwork Thu Feb 22 10:30:41 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markos Chandras X-Patchwork-Id: 876589 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=openvswitch.org (client-ip=140.211.169.12; helo=mail.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zn9fg2Rbxz9sVy for ; Thu, 22 Feb 2018 21:32:59 +1100 (AEDT) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 8A44E105C; Thu, 22 Feb 2018 10:31:00 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id F3FA3FEA for ; Thu, 22 Feb 2018 10:30:56 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 9314FFE for ; Thu, 22 Feb 2018 10:30:56 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 00B45AE86 for ; Thu, 22 Feb 2018 10:30:55 +0000 (UTC) From: Markos Chandras To: dev@openvswitch.org Date: Thu, 22 Feb 2018 10:30:41 +0000 Message-Id: <20180222103041.8046-5-mchandras@suse.de> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180222103041.8046-1-mchandras@suse.de> References: <20180222103041.8046-1-mchandras@suse.de> X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, T_RP_MATCHES_RCVD autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: [ovs-dev] [PATCH branch-2.8 4/4] ovsdb: ovsdb-dot.in: Replace sys.maxint with sys.maxsize for Python3 X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org There is no sys.maxint anymore on python3. However, sys.maxsize can be used as an integer larger than any practical list or string index. Link: https://docs.python.org/3.1/whatsnew/3.0.html#integers Signed-off-by: Markos Chandras --- ovsdb/ovsdb-dot.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ovsdb/ovsdb-dot.in b/ovsdb/ovsdb-dot.in index 43c50dabd..8eea61724 100755 --- a/ovsdb/ovsdb-dot.in +++ b/ovsdb/ovsdb-dot.in @@ -15,14 +15,14 @@ def printEdge(tableName, type, baseType, label): if type.n_min == 0: if type.n_max == 1: arity = "?" - elif type.n_max == sys.maxint: + elif type.n_max == sys.maxsize: arity = "*" else: arity = "{,%d}" % type.n_max elif type.n_min == 1: if type.n_max == 1: arity = "" - elif type.n_max == sys.maxint: + elif type.n_max == sys.maxsize: arity = "+" else: arity = "{1,%d}" % type.n_max