[mypy]
python_version = 3.10
warn_return_any = True
warn_unused_configs = True
disallow_untyped_defs = True
disallow_incomplete_defs = True
check_untyped_defs = True
disallow_untyped_decorators = False
no_implicit_optional = True
warn_redundant_casts = True
warn_unused_ignores = True
warn_no_return = True
warn_unreachable = True
strict_equality = True

# These are disabled for now but should be enabled in future PRs
strict_optional = True
# disallow_any_unimported = False
disallow_subclassing_any = True
warn_incomplete_stub = True

# Ignore the src-prefixed imports by excluding the src directory
exclude = ^src/
# Make sure mypy still checks your actual package
namespace_packages = True
explicit_package_bases = True

[mypy.plugins.pydantic.*]
init_forbid_extra = True
init_typed = True
warn_required_dynamic_aliases = True
warn_untyped_fields = True

# Ignoring type checking in test files for now
[mypy-tests.*]
disallow_untyped_defs = False
check_untyped_defs = False

[mypy-atlassian.*]
ignore_missing_imports = True

[mypy-markdownify.*]
ignore_missing_imports = True

[mypy-src.mcp_atlassian.*]
disallow_untyped_defs = False
