Open benburk opened 3 years ago
A four-year old related discussion about setup.cfg
is available at https://github.com/python/mypy/issues/3377#issuecomment-302308046
Hello.
As far as I understand the meaning of pyproject.toml it's supposed to be a global project configuration.
Why should one set the config file manually or have meaningless symlinks everywhere when working in subdirectories?
Another good approach would be to set a stop for a project directory like it's done in black
I saw the comment at https://github.com/python/mypy/issues/3377#issuecomment-302308046.
It's a good point of view. I suggest mypy should stop search the configs when find .git
directory or others VCS cache.
Will that help? @gvanrossum
Edit: I reviewed this comment, and I found I misunderstood you. You think the config will affect the subdirectories, that's true, but we actually want that affect subdirs. You don't need worried about different act about check parents or not (probably you can add a flag on the pyproject.toml
to enable parent search if you really worried about it). If people want specific check, they should always write a config in that dir, or always add flags to their check command.
I can't guarantee I will have time to review the PR, but if it is straightforward, there is high chance that either me or someone else will review it.
Ok, here's the first shot #16965
It's exactly how it's done in the pylint, but with os.path
instead of pathlibPath
It's already three months since the PR is created =(
And, coincidentally, it's my birthday today. It would be a good present to review the code ^_^
Bug Report
First of all, thank you for supporting the highly requested
pyproject.toml
config format https://github.com/python/mypy/issues/5205I'm hoping we can resolve an issue to bring mypy inline with several others including but not limited to isort, black, and pylint. I think mypy should search parent directories for
pyproject.toml
config file. I think mypy should search up until the user's home directory (or ~25 directories, whichever comes first) for config files.To Reproduce
Prepare a project such as this
From inside the
inner
directory, runmypy main.py
Expected Behavior
I expect mypy to use the settings defined in the
pyproject.toml
file found in the parent directoryouter
. I'm guessing mypy only checks the directory it is invoked from.Actual Behavior
The settings inside
pyproject.toml
are not used.Your Environment
mypy.ini
(and other config files): None