mypy.ini 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268
  1. [mypy]
  2. python_version = 3.8
  3. mypy_path = fixtures/mypy-stubs
  4. files = fixtures/mypy-stubs,
  5. src/sentry/analytics/,
  6. src/sentry/api/bases/external_actor.py,
  7. src/sentry/api/bases/organization.py,
  8. src/sentry/api/bases/organization_events.py,
  9. src/sentry/api/bases/rule.py,
  10. src/sentry/api/endpoints/codeowners/,
  11. src/sentry/api/endpoints/group_events.py,
  12. src/sentry/api/endpoints/group_events_latest.py,
  13. src/sentry/api/endpoints/group_events_oldest.py,
  14. src/sentry/api/endpoints/group_tags.py,
  15. src/sentry/api/endpoints/organization_events_stats.py,
  16. src/sentry/api/endpoints/organization_events_trace.py,
  17. src/sentry/api/endpoints/organization_measurements_meta.py,
  18. src/sentry/api/endpoints/project_stacktrace_link.py,
  19. src/sentry/api/endpoints/project_app_store_connect_credentials.py,
  20. src/sentry/api/endpoints/rpc.py,
  21. src/sentry/api/endpoints/team_issue_breakdown.py,
  22. src/sentry/api/endpoints/team_unresolved_issue_age.py,
  23. src/sentry/api/helpers/environments.py,
  24. src/sentry/api/helpers/events.py,
  25. src/sentry/api/helpers/group_index/,
  26. src/sentry/api/invite_helper.py,
  27. src/sentry/api/issue_search.py,
  28. src/sentry/api/permissions.py,
  29. src/sentry/api/serializers/base.py,
  30. src/sentry/api/serializers/models/external_actor.py,
  31. src/sentry/api/serializers/models/integration.py,
  32. src/sentry/api/serializers/models/notification_setting.py,
  33. src/sentry/api/serializers/models/organization.py,
  34. src/sentry/api/serializers/models/organization_member/,
  35. src/sentry/api/serializers/models/team.py,
  36. src/sentry/api/serializers/models/user.py,
  37. src/sentry/api/serializers/types.py,
  38. src/sentry/api/utils.py,
  39. src/sentry/api/validators/external_actor.py,
  40. src/sentry/api/validators/notifications.py,
  41. src/sentry/apidocs/,
  42. src/sentry/auth/access.py,
  43. src/sentry/auth/email.py,
  44. src/sentry/auth/helper.py,
  45. src/sentry/auth/idpmigration.py,
  46. src/sentry/auth/provider.py,
  47. src/sentry/auth/system.py,
  48. src/sentry/auth/view.py,
  49. src/sentry/constants.py,
  50. src/sentry/db/models/base.py,
  51. src/sentry/db/models/fields/bounded.py,
  52. src/sentry/db/models/fields/foreignkey.py,
  53. src/sentry/db/models/fields/onetoone.py,
  54. src/sentry/db/models/fields/text.py,
  55. src/sentry/db/models/manager/,
  56. src/sentry/db/models/paranoia.py,
  57. src/sentry/db/models/query.py,
  58. src/sentry/db/models/utils.py,
  59. src/sentry/digests/,
  60. src/sentry/dynamic_sampling/,
  61. src/sentry/event_manager.py,
  62. src/sentry/eventstream/base.py,
  63. src/sentry/eventstream/snuba.py,
  64. src/sentry/eventstream/kafka/,
  65. src/sentry/features/,
  66. src/sentry/grouping/result.py,
  67. src/sentry/grouping/strategies/base.py,
  68. src/sentry/grouping/strategies/legacy.py,
  69. src/sentry/grouping/strategies/message.py,
  70. src/sentry/grouping/strategies/newstyle.py,
  71. src/sentry/grouping/strategies/security.py,
  72. src/sentry/grouping/strategies/template.py,
  73. src/sentry/grouping/strategies/utils.py,
  74. src/sentry/incidents/charts.py,
  75. src/sentry/incidents/tasks.py,
  76. src/sentry/incidents/subscription_processor.py,
  77. src/sentry/incidents/utils/types.py,
  78. src/sentry/ingest/billing_metrics_consumer.py,
  79. src/sentry/ingest/transaction_clusterer/,
  80. src/sentry/integrations/base.py,
  81. src/sentry/integrations/github/,
  82. src/sentry/integrations/mixins/commit_context.py,
  83. src/sentry/integrations/slack/,
  84. src/sentry/integrations/message_builder.py,
  85. src/sentry/integrations/utils/atlassian_connect.py,
  86. src/sentry/integrations/utils/cleanup.py,
  87. src/sentry/integrations/utils/code_mapping.py,
  88. src/sentry/integrations/utils/codecov.py,
  89. src/sentry/integrations/vsts/,
  90. src/sentry/issues/,
  91. src/sentry/killswitches.py,
  92. src/sentry/lang/native/appconnect.py,
  93. src/sentry/mail/notifications.py,
  94. src/sentry/models/debugfile.py,
  95. src/sentry/models/groupsubscription.py,
  96. src/sentry/models/options/,
  97. src/sentry/models/rulefirehistory.py,
  98. src/sentry/notifications/,
  99. src/sentry/ownership/grammar.py,
  100. src/sentry/pipeline/,
  101. src/sentry/plugins/base/view.py,
  102. src/sentry/post_process_forwarder/,
  103. src/sentry/processing/realtime_metrics/,
  104. src/sentry/profiles/,
  105. src/sentry/ratelimits/,
  106. src/sentry/relay/config/__init__.py,
  107. src/sentry/relay/config/measurements.py,
  108. src/sentry/relay/config/metric_extraction.py,
  109. src/sentry/release_health/,
  110. src/sentry/replays/consumers/,
  111. src/sentry/replays/usecases/,
  112. src/sentry/replays/endpoints/organization_replay_count.py,
  113. src/sentry/replays/post_process.py,
  114. src/sentry/roles/manager.py,
  115. src/sentry/rules/,
  116. src/sentry/runner/commands/devserver.py,
  117. src/sentry/runner/commands/devservices.py,
  118. src/sentry/runner/initializer.py,
  119. src/sentry/search/base.py,
  120. src/sentry/search/events/builder/,
  121. src/sentry/search/events/constants.py,
  122. src/sentry/search/events/types.py,
  123. src/sentry/search/events/datasets/base.py,
  124. src/sentry/search/events/datasets/discover.py,
  125. src/sentry/search/events/datasets/filter_aliases.py,
  126. src/sentry/search/events/datasets/field_aliases.py,
  127. src/sentry/search/snuba/,
  128. src/sentry/search/utils.py,
  129. src/sentry/sentry_apps/,
  130. src/sentry/sentry_metrics/,
  131. src/sentry/services/http.py,
  132. src/sentry/services/base.py,
  133. src/sentry/services/hybrid_cloud/,
  134. src/sentry/shared_integrations/,
  135. src/sentry/silo/,
  136. src/sentry/snuba/entity_subscription.py,
  137. src/sentry/snuba/events.py,
  138. src/sentry/snuba/outcomes.py,
  139. src/sentry/snuba/query_subscriptions/,
  140. src/sentry/snuba/metrics/fields/histogram.py,
  141. src/sentry/snuba/metrics/fields/base.py,
  142. src/sentry/snuba/metrics/naming_layer/,
  143. src/sentry/snuba/metrics/query.py,
  144. src/sentry/snuba/profiles.py,
  145. src/sentry/spans/,
  146. src/sentry/tasks/app_store_connect.py,
  147. src/sentry/tasks/low_priority_symbolication.py,
  148. src/sentry/tasks/store.py,
  149. src/sentry/tasks/symbolication.py,
  150. src/sentry/tasks/update_user_reports.py,
  151. src/sentry/tasks/derive_code_mappings.py,
  152. src/sentry/tasks/weekly_escalating_forecast.py,
  153. src/sentry/tasks/auto_enable_codecov.py,
  154. src/sentry/testutils/modelmanifest.py,
  155. src/sentry/testutils/silo.py,
  156. src/sentry/types/region.py,
  157. src/sentry/unmerge.py,
  158. src/sentry/utils/appleconnect/,
  159. src/sentry/utils/arroyo.py,
  160. src/sentry/utils/assets.py,
  161. src/sentry/utils/audit.py,
  162. src/sentry/utils/auth.py,
  163. src/sentry/utils/avatar.py,
  164. src/sentry/utils/codecs.py,
  165. src/sentry/utils/committers.py,
  166. src/sentry/utils/cursors.py,
  167. src/sentry/utils/dates.py,
  168. src/sentry/utils/email/,
  169. src/sentry/utils/event_frames.py,
  170. src/sentry/utils/hashlib.py,
  171. src/sentry/utils/http.py,
  172. src/sentry/utils/integrationdocs.py,
  173. src/sentry/utils/json.py,
  174. src/sentry/utils/jwt.py,
  175. src/sentry/utils/kvstore,
  176. src/sentry/utils/metrics.py,
  177. src/sentry/utils/options.py,
  178. src/sentry/utils/outcomes.py,
  179. src/sentry/utils/pagination_factory.py,
  180. src/sentry/utils/patch_set.py,
  181. src/sentry/utils/request_cache.py,
  182. src/sentry/utils/services.py,
  183. src/sentry/utils/suspect_resolutions/commit_correlation.py,
  184. src/sentry/utils/suspect_resolutions/metric_correlation.py,
  185. src/sentry/utils/suspect_resolutions/resolved_in_active_release.py,
  186. src/sentry/utils/time_window.py,
  187. src/sentry/utils/yaml.py,
  188. src/sentry/web/decorators.py,
  189. src/sentry/web/frontend/base.py,
  190. src/sentry/web/helpers.py,
  191. tests/sentry/lang/native/test_appconnect.py,
  192. tests/sentry/post_process_forwarder,
  193. tests/sentry/processing/realtime_metrics/,
  194. tests/sentry/issues/,
  195. tests/sentry/tasks/test_low_priority_symbolication.py,
  196. tests/sentry/utils/appleconnect/,
  197. tools/
  198. show_error_codes = true
  199. ; Enable all options used with --strict
  200. warn_unused_configs=True
  201. disallow_any_generics=True
  202. disallow_subclassing_any=True
  203. disallow_untyped_calls=True
  204. disallow_untyped_defs=True
  205. disallow_incomplete_defs=True
  206. check_untyped_defs=True
  207. disallow_untyped_decorators=True
  208. no_implicit_optional=True
  209. warn_unused_ignores=True
  210. warn_redundant_casts=True
  211. warn_return_any=True
  212. no_implicit_reexport=True
  213. plugins = pydantic.mypy
  214. ; Set this to skip until more of the codebase is typed
  215. [mypy-sentry.*]
  216. follow_imports = skip
  217. [mypy-bitfield.*]
  218. follow_imports = silent
  219. [mypy-sudo.*]
  220. follow_imports = silent
  221. [mypy-celery.*]
  222. ignore_missing_imports = True
  223. [mypy-confluent_kafka.*]
  224. ignore_missing_imports = True
  225. [mypy-django.*]
  226. ignore_missing_imports = True
  227. [mypy-docker.*]
  228. ignore_missing_imports = True
  229. [mypy-google.*]
  230. ignore_missing_imports = True
  231. [mypy-honcho.*]
  232. ignore_missing_imports = True
  233. [mypy-kombu]
  234. ignore_missing_imports = True
  235. [mypy-mistune.*]
  236. ignore_missing_imports = True
  237. [mypy-parsimonious.*]
  238. ignore_missing_imports = True
  239. [mypy-rb.*]
  240. ignore_missing_imports = True
  241. [mypy-rest_framework.*]
  242. ignore_missing_imports = True
  243. [mypy-sentry_relay.*]
  244. ignore_missing_imports = True
  245. [mypy-toronado]
  246. ignore_missing_imports = True
  247. [mypy-unidiff]
  248. ignore_missing_imports = True
  249. [mypy-msgpack]
  250. ignore_missing_imports = True
  251. [mypy-rapidjson]
  252. ignore_missing_imports = True
  253. # TODO: these cause type errors when followed
  254. [mypy-snuba_sdk.*]
  255. follow_imports = skip
  256. # this package marks itself as typed but has no annotations
  257. [mypy-google.cloud.bigtable.*]
  258. follow_imports = skip
  259. # https://github.com/googleapis/python-api-core/pull/453
  260. [mypy-google.api_core.retry]
  261. follow_imports = skip