diff options
-rw-r--r-- | dnsviz/commands/graph.py | 15 | ||||
-rw-r--r-- | dnsviz/commands/print.py | 15 |
2 files changed, 22 insertions, 8 deletions
diff --git a/dnsviz/commands/graph.py b/dnsviz/commands/graph.py index f6b45cb..2719b1d 100644 --- a/dnsviz/commands/graph.py +++ b/dnsviz/commands/graph.py @@ -112,16 +112,23 @@ def finish_graph(G, name_objs, rdtypes, trusted_keys, supported_algs, fmt, filen def test_pygraphviz(): try: - from pygraphviz import release try: - major, minor = release.version.split('.')[:2] + # pygraphviz < 1.7 used pygraphviz.release.version + from pygraphviz import release + version = release.version + except ImportError: + # pygraphviz 1.7 changed to pygraphviz.__version__ + from pygraphviz import __version__ + version = __version__ + try: + major, minor = version.split('.')[:2] major = int(major) minor = int(re.sub(r'(\d+)[^\d].*', r'\1', minor)) if (major, minor) < (1,3): - logger.error('''pygraphviz version >= 1.3 is required, but version %s is installed.''' % release.version) + logger.error('''pygraphviz version >= 1.3 is required, but version %s is installed.''' % version) sys.exit(2) except ValueError: - logger.error('''pygraphviz version >= 1.3 is required, but version %s is installed.''' % release.version) + logger.error('''pygraphviz version >= 1.3 is required, but version %s is installed.''' % version) sys.exit(2) except ImportError: logger.error('''pygraphviz is required, but not installed.''') diff --git a/dnsviz/commands/print.py b/dnsviz/commands/print.py index 2597136..3dcbb8d 100644 --- a/dnsviz/commands/print.py +++ b/dnsviz/commands/print.py @@ -272,16 +272,23 @@ def textualize_status_output(names, show_color): def test_pygraphviz(): try: - from pygraphviz import release try: - major, minor = release.version.split('.')[:2] + # pygraphviz < 1.7 used pygraphviz.release.version + from pygraphviz import release + version = release.version + except ImportError: + # pygraphviz 1.7 changed to pygraphviz.__version__ + from pygraphviz import __version__ + version = __version__ + try: + major, minor = version.split('.')[:2] major = int(major) minor = int(re.sub(r'(\d+)[^\d].*', r'\1', minor)) if (major, minor) < (1,3): - logger.error('''pygraphviz version >= 1.3 is required, but version %s is installed.''' % release.version) + logger.error('''pygraphviz version >= 1.3 is required, but version %s is installed.''' % version) sys.exit(2) except ValueError: - logger.error('''pygraphviz version >= 1.3 is required, but version %s is installed.''' % release.version) + logger.error('''pygraphviz version >= 1.3 is required, but version %s is installed.''' % version) sys.exit(2) except ImportError: logger.error('''pygraphviz is required, but not installed.''') |