pytest-mypy-plugins
pytest-mypy-plugins copied to clipboard
mypy_config documentation is confusing
The mypy_config field accepts a string as below.
- case: foo
mypy_config:
python_version = 3.8
So, if we want to provide multi fields, it would be like below, where the value of mypy_config in the YAML format is of type str.
- case: foo
mypy_config: |
python_version = 3.8
ignore_missing_imports = True
However, the document says its type is Optional[Dict[str, Union[str, int, bool, float]]]={} which I think means the following YAML format (dict syntax) is accepted.
- case: foo
mypy_config:
python_version: 3.8
ignore_missing_imports: true
but actually it is not.
My suggestion is either
- to change the documentation to say the type of
mypy_configisstr, or - to change the implementation to accept the YAML dict.
because the files field, which is documented to accept Optional[List[File]]=[] type, can be specified with the YAML list syntax like
- path: myapp/__init__.py
, which is inconsistent and confusing.
The same problem is there on the env field.
Its type is documented as Optional[Dict[str, str]]={}, but the YAML syntax for the field is list as follows:
env:
- MYPYPATH=./pytest_mypy_plugins/tests/fixtures
Let's change it to be str, this is more flexible.
Do you want to work on this? 🙂
Thank you, but no. Please do it on your side 🙏