8000 `@overload` causes `missing-param-doc` despite parameter being documented · Issue #9739 · pylint-dev/pylint · GitHub
[go: up one dir, main page]

Skip to content
@overload causes missing-param-doc despite parameter being documented #9739
@finite-state-machine

Description

@finite-sta
9508
te-machine

Bug description

Analyzing the following code with pylint, using the given rcfile, results in an unexpected missing-param-doc error:

'''module docstring
'''
from __future__ import annotations

from typing import (
        Iterable,
        Optional,
        overload,
        )

# pylint: disable-next=too-few-public-methods
class SomeClass:
    '''this docstring must be present
    '''
    @overload
    def __init__(self, _iterable: Iterable[object], /) -> None: ...
    @overload
    def __init__(self, /) -> None: ...

    def __init__(
            self, _iterable: Optional[Iterable[object]] = None, /
            ):
        '''constructor

        Args:
            _iterable: if specified, this must be an iterable of
                elements which will become the initial contents of this
                set
        '''
        _ = _iterable

Configuration

[MAIN]

load-plugins=pylint.extensions.docparams

[BASIC]

no-docstring-rgx=^(__(?!(init|new|call)__)\w+__|test_|mypy_|some_function)

[PARAMETER_DOCUMENTATION]

accept-no-param-doc=no
default-docstring-type=google

[VARIABLES]

ignored-argument-names=^ignored_|^unused_

Command used

python3 -m pylint --rcfile=pylintrc-bug bug.py

Pylint output

************* Module bug
bug.py:12:0: W9015: "_iterable" missing in parameter documentation (missing-param-doc)

------------------------------------------------------------------
Your code has been rated at 8.89/10 (previous run: 8.89/10, +0.00)

Expected behavior

Since _iterable is clearly documented in the google style, there should be no missing-param-doc error.

Pylint version

pylint 3.2.3
astroid 3.2.2
Python 3.8.16 (default, Mar 24 2023, 14:42:29)
[Clang 14.0.0 (clang-1400.0.29.202)]

OS / Environment

macOS 14

Additional dependencies

No response

Attachments

This zip contains bug.py and pylintrc-bug.

Metadata

Metadata

Assignees

No one assigned

    Labels

    False Positive 🦟A message is emitted but nothing is wrong with the codeNeeds PRThis issue is accepted, sufficiently specified and now needs an implementation

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0