我知道,当line-length
超过最大阈值时,yamllint
和ansible-lint
会发出警告,对于yamllint
来说,这似乎是默认值80。
我看到一些公共项目只是简单地编辑规则来增加这个限制。
我想知道为什么会有这个限制,Ansible的情况什么时候开始突破?
有人对合理的限制有什么想法吗?
实际上有一个技术限制,由YAML规范强加:
若要限制所需的前瞻性数量,":"指示符必须出现在键开头之外最多1024个Unicode字符。此外,密钥仅限于一行。
这适用于以下形式之一的行:
<key>: value
<key>:
<sub-node>
<key>
的长度不能超过1024个字符,并且不能是多行的。虽然不是直接的行限制(因为没有考虑缩进和以下值(,但这意味着为了安全起见,您应该将行限制在1025个字符(key+:
(,这样就不会出现非法键。
虽然这是"事情什么时候开始破裂"的答案,但请使用一个更短的可读性限制。80是许多人使用的合理默认值,ymmv。