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
Mypy fails in strict mode #117
Comments
Logs for LOG: Mypy Version: 0.950
LOG: Config File: Default
LOG: Configured Executable: /opt/homebrew/opt/python@3.9/bin/python3.9
LOG: Current Executable: /opt/homebrew/opt/python@3.9/bin/python3.9
LOG: Cache Dir: .mypy_cache
LOG: Compiled: True
LOG: Exclude: []
LOG: Found source: BuildSource(path='foo.py', module='foo', has_text=False, base_dir='/Users/alex/Software')
LOG: Could not load cache for foo: foo.meta.json
LOG: Metadata not found for foo
LOG: Parsing foo.py (foo)
LOG: Metadata fresh for cloup: file /Users/alex/Software/cloup/cloup/__init__.py
LOG: Metadata fresh for builtins: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/builtins.pyi
LOG: Metadata fresh for cloup._version: file /Users/alex/Software/cloup/cloup/_version.py
LOG: Metadata fresh for cloup.warnings: file /Users/alex/Software/cloup/cloup/warnings.py
LOG: Metadata fresh for click: file /Users/alex/Software/click/src/click/__init__.py
LOG: Metadata fresh for cloup.styling: file /Users/alex/Software/cloup/cloup/styling.py
LOG: Metadata fresh for cloup.formatting: file /Users/alex/Software/cloup/cloup/formatting/__init__.py
LOG: Metadata fresh for cloup._context: file /Users/alex/Software/cloup/cloup/_context.py
LOG: Metadata fresh for cloup._params: file /Users/alex/Software/cloup/cloup/_params.pyi
LOG: Metadata fresh for cloup._option_groups: file /Users/alex/Software/cloup/cloup/_option_groups.py
LOG: Metadata fresh for cloup._sections: file /Users/alex/Software/cloup/cloup/_sections.py
LOG: Metadata fresh for cloup._commands: file /Users/alex/Software/cloup/cloup/_commands.py
LOG: Metadata fresh for cloup.constraints: file /Users/alex/Software/cloup/cloup/constraints/__init__.py
LOG: Metadata fresh for cloup.types: file /Users/alex/Software/cloup/cloup/types.py
LOG: Metadata fresh for sys: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/sys.pyi
LOG: Metadata fresh for types: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/types.pyi
LOG: Metadata fresh for _ast: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_ast.pyi
LOG: Metadata fresh for _collections_abc: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_collections_abc.pyi
LOG: Metadata fresh for _typeshed: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_typeshed/__init__.pyi
LOG: Metadata fresh for collections.abc: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/collections/abc.pyi
LOG: Metadata fresh for io: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/io.pyi
LOG: Metadata fresh for typing: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/typing.pyi
LOG: Metadata fresh for typing_extensions: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/typing_extensions.pyi
LOG: Metadata fresh for click.core: file /Users/alex/Software/click/src/click/core.py
LOG: Metadata fresh for click.decorators: file /Users/alex/Software/click/src/click/decorators.py
LOG: Metadata fresh for click.exceptions: file /Users/alex/Software/click/src/click/exceptions.py
LOG: Metadata fresh for click.formatting: file /Users/alex/Software/click/src/click/formatting.py
LOG: Metadata fresh for click.globals: file /Users/alex/Software/click/src/click/globals.py
LOG: Metadata fresh for click.parser: file /Users/alex/Software/click/src/click/parser.py
LOG: Metadata fresh for click.termui: file /Users/alex/Software/click/src/click/termui.py
LOG: Metadata fresh for click.types: file /Users/alex/Software/click/src/click/types.py
LOG: Metadata fresh for click.utils: file /Users/alex/Software/click/src/click/utils.py
LOG: Metadata fresh for dataclasses: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/dataclasses.pyi
LOG: Metadata fresh for cloup._util: file /Users/alex/Software/cloup/cloup/_util.py
LOG: Metadata fresh for cloup.formatting._formatter: file /Users/alex/Software/cloup/cloup/formatting/_formatter.py
LOG: Metadata fresh for cloup.formatting._util: file /Users/alex/Software/cloup/cloup/formatting/_util.py
LOG: Metadata fresh for warnings: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/warnings.pyi
LOG: Metadata fresh for cloup.typing: file /Users/alex/Software/cloup/cloup/typing.py
LOG: Metadata fresh for textwrap: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/textwrap.pyi
LOG: Metadata fresh for collections: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/collections/__init__.pyi
LOG: Metadata fresh for inspect: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/inspect.pyi
LOG: Metadata fresh for difflib: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/difflib.pyi
LOG: Metadata fresh for re: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/re.pyi
LOG: Metadata fresh for cloup.constraints._conditional: file /Users/alex/Software/cloup/cloup/constraints/_conditional.py
LOG: Metadata fresh for cloup.constraints._core: file /Users/alex/Software/cloup/cloup/constraints/_core.py
LOG: Metadata fresh for cloup.constraints._support: file /Users/alex/Software/cloup/cloup/constraints/_support.py
LOG: Metadata fresh for cloup.constraints.conditions: file /Users/alex/Software/cloup/cloup/constraints/conditions.py
LOG: Metadata fresh for cloup.constraints.exceptions: file /Users/alex/Software/cloup/cloup/constraints/exceptions.py
LOG: Metadata fresh for pathlib: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/pathlib.pyi
LOG: Metadata fresh for importlib.abc: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/importlib/abc.pyi
LOG: Metadata fresh for importlib.machinery: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/importlib/machinery.pyi
LOG: Metadata fresh for array: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/array.pyi
LOG: Metadata fresh for ctypes: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/ctypes/__init__.pyi
LOG: Metadata fresh for mmap: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/mmap.pyi
LOG: Metadata fresh for os: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/os/__init__.pyi
LOG: Metadata fresh for codecs: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/codecs.pyi
LOG: Metadata fresh for abc: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/abc.pyi
LOG: Metadata fresh for enum: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/enum.pyi
LOG: Metadata fresh for errno: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/errno.pyi
LOG: Metadata fresh for contextlib: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/contextlib.pyi
LOG: Metadata fresh for functools: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/functools.pyi
LOG: Metadata fresh for gettext: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/gettext.pyi
LOG: Metadata fresh for itertools: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/itertools.pyi
LOG: Metadata fresh for click.shell_completion: file /Users/alex/Software/click/src/click/shell_completion.py
LOG: Metadata fresh for importlib_metadata: file /opt/homebrew/Cellar/python@3.9/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/importlib_metadata/__init__.py
LOG: Metadata fresh for importlib.metadata: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/importlib/metadata/__init__.pyi
LOG: Metadata fresh for importlib: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/importlib/__init__.pyi
LOG: Metadata fresh for click._compat: file /Users/alex/Software/click/src/click/_compat.py
LOG: Metadata fresh for shutil: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/shutil.pyi
LOG: Metadata fresh for click._textwrap: file /Users/alex/Software/click/src/click/_textwrap.py
LOG: Metadata fresh for threading: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/threading.pyi
LOG: Metadata fresh for shlex: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/shlex.pyi
LOG: Metadata fresh for getpass: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/getpass.pyi
LOG: Metadata fresh for click._termui_impl: file /Users/alex/Software/click/src/click/_termui_impl.py
LOG: Metadata fresh for stat: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/stat.pyi
LOG: Metadata fresh for operator: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/operator.pyi
LOG: Metadata fresh for uuid: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/uuid.pyi
LOG: Metadata fresh for datetime: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/datetime.pyi
LOG: Metadata fresh for glob: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/glob.pyi
LOG: Metadata fresh for cloup.formatting.sep: file /Users/alex/Software/cloup/cloup/formatting/sep.py
LOG: Metadata fresh for _warnings: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_warnings.pyi
LOG: Metadata fresh for sre_compile: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/sre_compile.pyi
LOG: Metadata fresh for sre_constants: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/sre_constants.pyi
LOG: Metadata fresh for cloup.constraints.common: file /Users/alex/Software/cloup/cloup/constraints/common.py
LOG: Metadata fresh for os.path: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/os/path.pyi
LOG: Metadata fresh for subprocess: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/subprocess.pyi
LOG: Metadata fresh for csv: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/csv.pyi
LOG: Metadata fresh for email: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/email/__init__.pyi
LOG: Metadata fresh for posixpath: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/posixpath.pyi
LOG: Metadata fresh for importlib_metadata._adapters: file /opt/homebrew/Cellar/python@3.9/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/importlib_metadata/_adapters.py
LOG: Metadata fresh for importlib_metadata._meta: file /opt/homebrew/Cellar/python@3.9/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/importlib_metadata/_meta.py
LOG: Metadata fresh for importlib_metadata._collections: file /opt/homebrew/Cellar/python@3.9/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/importlib_metadata/_collections.py
LOG: Metadata fresh for importlib_metadata._compat: file /opt/homebrew/Cellar/python@3.9/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/importlib_metadata/_compat.py
LOG: Metadata fresh for importlib_metadata._functools: file /opt/homebrew/Cellar/python@3.9/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/importlib_metadata/_functools.py
LOG: Metadata fresh for importlib_metadata._itertools: file /opt/homebrew/Cellar/python@3.9/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/importlib_metadata/_itertools.py
LOG: Metadata fresh for email.message: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/email/message.pyi
LOG: Metadata fresh for random: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/random.pyi
LOG: Metadata fresh for weakref: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/weakref.pyi
LOG: Metadata fresh for _thread: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_thread.pyi
LOG: Metadata fresh for math: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/math.pyi
LOG: Metadata fresh for time: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/time.pyi
LOG: Metadata fresh for tempfile: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/tempfile.pyi
LOG: Metadata fresh for webbrowser: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/webbrowser.pyi
LOG: Metadata fresh for msvcrt: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/msvcrt.pyi
LOG: Metadata fresh for tty: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/tty.pyi
LOG: Metadata fresh for termios: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/termios.pyi
LOG: Metadata fresh for urllib.parse: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/urllib/parse.pyi
LOG: Metadata fresh for _stat: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_stat.pyi
LOG: Metadata fresh for _operator: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_operator.pyi
LOG: Metadata fresh for sre_parse: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/sre_parse.pyi
LOG: Metadata fresh for _csv: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_csv.pyi
LOG: Metadata fresh for email.policy: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/email/policy.pyi
LOG: Metadata fresh for genericpath: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/genericpath.pyi
LOG: Metadata fresh for importlib_metadata._text: file /opt/homebrew/Cellar/python@3.9/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/importlib_metadata/_text.py
LOG: Metadata fresh for platform: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/platform.pyi
LOG: Metadata fresh for email.charset: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/email/charset.pyi
LOG: Metadata fresh for email.contentmanager: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/email/contentmanager.pyi
LOG: Metadata fresh for email.errors: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/email/errors.pyi
LOG: Metadata fresh for _random: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_random.pyi
LOG: Metadata fresh for fractions: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/fractions.pyi
LOG: Metadata fresh for _weakrefset: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_weakrefset.pyi
LOG: Metadata fresh for _weakref: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/_weakref.pyi
LOG: Metadata fresh for urllib: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/urllib/__init__.pyi
LOG: Metadata fresh for email.header: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/email/header.pyi
LOG: Metadata fresh for decimal: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/decimal.pyi
LOG: Metadata fresh for numbers: file /opt/homebrew/lib/python3.9/site-packages/mypy/typeshed/stdlib/numbers.pyi
LOG: Loaded graph with 127 nodes (0.047 sec)
LOG: Found 68 SCCs; largest has 34 nodes
LOG: Processing 67 queued fresh SCCs
LOG: Processing SCC singleton (foo) as inherently stale
foo.py:3: error: Name "cloup.Context" is not defined
foo.py:3: error: Class cannot subclass "Context" (has type "Any")
LOG: Deleting foo foo.py foo.meta.json foo.data.json
LOG: No fresh SCCs left in queue
LOG: Build finished in 0.157 seconds with 127 modules, and 5 errors
Found 2 errors in 1 file (checked 1 source file) |
I've narrowed down the issue to the |
Thank you so much for reporting this with such so much precision! I guess, I'll have to write those |
@janluke No problem. Appreciate you addressing this. |
Closed by |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Bug description
Mypy fails to type-check code that uses Cloup, when in strict mode.
(Note, this is in contrast with Click, which Mypy has no problem with.)
To Reproduce
Steps to reproduce the behavior:
pip3 install cloup
.foo.py
with the following contents.mypy --strict foo.py
.Expected behavior
Mypy should not give any errors.
Versions
macOS 12.3.1
Python 3.9.12
Cloup 0.14.0
The text was updated successfully, but these errors were encountered: