From ee6762700af0dc4beefc23b4b123206b9aa6c74b Mon Sep 17 00:00:00 2001 From: Claudiu Popa Date: Wed, 8 Apr 2015 21:30:48 +0300 Subject: Don't emit missing-docstring for private functions. --- ChangeLog | 2 ++ pylint/checkers/base.py | 2 ++ pylint/test/functional/missing_docstring.py | 26 ++++++++++++++++++++++++++ pylint/test/functional/missing_docstring.txt | 3 +++ 4 files changed, 33 insertions(+) create mode 100644 pylint/test/functional/missing_docstring.py create mode 100644 pylint/test/functional/missing_docstring.txt diff --git a/ChangeLog b/ChangeLog index dab9381..c639f63 100644 --- a/ChangeLog +++ b/ChangeLog @@ -50,6 +50,8 @@ ChangeLog for Pylint * Fix a false positive for bad-reversed-sequence, when a subclass of a `dict` provides a __reversed__ method. + * Don't emit missing-docstring for private functions. + 2015-03-14 -- 1.4.3 diff --git a/pylint/checkers/base.py b/pylint/checkers/base.py index 6b9cdac..d50369c 100644 --- a/pylint/checkers/base.py +++ b/pylint/checkers/base.py @@ -1193,6 +1193,8 @@ class DocStringChecker(_BasicChecker): if docstring is None: if not report_missing: return + if node.name.startswith("_"): + return if node.body: lines = node.body[-1].lineno - node.body[0].lineno + 1 else: diff --git a/pylint/test/functional/missing_docstring.py b/pylint/test/functional/missing_docstring.py new file mode 100644 index 0000000..eafacd5 --- /dev/null +++ b/pylint/test/functional/missing_docstring.py @@ -0,0 +1,26 @@ +# [missing-docstring] +# pylint: disable=too-few-public-methods + +def public_documented(): + """It has a docstring.""" + + +def _private_undocumented(): + # Doesn't need a docstring + pass + + +def _private_documented(): + """It has a docstring.""" + + +class ClassDocumented(object): + """It has a docstring.""" + + +class ClassUndocumented(object): # [missing-docstring] + pass + + +def public_undocumented(): # [missing-docstring] + pass diff --git a/pylint/test/functional/missing_docstring.txt b/pylint/test/functional/missing_docstring.txt new file mode 100644 index 0000000..2680319 --- /dev/null +++ b/pylint/test/functional/missing_docstring.txt @@ -0,0 +1,3 @@ +missing-docstring:1::Missing module docstring +missing-docstring:21:ClassUndocumented:Missing class docstring +missing-docstring:25:public_undocumented:Missing function docstring -- cgit v1.2.1