如果你有disallow_untyped_defs = true,是否有任何理由启用其他“禁止”选项?

问题描述 投票:0回答:1

我一直在向现有项目添加类型提示,并且随着时间的推移,我在 mypy 中启用了更多“禁止”选项,以确保未来的工作不会使输入退化。最后,我已经到了可以设置

disallow_untyped_defs = true
的地步,但我仍然有其他选项
disallow_incomplete_defs = true
disallow_untyped_calls = true
disallow_untyped_decorators = true
设置为我在此时使用它们。

保留这些是否可以提供任何额外的检查,或者我可以安全地删除它们而不丢失任何东西吗?我知道

disallow_incomplete_defs
disallow_untyped_defs
的超集,但我找不到有关其他内容的任何明确信息。

mypy
1个回答
0
投票

除了明显的区别(

disallow_incomplete/untyped_defs
在函数定义站点显示错误,而其他在使用站点显示错误)之外,
disallow_untyped_calls
disallow_untyped_decorators
会警告您是否正在使用从任何地方导入的此类无类型项目,包括第三方库。

mypy 不会(默认情况下)检查第三方无类型项目的类型覆盖范围或健全性,因此

disallow_incomplete/untyped_defs
不会为它们激活。

© www.soinside.com 2019 - 2024. All rights reserved.