openstack trove,使pylint忽略错误
一、什么是pylint
Pylint 是一个 Python 代码分析工具,它分析 Python 代码中的错误,查找不符合代码风格标准和有潜在问题的代码。
Pylint 是一个 Python 工具,除了平常代码分析工具的作用之外,它提供了更多的功能:如检查一行代码的长度,变量名是否符合命名标准,一个声明过的接口是否被真正实现等等。 Pylint 的一个很大的好处是它的高可配置性,高可定制性,并且可以很容易写小插件来添加功能。
二、使pylint忽略openstack/trove中的错误。
运行tox -e pylint,可以用pylint检查代码。
如果出现错误则会出现这样的提示:
ERROR: trove/common/stream_codecs.py 210: E1101 no-member, IniCodec.deserialize: Instance of 'ConfigParser' has no 'read_file' member
Check failed. 376 files processed, 1 had errors, 1 errors recorded.
ERROR: InvocationError: '/home/ubuntu/trove/.tox/pylint/bin/python tools/trove-pylint.py check'
trove/common/stream_codecs.py代表出错的文件,E1101 no-member代表出错的类型,IniCodec.deserialize代表出错的函数,Instance of 'ConfigParser' has no 'read_file' member代表出错的内容。
通过查看tools/trove-pylint.config可以看到里面的文件格式, 以上的错误可以写成:
[
"trove/common/stream_codecs.py",
"no-member",
"Instance of 'ConfigParser' has no 'read_file' member",
"IniCodec.deserialize"
],
重新运行 tox -e pylint,然后发现错误信息就没有了
更多trove pylint的内容:https://github.com/openstack/trove/blob/master/tools/trove-pylint.README
此文章属博客园用户S-tec原创作品,受国家《著作权法》保护,未经许可,任何单位及个人不得做营利性使用;若仅做个人学习、交流等非营利性使用,应当指明作者姓名、作品名称,原文地址,并且不得侵犯作者依法享有的其他权利。