forked from lutris/lutris
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
98 lines (94 loc) · 2.77 KB
/
Copy pathpyproject.toml
File metadata and controls
98 lines (94 loc) · 2.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
[tool.mypy]
python_version = "3.10"
packages = [
"lutris",
"tests",
]
exclude = [
".*_pb2.py", # Any automatically generated protobuf files
"venv",
"^build/", # setuptools build output
]
disable_error_code = [
"no-redef", # Allow variable redefinition
"has-type", # Ignore when variable types cannot be determined.
"dict-item", # Dictionaries are always fully dynamic
"var-annotated", # Never require type annotations
"assignment", # Allow incompatible types in assignment (used heavily in lutris class structure).
]
allow_redefinition = true
follow_imports = "silent"
ignore_missing_imports = true
[tool.mypy-baseline]
# --baseline-path: the file where the baseline should be stored
baseline_path = ".mypy_baseline"
# --depth: cut path names longer than that many directories deep
depth = 40
# --allow-unsynced: do not fail for unsynced resolved errors
allow_unsynced = true
# --preserve-position: do not remove error position from the baseline
preserve_position = false
# --hide-stats: do not show stats and messages at the end
hide_stats = false
# --no-colors: do not use colors in stats
no_colors = false
# --ignore: regexes for error messages to ignore
ignore = []
[[tool.mypy.overrides]]
module = [
"lutris.api",
"lutris.cache",
"lutris.config",
"lutris.database.*",
"lutris.exception_backstops",
"lutris.exceptions",
"lutris.gui.dialogs",
"lutris.monitored_command",
"lutris.runners",
"lutris.scanners.default_installers",
"lutris.services.mame",
"lutris.settings",
"lutris.sysoptions",
"lutris.util",
"lutris.util.busy",
"lutris.util.datapath",
"lutris.util.discord.base",
"lutris.util.graphics.*",
"lutris.util.http",
"lutris.util.jobs",
"lutris.util.log",
"lutris.util.flatpak",
"lutris.util.retroarch.core_config",
"lutris.util.settings",
"lutris.util.standalone_scripts",
"lutris.util.steam.*",
"lutris.util.shell",
"lutris.util.system",
"lutris.util.timer",
"lutris.util.ubisoft.consts",
"lutris.util.urlhandler",
"lutris.util.wine.d3d_extras",
"lutris.util.wine.dgvoodoo2",
"lutris.util.xdgshortcuts",
"lutris.util.yaml",
"setup",
"utils.bios_format",
"utils.meson_post_install",
]
# Equivalent to strict = true for per-module config
# Use strict = true when https://github.com/python/mypy/issues/11401 is fixed
check_untyped_defs = true
disallow_any_generics = true
disallow_incomplete_defs = true
disallow_subclassing_any = true
disallow_untyped_calls = true
disallow_untyped_decorators = true
disallow_untyped_defs = true
extra_checks = true
no_implicit_reexport = true
strict_equality = true
warn_return_any = true
warn_unused_ignores = true
[tool.pyright]
typeCheckingMode = "basic"
reportMissingImports = false