diff scripts/schema_diagram.py @ 5395:23b8e6067f7c

Python 3 preparation: update calls to dict methods. Tool-assisted patch. Changes of iterkeys / itervalues / iteritems to keys / values / items are fully automated, but may make things less efficient in Python 2. Automated tools want to add list() around many calls to keys / values / items, but I thought most such list() additions were unnecessary because it seemed the result of keys / values / items was just iterated over while the set of dict keys remained unchanged, rather than used in a way requiring an actual list, or used while the set of keys in the dict could change. It's quite possible I missed some cases where list() was really needed, or left in some unnecessary list() calls. In cases where list() was only needed because the resulting list was then sorted in-place, I changed the code to use calls to sorted().
author Joseph Myers <jsm@polyomino.org.uk>
date Tue, 24 Jul 2018 23:04:42 +0000
parents 64b05e24dbd8
children 9c3ec0a5c7fc
line wrap: on
line diff
--- a/scripts/schema_diagram.py	Tue Jul 24 23:03:35 2018 +0000
+++ b/scripts/schema_diagram.py	Tue Jul 24 23:04:42 2018 +0000
@@ -25,7 +25,7 @@
 print('edge [taillabel="1" headlabel="1" dir=back arrowtail=ediamond]')
 
 # get all the classes
-types = db.classes.keys()
+types = list(db.classes.keys())
 
 # one record node per class
 for i in range(len(types)):

Roundup Issue Tracker: http://roundup-tracker.org/