New submission from Roman Yurchak <rth.yurc...@pm.me>:
Lib/argparse.py uses `is` for string comparison, ` 221: if self.heading is not SUPPRESS and self.heading is not None: 247: if text is not SUPPRESS and text is not None: 251: if usage is not SUPPRESS: 256: if action.help is not SUPPRESS: 290: if part and part is not SUPPRESS]) 679: if action.default is not SUPPRESS: 1130: if self.dest is not SUPPRESS: 1766: if action.dest is not SUPPRESS: 1768: if action.default is not SUPPRESS: 1851: if argument_values is not SUPPRESS: 2026: if action.help is not SUPPRESS] ` where `SUPPRESS = '==SUPPRESS=='`. Unless I'm missing something this can produce false negatives if the variable that we compare against is a slice from another string. Using equality is probably safer in any case. Detected with LGTM.com analysis. ---------- components: Library (Lib) messages: 331246 nosy: rth priority: normal severity: normal status: open title: Lib/argparse.py uses `is` for string comparison versions: Python 3.8 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue35430> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com