【问题标题】:Rubocop config changesRubocop 配置更改
【发布时间】:2016-11-18 01:30:57
【问题描述】:

查看旧的 Rubocop 配置:

...
Style/AlignParameters:
  Description: Align the parameters of a method call if they span more than one line.
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-double-indent
  Enabled: true
  EnforcedStyle: with_first_parameter
  SupportedStyles:
  - with_first_parameter
  - with_fixed_indentation
...

Rubocop 网站上的default settings 如下所示:

...
Style/AlignParameters:
  Description: >-
                 Align the parameters of a method call if they span more
                 than one line.
  StyleGuide: '#no-double-indent'
  Enabled: true
...

试图找出旧样式是否已过时?,已弃用?还是有效?

我可以see SupportedStyles 有这两个选项可用。在第一个示例中指定它们只是重申默认行为的一种方式,还是选择这两个选项的语句?

换句话说,如果我们要从我的 rubocop.yml 中删除 Style/AlignParameters 部分(或其中的一部分),我应该期待默认行为还是会跳过它?

【问题讨论】:

    标签: ruby rubocop


    【解决方案1】:

    看起来您发布的配置是直接从旧的 RuboCop 默认配置复制而来的。目前,RuboCop 为所有警察使用两个内部配置文件(除了用户定义的rubocop.yml):


    enabled.yml / disabled.yml

    这些文件对每个警察都有一个条目。它们告诉警察是默认启用还是禁用,并且它们还包含一个描述和指向样式指南中相关条目的链接(如果有的话)。

    default.yml

    此文件包含所有具有某些配置选项的警察的条目。它列出了可能的配置 (SupportedStyles) 和默认配置 (EnforcedStyle)。


    试图找出旧样式是否已过时?,已弃用?还是有效? 我可以看到 SupportedStyles 有这两个选项可用。在第一个示例中指定它们只是重申默认行为的一种方式,还是选择这两个选项的语句?

    这些根本不应该在您的rubocop.yml 文件中指定,因为它们由 RuboCop 内部使用。 (发生的情况是选项被覆盖,但因为它们与默认值相同,所以没有任何中断。

    原因很可能是有人从 RuboCop 内部配置文件中复制了所有内容。 rubocop.yml 的唯一相关配置选项是:

    • Enabled
    • EnforcedStyle

    换句话说,如果我们要从我的 rubocop.yml 中删除 Style/AlignParameters 部分(或其中的一部分),我应该期待默认行为还是会跳过它?

    如果您删除它,它仍将使用默认配置启用。

    【讨论】:

    • 太好了,谢谢!还有两个问题:所有警察及其设置的详尽清单在哪里?当这些更新时,保持通知的最佳方式是什么?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多