Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix reportUnsafeMultipleInheritance false positive in diamond inheritance scenarios, which is safe due to how MRO works #940

Merged
merged 1 commit into from
Dec 9, 2024

Conversation

DetachHead
Copy link
Owner

fixes #657

…itance scenarios, which is safe due to how MRO works
Copy link
Contributor

github-actions bot commented Dec 9, 2024

Diff from mypy_primer, showing the effect of this PR on open source code:

paasta (https://github.com/yelp/paasta)
-   /tmp/mypy_primer/projects/paasta/paasta_tools/paastaapi/exceptions.py:18:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/paasta/paasta_tools/paastaapi/exceptions.py:47:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/paasta/paasta_tools/paastaapi/exceptions.py:84:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
- 1578 errors, 24069 warnings, 0 notes
+ 1575 errors, 24069 warnings, 0 notes

pytest (https://github.com/pytest-dev/pytest)
-   /tmp/mypy_primer/projects/pytest/src/_pytest/python.py:339:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Node (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/pytest/src/_pytest/warning_types.py:47:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/pytest/src/_pytest/warning_types.py:60:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
- 1159 errors, 17280 warnings, 0 notes
+ 1156 errors, 17280 warnings, 0 notes

pyodide (https://github.com/pyodide/pyodide)
-   /tmp/mypy_primer/projects/pyodide/src/py/_pyodide/_core_docs.py:94:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: type (reportUnsafeMultipleInheritance)
- 959 errors, 9996 warnings, 0 notes
+ 958 errors, 9996 warnings, 0 notes

ibis (https://github.com/ibis-project/ibis)
-   /tmp/mypy_primer/projects/ibis/ibis/common/exceptions.py:64:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/common/exceptions.py:68:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/common/exceptions.py:72:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/common/temporal.py:20:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: type (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/arrays.py:1349:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/arrays.py:1354:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/binary.py:36:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/binary.py:41:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/collections.py:14:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/collections.py:19:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/generic.py:2813:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/generic.py:2818:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1625:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1630:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1671:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1676:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1686:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1691:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1701:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1706:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1716:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1721:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1731:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1736:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1746:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/geospatial.py:1751:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/inet.py:14:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/inet.py:19:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/inet.py:29:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/inet.py:34:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/json.py:500:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/json.py:505:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/logical.py:244:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/logical.py:249:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/maps.py:431:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/maps.py:436:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/numeric.py:765:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/numeric.py:770:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/ibis/ibis/expr/types/numeric.py:1634:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Expr (reportUnsafeMultipleInheritance)

... (truncated 21 lines) ...

sympy (https://github.com/sympy/sympy)
- /tmp/mypy_primer/projects/sympy/sympy/matrices/exceptions.py
-   /tmp/mypy_primer/projects/sympy/sympy/matrices/exceptions.py:10:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/matrices/exceptions.py:19:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/matrices/exceptions.py:24:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/algebraicfield.py:16:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain, Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/complexfield.py:17:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain, Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/expressiondomain.py:16:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain, Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/expressionrawdomain.py:13:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain, Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/finitefield.py:110:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/fractionfield.py:10:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/integerring.py:21:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain, Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/old_fractionfield.py:12:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/old_polynomialring.py:18:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/polynomialring.py:11:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/rationalfield.py:15:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain, Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/polys/domains/realfield.py:55:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Domain, Domain (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/printing/lambdarepr.py:228:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: AbstractPythonCodePrinter (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/printing/python.py:10:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Printer (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/sympy/sympy/solvers/ode/single.py:1685:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: SingleODESolver (reportUnsafeMultipleInheritance)
-     Type of "sol1" is "Equality | Unknown | Relational | Unequality" (reportUnknownVariableType)
+     Type of "sol1" is "Equality | Unknown" (reportUnknownVariableType)
-     Type of "sol3" is "Equality | Unknown | Relational | Unequality" (reportUnknownVariableType)
+     Type of "sol3" is "Equality | Unknown" (reportUnknownVariableType)
-     Type of "eqn" is "Equality | Unknown | Relational | Unequality" (reportUnknownVariableType)
+     Type of "eqn" is "Equality | Unknown" (reportUnknownVariableType)
-     Type of "sol" is "Equality | Unknown | Relational | Unequality" (reportUnknownVariableType)
+     Type of "sol" is "Equality | Unknown" (reportUnknownVariableType)
-     Type of "sol" is "Equality | Unknown | Relational | Unequality" (reportUnknownVariableType)
+     Type of "sol" is "Equality | Unknown" (reportUnknownVariableType)
-     Type of "eqs" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eqs" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "sol" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "eq" is "tuple[Equality | Unknown | Relational | Unequality, Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eq" is "tuple[Equality | Unknown, Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "sol" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "eq" is "tuple[Equality | Unknown | Relational | Unequality, Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eq" is "tuple[Equality | Unknown, Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "sol" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "eq" is "tuple[Equality | Unknown | Relational | Unequality, Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eq" is "tuple[Equality | Unknown, Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "sol" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "eq" is "tuple[Equality | Unknown | Relational | Unequality, Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eq" is "tuple[Equality | Unknown, Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "sol" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "eq" is "tuple[Equality | Unknown | Relational | Unequality, Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eq" is "tuple[Equality | Unknown, Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "sol" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "eq" is "tuple[Equality | Unknown | Relational | Unequality, Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eq" is "tuple[Equality | Unknown, Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "sol" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "eq" is "tuple[Equality | Unknown | Relational | Unequality, Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eq" is "tuple[Equality | Unknown, Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "sol" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "eq" is "tuple[Equality | Unknown | Relational | Unequality, Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eq" is "tuple[Equality | Unknown, Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "sol" is "list[Equality | Unknown]" (reportUnknownVariableType)
-     Type of "eq" is "tuple[Equality | Unknown | Relational | Unequality, Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)
+     Type of "eq" is "tuple[Equality | Unknown, Equality | Unknown]" (reportUnknownVariableType)
-     Type of "sol" is "list[Equality | Unknown | Relational | Unequality]" (reportUnknownVariableType)

... (truncated 4471 lines) ...

scikit-learn (https://github.com/scikit-learn/scikit-learn)
-   /tmp/mypy_primer/projects/scikit-learn/sklearn/utils/_param_validation.py:20:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
- 16995 errors, 197986 warnings, 0 notes
+ 16994 errors, 197986 warnings, 0 notes

mongo-python-driver (https://github.com/mongodb/mongo-python-driver)
-   /tmp/mypy_primer/projects/mongo-python-driver/test/test_discovery_and_monitoring.py:316:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseListener (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/mongo-python-driver/test/test_encryption.py:405:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: TestCase (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/mongo-python-driver/test/test_encryption.py:1548:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: TestCase (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/mongo-python-driver/test/test_encryption.py:1573:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: TestCase (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/mongo-python-driver/test/asynchronous/test_encryption.py:405:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: TestCase (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/mongo-python-driver/test/asynchronous/test_encryption.py:1554:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: TestCase (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/mongo-python-driver/test/asynchronous/test_encryption.py:1579:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: TestCase (reportUnsafeMultipleInheritance)
- 4087 errors, 51967 warnings, 0 notes
+ 4080 errors, 51967 warnings, 0 notes

bokeh (https://github.com/bokeh/bokeh)
-   /tmp/mypy_primer/projects/bokeh/tests/unit/bokeh/core/test_properties.py:257:15 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: HasProps (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/bokeh/tests/unit/bokeh/core/test_properties.py:318:15 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: HasProps (reportUnsafeMultipleInheritance)
- 3953 errors, 29694 warnings, 0 notes
+ 3951 errors, 29694 warnings, 0 notes

kopf (https://github.com/nolar/kopf)
-   /tmp/mypy_primer/projects/kopf/kopf/_core/actions/loggers.py:39:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Formatter (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/kopf/kopf/_core/actions/loggers.py:92:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Formatter (reportUnsafeMultipleInheritance)
- 1220 errors, 23375 warnings, 0 notes
+ 1218 errors, 23375 warnings, 0 notes

aioredis (https://github.com/aio-libs/aioredis)
-   /tmp/mypy_primer/projects/aioredis/aioredis/exceptions.py:14:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException, BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/aioredis/aioredis/exceptions.py:66:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
- 333 errors, 2678 warnings, 0 notes
+ 331 errors, 2678 warnings, 0 notes

pylint (https://github.com/pycqa/pylint)
-   /tmp/mypy_primer/projects/pylint/pylint/checkers/format.py:147:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseChecker (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/pylint/pylint/checkers/imports.py:326:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseChecker (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/pylint/pylint/checkers/misc.py:53:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseChecker (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/pylint/pylint/checkers/stdlib.py:460:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseChecker (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/pylint/pylint/checkers/strings.py:639:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseChecker (reportUnsafeMultipleInheritance)
- 307 errors, 14916 warnings, 0 notes
+ 302 errors, 14916 warnings, 0 notes

prefect (https://github.com/PrefectHQ/prefect)
-   /tmp/mypy_primer/projects/prefect/src/integrations/prefect-aws/prefect_aws/s3.py:775:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Block, Block (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/prefect/src/integrations/prefect-azure/prefect_azure/blob_storage.py:193:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Block, Block (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/prefect/src/integrations/prefect-gcp/prefect_gcp/cloud_storage.py:559:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Block, Block (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/prefect/src/integrations/prefect-sqlalchemy/prefect_sqlalchemy/database.py:35:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: Block (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/prefect/src/prefect/exceptions.py:189:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)
-   /tmp/mypy_primer/projects/prefect/src/prefect/exceptions.py:210:7 - error: Multiple inheritance is not allowed because the following base classes contain `__init__` or `__new__` methods that may not get called: BaseException (reportUnsafeMultipleInheritance)

... (truncated 265 lines) ...```

@DetachHead DetachHead merged commit a4e7c94 into main Dec 9, 2024
20 checks passed
@DetachHead DetachHead deleted the reportUnsafeMultipleInheritance-diamond branch December 9, 2024 11:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

reportUnsafeMultipleInheritance false positive when diamond
1 participant