# IMPORTANT
# Set "ignore_missing_imports" per package below, rather than globally.
# That will help identify missing type stubs that should be added to the sanity test environment.

[mypy]
# There are ~20 errors reported in ansible-core when strict optional checking is enabled.
# Until the number of occurrences are reduced, it's better to disable strict checking.
strict_optional = False
# There are ~70 errors reported in ansible-core when checking attributes.
# Until the number of occurrences are reduced, it's better to disable the check.
# The safe-super rule is disabled because it reports false positives on methods which return None.
disable_error_code = attr-defined,safe-super

# Some controller unit tests use ansible_collections imports, both real and test-specific.
# The real imports are not currently visible to mypy.
# There's little point in exposing the test-specific imports.
[mypy-ansible_collections.*]
ignore_missing_imports = True

# Some unit tests for ansible-test use ansible_test imports, which are not currently visible to mypy.
[mypy-ansible_test.*]
ignore_missing_imports = True

[mypy-ansible.module_utils.six.moves.*]
ignore_missing_imports = True

[mypy-passlib.*]
ignore_missing_imports = True

[mypy-pexpect.*]
ignore_missing_imports = True

[mypy-pypsrp.*]
ignore_missing_imports = True

[mypy-winrm.*]
ignore_missing_imports = True

[mypy-kerberos.*]
ignore_missing_imports = True

[mypy-xmltodict.*]
ignore_missing_imports = True

[mypy-md5.*]
ignore_missing_imports = True

[mypy-imp.*]
ignore_missing_imports = True

[mypy-scp.*]
ignore_missing_imports = True

[mypy-ncclient.*]
ignore_missing_imports = True

[mypy-lxml.*]
ignore_missing_imports = True

[mypy-rpmUtils.*]
ignore_missing_imports = True

[mypy-rpm.*]
ignore_missing_imports = True

[mypy-psutil.*]
ignore_missing_imports = True

[mypy-dnf.*]
ignore_missing_imports = True

[mypy-apt.*]
ignore_missing_imports = True

[mypy-apt_pkg.*]
ignore_missing_imports = True

[mypy-gssapi.*]
ignore_missing_imports = True

[mypy-_ssl.*]
ignore_missing_imports = True

[mypy-urllib_gssapi.*]
ignore_missing_imports = True

[mypy-systemd.*]
ignore_missing_imports = True

[mypy-sha.*]
ignore_missing_imports = True

[mypy-distro.*]
ignore_missing_imports = True

[mypy-resolvelib.*]
ignore_missing_imports = True

[mypy-urlparse.*]
ignore_missing_imports = True

[mypy-argcomplete.*]
ignore_missing_imports = True

[mypy-selinux.*]
ignore_missing_imports = True

[mypy-urllib2.*]
ignore_missing_imports = True

[mypy-httplib.*]
ignore_missing_imports = True

[mypy-compiler.*]
ignore_missing_imports = True

[mypy-aptsources.*]
ignore_missing_imports = True

[mypy-urllib3.*]
ignore_missing_imports = True

[mypy-requests.*]
ignore_missing_imports = True

[mypy-jinja2.nativetypes]
ignore_missing_imports = True
