diff options
author | Casey Deccio <casey@deccio.net> | 2021-02-06 02:47:50 +0300 |
---|---|---|
committer | Casey Deccio <casey@deccio.net> | 2021-02-06 02:49:46 +0300 |
commit | 139ab3133df996a8916063e98b9bed0d55a0ba0a (patch) | |
tree | 66df97877958acbd59c44605b34b6a3c7f5d4c3c | |
parent | ad7422ad1b023374fb94aeb41cbe019233b416de (diff) |
Update version checking for pygraphviz 1.7
-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.''') |