From b92357ad6153f836fac9cb0a11f8026e90a10b65 Mon Sep 17 00:00:00 2001 From: Bernardo Decco Date: Sat, 11 Sep 2021 15:33:01 -0300 Subject: [PATCH] Add pylint py3 portability checks for the metal repo A lot of work has gone into making sure that StarlingX is python3 compatible. To ensure future compatibility, enable the python3 portability checks. Disable the checks that are raising errors. Another set of commits will address the offending code. Add following suppress warnings in pylint.rc: - W1618: no-absolute-import - W1624: indexing-exception Story: 2006796 Task: 43282 Signed-off-by: Bernardo Decco Change-Id: I2fa69f9ea45a27f0c60eb05ea5d0f98b47da8945 --- pylint.rc | 87 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- tox.ini | 2 +- 2 files changed, 86 insertions(+), 3 deletions(-) diff --git a/pylint.rc b/pylint.rc index 8eb7d290..f5b0f060 100755 --- a/pylint.rc +++ b/pylint.rc @@ -34,7 +34,87 @@ extension-pkg-whitelist=lxml.etree,greenlet # Enable the message, report, category or checker with the given id(s). You can # either give multiple identifier separated by comma (,) or put this option # multiple time. -#enable= +# +# Python3 checker: +# +# E1601: print-statement +# E1602: parameter-unpacking +# E1603: unpacking-in-except +# E1604: old-raise-syntax +# E1605: backtick +# E1606: long-suffix +# E1607: old-ne-operator +# E1608: old-octal-literal +# E1609: import-star-module-level +# E1610: non-ascii-bytes-literal +# E1611: invalid-unicode-literal +# W1601: apply-builtin +# W1602: basestring-builtin +# W1603: buffer-builtin +# W1604: cmp-builtin +# W1605: coerce-builtin +# W1606: execfile-builtin +# W1607: file-builtin +# W1608: long-builtin +# W1609: raw_input-builtin +# W1610: reduce-builtin +# W1611: standarderror-builtin +# W1612: unicode-builtin +# W1613: xrange-builtin +# W1614: coerce-method +# W1615: delslice-method +# W1616: getslice-method +# W1617: setslice-method +# W1618: no-absolute-import +# W1619: old-division +# W1620: dict-iter-method +# W1621: dict-view-method +# W1622: next-method-called +# W1623: metaclass-assignment +# W1624: indexing-exception +# W1625: raising-string +# W1626: reload-builtin +# W1627: oct-method +# W1628: hex-method +# W1629: nonzero-method +# W1630: cmp-method +# W1632: input-builtin +# W1633: round-builtin +# W1634: intern-builtin +# W1635: unichr-builtin +# W1636: map-builtin-not-iterating +# W1637: zip-builtin-not-iterating +# W1638: range-builtin-not-iterating +# W1639: filter-builtin-not-iterating +# W1640: using-cmp-argument +# W1641: eq-without-hash +# W1642: div-method +# W1643: idiv-method +# W1644: rdiv-method +# W1645: exception-message-attribute +# W1646: invalid-str-codec +# W1647: sys-max-int +# W1648: bad-python3-import +# W1649: deprecated-string-function +# W1650: deprecated-str-translate-call +# W1651: deprecated-itertools-function +# W1652: deprecated-types-field +# W1653: next-method-defined +# W1654: dict-items-not-iterating +# W1655: dict-keys-not-iterating +# W1656: dict-values-not-iterating +# W1657: deprecated-operator-function +# W1658: deprecated-urllib-function +# W1659: xreadlines-attribute +# W1660: deprecated-sys-function +# W1661: exception-escape +# W1662: comprehension-escape +enable=E1603,E1609,E1610,E1602,E1606,E1608,E1607,E1605,E1604,E1601,E1611,W1652, + W1651,W1649,W1657,W1660,W1658,W1659,W1623,W1622,W1620,W1621,W1645,W1641, + W1624,W1648,W1625,W1611,W1662,W1661,W1650,W1640,W1630,W1614,W1615,W1642, + W1616,W1628,W1643,W1629,W1627,W1644,W1617,W1601,W1602,W1603,W1604,W1605, + W1654,W1655,W1656,W1619,W1606,W1607,W1639,W1618,W1632,W1634,W1608,W1636, + W1653,W1646,W1638,W1609,W1610,W1626,W1633,W1647,W1635,W1612,W1613,W1637 # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifier separated by comma (,) or put this option @@ -58,9 +138,12 @@ extension-pkg-whitelist=lxml.etree,greenlet # R1724: Unnecessary "else" after "continue" (no-else-continue) # ** The following (W)arnings should be fixed: # W0703: Catching too general exception Exception (broad-except) +# Disable Python3 checkers: +# W1618: no-absolute-import +# W1624: indexing-exception disable=C0103,C0114,C0302,C1801, R0205,R0902,R0912,R0913,R0915,R1705,R1723,R1724, - W0703 + W0703, W1618, W1624 #disable=C, R, fixme diff --git a/tox.ini b/tox.ini index 637284fc..ef86ed49 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = linters,pep8 +envlist = linters,pep8,pylint minversion = 2.3 skipsdist = True