Skip to content

mypy_config documentation is confusing #94

Open
@whitphx

Description

@whitphx

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_config is str, 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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions