[Ansible] playbook実行でpython3.8/site-packages/netaddrのエラーが出る

カテゴリ: Ansible, python

発生するエラー

ansible-playbookを実行すると、下記のエラーが出る。

$ ansible-playbook playbook.yml

/usr/local/Cellar/ansible/2.9.6_1/libexec/lib/python3.8/site-packages/netaddr/strategy/__init__.py:189: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  if word_sep is not '':

対応方法

不明...

その他情報

netaddrパッケージについて

pythonのnetaddrでissue(https://github.com/netaddr/netaddr/pull/200)があり、すでにfixedになっている。
(2020/3/2にnetaddr:rel-0.7.xブランチへmergeされている)

Fix warning of using `is not` for string compare #200

Fix the following warning in python3.8
/usr/local/lib/python3.8/site-packages/netaddr-0.7.19-py3.8.egg/netaddr/strategy/__init__.py:189: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  if word_sep is not '':

リリースの履歴(https://github.com/netaddr/netaddr/releases)を見ると、netaddr-0.7.19が2020/1/13にリリースされたのが最後、なので3/15時点では未リリース。

https://pypi.org/project/netaddr/0.7.19/を見るとnetaddrのver.0.7.19はPython3.6までしか対応していないように見える。

だが、手元の環境はPython 3.7なのでこれが原因っぽい。

$ python3 --version
Python 3.7.4
こちらもおススメ

コメントを残す

メールアドレスが公開されることはありません。