cookstyle 7.32.8 → 8.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +25 -29
- data/LICENSE +201 -201
- data/bin/cookstyle +31 -31
- data/bin/cookstyle-profile +31 -31
- data/config/chefstyle.yml +892 -741
- data/config/cookstyle.yml +3273 -3131
- data/config/default.yml +2 -2
- data/cookstyle.gemspec +34 -30
- data/lib/cookstyle/chefstyle.rb +5 -5
- data/lib/cookstyle/version.rb +5 -5
- data/lib/cookstyle.rb +48 -45
- data/lib/rubocop/chef/autocorrect_helpers.rb +33 -33
- data/lib/rubocop/chef/cookbook_helpers.rb +127 -127
- data/lib/rubocop/chef/cookbook_only.rb +76 -76
- data/lib/rubocop/chef/platform_helpers.rb +72 -72
- data/lib/rubocop/chef.rb +11 -11
- data/lib/rubocop/cop/chef/correctness/block_guard_clause_string_only.rb +61 -61
- data/lib/rubocop/cop/chef/correctness/chef_application_fatal.rb +56 -56
- data/lib/rubocop/cop/chef/correctness/conditional_ruby_shellout.rb +69 -69
- data/lib/rubocop/cop/chef/correctness/dnf_package_allow_downgrades.rb +55 -55
- data/lib/rubocop/cop/chef/correctness/incorrect_library_injection.rb +77 -77
- data/lib/rubocop/cop/chef/correctness/invalid_cookbook_name.rb +47 -47
- data/lib/rubocop/cop/chef/correctness/invalid_default_action.rb +48 -48
- data/lib/rubocop/cop/chef/correctness/invalid_notification_resource.rb +59 -59
- data/lib/rubocop/cop/chef/correctness/invalid_notification_timing.rb +55 -55
- data/lib/rubocop/cop/chef/correctness/invalid_platform_family_helper.rb +72 -72
- data/lib/rubocop/cop/chef/correctness/invalid_platform_family_values_in_case.rb +70 -70
- data/lib/rubocop/cop/chef/correctness/invalid_platform_helper.rb +57 -57
- data/lib/rubocop/cop/chef/correctness/invalid_platform_metadata.rb +89 -89
- data/lib/rubocop/cop/chef/correctness/invalid_platform_values_in_case.rb +70 -70
- data/lib/rubocop/cop/chef/correctness/invalid_value_for_platform_family_helper.rb +70 -70
- data/lib/rubocop/cop/chef/correctness/invalid_value_for_platform_helper.rb +69 -69
- data/lib/rubocop/cop/chef/correctness/invalid_version_metadata.rb +48 -48
- data/lib/rubocop/cop/chef/correctness/lazy_eval_node_attribute_defaults.rb +53 -53
- data/lib/rubocop/cop/chef/correctness/lazy_in_resource_guard.rb +67 -67
- data/lib/rubocop/cop/chef/correctness/macos_userdefaults_invalid_type.rb +67 -67
- data/lib/rubocop/cop/chef/correctness/malformed_value_for_platform.rb +67 -67
- data/lib/rubocop/cop/chef/correctness/metadata_malformed_version.rb +58 -58
- data/lib/rubocop/cop/chef/correctness/metadata_missing_name.rb +54 -54
- data/lib/rubocop/cop/chef/correctness/metadata_missing_version.rb +51 -51
- data/lib/rubocop/cop/chef/correctness/node_normal.rb +53 -53
- data/lib/rubocop/cop/chef/correctness/node_normal_unless.rb +53 -53
- data/lib/rubocop/cop/chef/correctness/node_save.rb +46 -46
- data/lib/rubocop/cop/chef/correctness/notifies_action_not_symbol.rb +64 -64
- data/lib/rubocop/cop/chef/correctness/octal_mode_as_string.rb +48 -48
- data/lib/rubocop/cop/chef/correctness/openssl_password_helpers.rb +46 -46
- data/lib/rubocop/cop/chef/correctness/powershell_delete_file.rb +54 -54
- data/lib/rubocop/cop/chef/correctness/powershell_file_exists.rb +50 -50
- data/lib/rubocop/cop/chef/correctness/property_without_type.rb +59 -59
- data/lib/rubocop/cop/chef/correctness/resource_sets_internal_properties.rb +51 -51
- data/lib/rubocop/cop/chef/correctness/resource_sets_name_property.rb +50 -50
- data/lib/rubocop/cop/chef/correctness/resource_with_none_action.rb +56 -56
- data/lib/rubocop/cop/chef/correctness/scoped_file_exist.rb +52 -52
- data/lib/rubocop/cop/chef/correctness/service_resource.rb +56 -56
- data/lib/rubocop/cop/chef/correctness/supports_must_be_float.rb +52 -52
- data/lib/rubocop/cop/chef/correctness/tmp_path.rb +59 -59
- data/lib/rubocop/cop/chef/deprecation/cb_depends_on_self.rb +57 -57
- data/lib/rubocop/cop/chef/deprecation/chef_handler_recipe.rb +52 -52
- data/lib/rubocop/cop/chef/deprecation/chef_handler_supports.rb +55 -55
- data/lib/rubocop/cop/chef/deprecation/chef_rest.rb +57 -57
- data/lib/rubocop/cop/chef/deprecation/chef_rewind.rb +98 -98
- data/lib/rubocop/cop/chef/deprecation/chef_shellout.rb +83 -83
- data/lib/rubocop/cop/chef/deprecation/chef_sugar_helpers.rb +55 -55
- data/lib/rubocop/cop/chef/deprecation/chef_windows_platform_helper.rb +55 -55
- data/lib/rubocop/cop/chef/deprecation/chefdk_generators.rb +56 -56
- data/lib/rubocop/cop/chef/deprecation/cheffile.rb +39 -39
- data/lib/rubocop/cop/chef/deprecation/chefspec_coverage_report.rb +49 -49
- data/lib/rubocop/cop/chef/deprecation/chefspec_legacy_runner.rb +61 -61
- data/lib/rubocop/cop/chef/deprecation/chocolatey_package_uninstall_action.rb +56 -56
- data/lib/rubocop/cop/chef/deprecation/delivery.rb +48 -48
- data/lib/rubocop/cop/chef/deprecation/depends_chef_nginx_cookbook.rb +54 -54
- data/lib/rubocop/cop/chef/deprecation/depends_chef_reporting_cookbook.rb +51 -51
- data/lib/rubocop/cop/chef/deprecation/depends_compat_resource.rb +54 -54
- data/lib/rubocop/cop/chef/deprecation/depends_omnibus_updater_cookbook.rb +54 -54
- data/lib/rubocop/cop/chef/deprecation/depends_partial_search.rb +50 -50
- data/lib/rubocop/cop/chef/deprecation/depends_poise.rb +48 -48
- data/lib/rubocop/cop/chef/deprecation/deprecated_chefspec_platform.rb +129 -129
- data/lib/rubocop/cop/chef/deprecation/deprecated_mixins.rb +78 -78
- data/lib/rubocop/cop/chef/deprecation/deprecated_platform_methods.rb +61 -61
- data/lib/rubocop/cop/chef/deprecation/deprecated_shellout_methods.rb +64 -64
- data/lib/rubocop/cop/chef/deprecation/deprecated_sudo_actions.rb +65 -65
- data/lib/rubocop/cop/chef/deprecation/deprecated_windows_version_check.rb +42 -42
- data/lib/rubocop/cop/chef/deprecation/deprecated_yum_repository_actions.rb +67 -67
- data/lib/rubocop/cop/chef/deprecation/deprecated_yum_repository_properties.rb +69 -69
- data/lib/rubocop/cop/chef/deprecation/easy_install.rb +42 -42
- data/lib/rubocop/cop/chef/deprecation/eol_audit_mode.rb +49 -49
- data/lib/rubocop/cop/chef/deprecation/epic_fail.rb +51 -51
- data/lib/rubocop/cop/chef/deprecation/erl_call.rb +42 -42
- data/lib/rubocop/cop/chef/deprecation/execute_path_property.rb +50 -50
- data/lib/rubocop/cop/chef/deprecation/execute_relative_creates_without_cwd.rb +66 -66
- data/lib/rubocop/cop/chef/deprecation/foodcritic_file.rb +41 -41
- data/lib/rubocop/cop/chef/deprecation/foodcritic_testing.rb +43 -43
- data/lib/rubocop/cop/chef/deprecation/hwrp_without_provides.rb +140 -140
- data/lib/rubocop/cop/chef/deprecation/hwrp_without_unified_mode_true.rb +86 -86
- data/lib/rubocop/cop/chef/deprecation/inherits_compat_resource.rb +59 -59
- data/lib/rubocop/cop/chef/deprecation/launchd_deprecated_hash_property.rb +56 -56
- data/lib/rubocop/cop/chef/deprecation/legacy_notify_syntax.rb +91 -91
- data/lib/rubocop/cop/chef/deprecation/legacy_yum_cookbook_recipes.rb +53 -53
- data/lib/rubocop/cop/chef/deprecation/librarian_chefspec.rb +42 -42
- data/lib/rubocop/cop/chef/deprecation/locale_lc_all_property.rb +46 -46
- data/lib/rubocop/cop/chef/deprecation/log_resource_notifications.rb +63 -63
- data/lib/rubocop/cop/chef/deprecation/macos_userdefaults_global_property.rb +60 -60
- data/lib/rubocop/cop/chef/deprecation/name_property_and_default.rb +60 -60
- data/lib/rubocop/cop/chef/deprecation/node_deep_fetch.rb +65 -65
- data/lib/rubocop/cop/chef/deprecation/node_methods_not_attributes.rb +80 -80
- data/lib/rubocop/cop/chef/deprecation/node_set.rb +54 -54
- data/lib/rubocop/cop/chef/deprecation/node_set_unless.rb +54 -54
- data/lib/rubocop/cop/chef/deprecation/node_set_without_level.rb +70 -70
- data/lib/rubocop/cop/chef/deprecation/partial_search_class_usage.rb +67 -67
- data/lib/rubocop/cop/chef/deprecation/partial_search_helper_usage.rb +61 -61
- data/lib/rubocop/cop/chef/deprecation/poise_archive.rb +63 -63
- data/lib/rubocop/cop/chef/deprecation/policyfile_community_source.rb +53 -53
- data/lib/rubocop/cop/chef/deprecation/powershell_cookbook_helpers.rb +59 -59
- data/lib/rubocop/cop/chef/deprecation/require_recipe.rb +53 -53
- data/lib/rubocop/cop/chef/deprecation/resource_overrides_provides_method.rb +48 -48
- data/lib/rubocop/cop/chef/deprecation/resource_uses_dsl_name_method.rb +46 -46
- data/lib/rubocop/cop/chef/deprecation/resource_uses_only_resource_name.rb +84 -84
- data/lib/rubocop/cop/chef/deprecation/resource_uses_provider_base_method.rb +40 -40
- data/lib/rubocop/cop/chef/deprecation/resource_uses_updated_method.rb +50 -50
- data/lib/rubocop/cop/chef/deprecation/resource_without_unified_mode_true.rb +87 -87
- data/lib/rubocop/cop/chef/deprecation/ruby_27_keyword_argument_warnings.rb +56 -56
- data/lib/rubocop/cop/chef/deprecation/ruby_block_create_action.rb +62 -62
- data/lib/rubocop/cop/chef/deprecation/run_command_helper.rb +63 -63
- data/lib/rubocop/cop/chef/deprecation/search_uses_positional_parameters.rb +136 -136
- data/lib/rubocop/cop/chef/deprecation/use_automatic_resource_name.rb +52 -52
- data/lib/rubocop/cop/chef/deprecation/use_inline_resources.rb +57 -57
- data/lib/rubocop/cop/chef/deprecation/use_yaml_dump.rb +47 -47
- data/lib/rubocop/cop/chef/deprecation/user_supports_property.rb +71 -71
- data/lib/rubocop/cop/chef/deprecation/verify_property_file_expansion.rb +57 -57
- data/lib/rubocop/cop/chef/deprecation/windows_feature_servermanagercmd.rb +58 -58
- data/lib/rubocop/cop/chef/deprecation/windows_package_installer_type_string.rb +60 -60
- data/lib/rubocop/cop/chef/deprecation/windows_task_change_action.rb +83 -83
- data/lib/rubocop/cop/chef/deprecation/windows_version_helpers.rb +71 -71
- data/lib/rubocop/cop/chef/deprecation/xml_ruby_recipe.rb +51 -51
- data/lib/rubocop/cop/chef/deprecation/yum_dnf_compat_recipe.rb +53 -53
- data/lib/rubocop/cop/chef/effortless/berksfile.rb +39 -39
- data/lib/rubocop/cop/chef/effortless/chef_vault_used.rb +87 -87
- data/lib/rubocop/cop/chef/effortless/data_bags.rb +40 -40
- data/lib/rubocop/cop/chef/effortless/depends_chef_vault.rb +47 -47
- data/lib/rubocop/cop/chef/effortless/node_environment.rb +45 -45
- data/lib/rubocop/cop/chef/effortless/node_policygroup.rb +44 -44
- data/lib/rubocop/cop/chef/effortless/node_roles.rb +45 -45
- data/lib/rubocop/cop/chef/effortless/search_for_environments_or_roles.rb +43 -43
- data/lib/rubocop/cop/chef/effortless/search_used.rb +40 -40
- data/lib/rubocop/cop/chef/modernize/action_method_in_resource.rb +57 -57
- data/lib/rubocop/cop/chef/modernize/allowed_actions_initializer.rb +77 -77
- data/lib/rubocop/cop/chef/modernize/apt_default_recipe.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/berksfile_source.rb +70 -70
- data/lib/rubocop/cop/chef/modernize/build_essential.rb +55 -55
- data/lib/rubocop/cop/chef/modernize/chef_14_resources.rb +60 -60
- data/lib/rubocop/cop/chef/modernize/chef_15_resources.rb +57 -57
- data/lib/rubocop/cop/chef/modernize/chef_gem_nokogiri.rb +63 -63
- data/lib/rubocop/cop/chef/modernize/class_eval_action_class.rb +63 -63
- data/lib/rubocop/cop/chef/modernize/compile_time_resources.rb +53 -53
- data/lib/rubocop/cop/chef/modernize/conditional_using_test.rb +55 -55
- data/lib/rubocop/cop/chef/modernize/cron_d_file_or_template.rb +121 -121
- data/lib/rubocop/cop/chef/modernize/cron_manage_resource.rb +50 -50
- data/lib/rubocop/cop/chef/modernize/databag_helpers.rb +59 -59
- data/lib/rubocop/cop/chef/modernize/declare_action_class.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/default_action_initializer.rb +74 -74
- data/lib/rubocop/cop/chef/modernize/defines_chefspec_matchers.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/definitions.rb +36 -36
- data/lib/rubocop/cop/chef/modernize/depends_chef_vault_cookbook.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/depends_chocolatey_cookbooks.rb +55 -55
- data/lib/rubocop/cop/chef/modernize/depends_kernel_module_cookbook.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/depends_locale_cookbook.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/depends_openssl_cookbook.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/depends_timezone_lwrp_cookbook.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/depends_windows_firewall_cookbook.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/depends_zypper_cookbook.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/dsl_include_in_resource.rb +55 -55
- data/lib/rubocop/cop/chef/modernize/empty_resource_initialize.rb +52 -52
- data/lib/rubocop/cop/chef/modernize/execute_apt_update.rb +81 -81
- data/lib/rubocop/cop/chef/modernize/execute_sc_exe.rb +67 -67
- data/lib/rubocop/cop/chef/modernize/execute_sleep.rb +76 -76
- data/lib/rubocop/cop/chef/modernize/execute_sysctl.rb +70 -70
- data/lib/rubocop/cop/chef/modernize/execute_tzutil.rb +83 -83
- data/lib/rubocop/cop/chef/modernize/foodcritic_comments.rb +46 -46
- data/lib/rubocop/cop/chef/modernize/if_provides_default_action.rb +48 -48
- data/lib/rubocop/cop/chef/modernize/includes_mixin_shellout.rb +83 -83
- data/lib/rubocop/cop/chef/modernize/libarchive_file.rb +70 -70
- data/lib/rubocop/cop/chef/modernize/macos_user_defaults.rb +58 -58
- data/lib/rubocop/cop/chef/modernize/minitest_handler_usage.rb +51 -51
- data/lib/rubocop/cop/chef/modernize/node_init_package.rb +89 -89
- data/lib/rubocop/cop/chef/modernize/node_roles_include.rb +57 -57
- data/lib/rubocop/cop/chef/modernize/ohai_default_recipe.rb +47 -47
- data/lib/rubocop/cop/chef/modernize/openssl_rsa_key_resource.rb +54 -54
- data/lib/rubocop/cop/chef/modernize/openssl_x509_resource.rb +60 -60
- data/lib/rubocop/cop/chef/modernize/osx_config_profile_resource.rb +51 -51
- data/lib/rubocop/cop/chef/modernize/powershell_expand_archive.rb +50 -50
- data/lib/rubocop/cop/chef/modernize/powershell_guard_interpreter.rb +68 -68
- data/lib/rubocop/cop/chef/modernize/powershell_install_package.rb +53 -53
- data/lib/rubocop/cop/chef/modernize/powershell_install_windowsfeature.rb +56 -56
- data/lib/rubocop/cop/chef/modernize/property_with_name_attribute.rb +56 -56
- data/lib/rubocop/cop/chef/modernize/provides_initializer.rb +68 -68
- data/lib/rubocop/cop/chef/modernize/resource_name_initializer.rb +63 -63
- data/lib/rubocop/cop/chef/modernize/resource_set_or_return.rb +49 -49
- data/lib/rubocop/cop/chef/modernize/resource_with_attributes.rb +66 -66
- data/lib/rubocop/cop/chef/modernize/respond_to_compile_time.rb +94 -94
- data/lib/rubocop/cop/chef/modernize/respond_to_metadata.rb +77 -77
- data/lib/rubocop/cop/chef/modernize/respond_to_provides.rb +63 -63
- data/lib/rubocop/cop/chef/modernize/respond_to_resource_name.rb +52 -52
- data/lib/rubocop/cop/chef/modernize/sc_windows_resource.rb +53 -53
- data/lib/rubocop/cop/chef/modernize/seven_zip_archive.rb +46 -46
- data/lib/rubocop/cop/chef/modernize/shell_out_helper.rb +60 -60
- data/lib/rubocop/cop/chef/modernize/shellouts_to_chocolatey.rb +58 -58
- data/lib/rubocop/cop/chef/modernize/simplify_apt_ppa_setup.rb +63 -63
- data/lib/rubocop/cop/chef/modernize/sysctl_param_resource.rb +55 -55
- data/lib/rubocop/cop/chef/modernize/unnecessary_mixlib_shellout_require.rb +51 -51
- data/lib/rubocop/cop/chef/modernize/use_chef_language_cloud_helpers.rb +93 -93
- data/lib/rubocop/cop/chef/modernize/use_chef_language_env_helpers.rb +69 -69
- data/lib/rubocop/cop/chef/modernize/use_chef_language_systemd_helper.rb +60 -60
- data/lib/rubocop/cop/chef/modernize/use_multipackage_installs.rb +113 -113
- data/lib/rubocop/cop/chef/modernize/use_require_relative.rb +60 -60
- data/lib/rubocop/cop/chef/modernize/whyrun_supported_true.rb +58 -58
- data/lib/rubocop/cop/chef/modernize/windows_default_recipe.rb +52 -52
- data/lib/rubocop/cop/chef/modernize/windows_registry_uac.rb +92 -92
- data/lib/rubocop/cop/chef/modernize/windows_zipfile.rb +46 -46
- data/lib/rubocop/cop/chef/modernize/zipfile_resource.rb +59 -59
- data/lib/rubocop/cop/chef/modernize/zypper_repo.rb +60 -60
- data/lib/rubocop/cop/chef/redundant/apt_repository_distribution_default.rb +65 -65
- data/lib/rubocop/cop/chef/redundant/apt_repository_notifies_apt_update.rb +60 -60
- data/lib/rubocop/cop/chef/redundant/attribute_metadata.rb +52 -52
- data/lib/rubocop/cop/chef/redundant/conflicts_metadata.rb +46 -46
- data/lib/rubocop/cop/chef/redundant/custom_resource_with_allowed_actions.rb +60 -60
- data/lib/rubocop/cop/chef/redundant/double_compile_time.rb +68 -68
- data/lib/rubocop/cop/chef/redundant/grouping_metadata.rb +46 -46
- data/lib/rubocop/cop/chef/redundant/long_description_metadata.rb +46 -46
- data/lib/rubocop/cop/chef/redundant/multiple_platform_checks.rb +58 -58
- data/lib/rubocop/cop/chef/redundant/name_property_and_required.rb +81 -81
- data/lib/rubocop/cop/chef/redundant/ohai_attribute_to_string.rb +65 -65
- data/lib/rubocop/cop/chef/redundant/property_splat_regex.rb +59 -59
- data/lib/rubocop/cop/chef/redundant/property_with_default_and_required.rb +61 -61
- data/lib/rubocop/cop/chef/redundant/provides_metadata.rb +46 -46
- data/lib/rubocop/cop/chef/redundant/recipe_metadata.rb +47 -47
- data/lib/rubocop/cop/chef/redundant/replaces_metadata.rb +46 -46
- data/lib/rubocop/cop/chef/redundant/resource_with_nothing_action.rb +52 -52
- data/lib/rubocop/cop/chef/redundant/sensitive_property_in_resource.rb +50 -50
- data/lib/rubocop/cop/chef/redundant/string_property_with_nil_default.rb +64 -64
- data/lib/rubocop/cop/chef/redundant/suggests_metadata.rb +46 -46
- data/lib/rubocop/cop/chef/redundant/unnecessary_desired_state.rb +60 -60
- data/lib/rubocop/cop/chef/redundant/unnecessary_name_property.rb +67 -67
- data/lib/rubocop/cop/chef/redundant/use_create_if_missing.rb +116 -116
- data/lib/rubocop/cop/chef/security/ssh_private_key.rb +49 -49
- data/lib/rubocop/cop/chef/sharing/default_maintainer_metadata.rb +50 -50
- data/lib/rubocop/cop/chef/sharing/empty_metadata_field.rb +47 -47
- data/lib/rubocop/cop/chef/sharing/include_property_descriptions.rb +55 -55
- data/lib/rubocop/cop/chef/sharing/include_resource_descriptions.rb +52 -52
- data/lib/rubocop/cop/chef/sharing/include_resource_examples.rb +60 -60
- data/lib/rubocop/cop/chef/sharing/insecure_cookbook_url.rb +62 -62
- data/lib/rubocop/cop/chef/sharing/invalid_license_string.rb +542 -542
- data/lib/rubocop/cop/chef/style/attribute_keys.rb +94 -95
- data/lib/rubocop/cop/chef/style/chef_whaaat.rb +49 -49
- data/lib/rubocop/cop/chef/style/comment_sentence_spacing.rb +42 -42
- data/lib/rubocop/cop/chef/style/comments_copyright_format.rb +101 -101
- data/lib/rubocop/cop/chef/style/comments_default_copyright.rb +50 -50
- data/lib/rubocop/cop/chef/style/comments_format.rb +71 -71
- data/lib/rubocop/cop/chef/style/file_mode.rb +86 -86
- data/lib/rubocop/cop/chef/style/immediate_notification_timing.rb +59 -59
- data/lib/rubocop/cop/chef/style/include_recipe_with_parentheses.rb +58 -58
- data/lib/rubocop/cop/chef/style/negating_only_if.rb +69 -69
- data/lib/rubocop/cop/chef/style/overly_complex_supports_depends_metadata.rb +70 -70
- data/lib/rubocop/cop/chef/style/simplify_platform_major_version_check.rb +89 -89
- data/lib/rubocop/cop/chef/style/true_false_resource_properties.rb +53 -53
- data/lib/rubocop/cop/chef/style/unnecessary_os_check.rb +103 -103
- data/lib/rubocop/cop/chef/style/unnecessary_platform_case_statement.rb +100 -100
- data/lib/rubocop/cop/chef/style/use_platform_helpers.rb +86 -86
- data/lib/rubocop/cop/chefstyle/ruby/gemspec_license.rb +55 -55
- data/lib/rubocop/cop/chefstyle/ruby/gemspec_require_rubygems.rb +46 -46
- data/lib/rubocop/cop/chefstyle/ruby/legacy_powershell_out_methods.rb +36 -36
- data/lib/rubocop/cop/chefstyle/ruby/require_net_https.rb +54 -54
- data/lib/rubocop/cop/chefstyle/ruby/unless_defined_require.rb +122 -122
- data/lib/rubocop/cop/inspec/deprecation/attribute_default.rb +53 -53
- data/lib/rubocop/cop/inspec/deprecation/attribute_helper.rb +47 -47
- data/lib/rubocop/cop/target_chef_version.rb +22 -22
- data/lib/rubocop/monkey_patches/allow_invalid_ruby.rb +28 -28
- data/lib/rubocop/monkey_patches/base.rb +11 -11
- data/lib/rubocop/monkey_patches/config.rb +15 -15
- data/lib/rubocop/monkey_patches/directive_comment.rb +12 -12
- data/lib/rubocop/monkey_patches/registry_cop.rb +15 -15
- data/lib/rubocop/monkey_patches/team.rb +25 -24
- metadata +33 -9
data/config/chefstyle.yml
CHANGED
@@ -1,741 +1,892 @@
|
|
1
|
-
# This is an internal RuboCop configuration for Chef Ruby projects (chef-client, ohai,
|
2
|
-
# mixlib-shellout, mixlib-config, etc).
|
3
|
-
#
|
4
|
-
# It is not meant for consumption by cookbooks or for any general purpose uses.
|
5
|
-
# **Chef Users and Customers Should Generally Not Use This Configuration and
|
6
|
-
# Should Use cookstyle.yml**. It is not intended for any audience outside of
|
7
|
-
# Chef Core Ruby development.
|
8
|
-
|
9
|
-
AllCops:
|
10
|
-
TargetRubyVersion:
|
11
|
-
NewCops: disable
|
12
|
-
DisabledByDefault: true
|
13
|
-
SuggestExtensions: false
|
14
|
-
|
15
|
-
#
|
16
|
-
# Bundler
|
17
|
-
#
|
18
|
-
|
19
|
-
Bundler/DuplicatedGem:
|
20
|
-
Enabled: false
|
21
|
-
|
22
|
-
Bundler/InsecureProtocolSource:
|
23
|
-
Enabled: true
|
24
|
-
AllowHttpProtocol: false
|
25
|
-
|
26
|
-
#
|
27
|
-
# Lint
|
28
|
-
#
|
29
|
-
|
30
|
-
Lint/AmbiguousOperator:
|
31
|
-
Enabled: true
|
32
|
-
Lint/AmbiguousBlockAssociation:
|
33
|
-
Enabled: true
|
34
|
-
Lint/AmbiguousRegexpLiteral:
|
35
|
-
Enabled: true
|
36
|
-
Lint/AssignmentInCondition:
|
37
|
-
Enabled: true
|
38
|
-
Layout/BlockAlignment:
|
39
|
-
EnforcedStyleAlignWith: start_of_block
|
40
|
-
Enabled: true
|
41
|
-
Lint/CircularArgumentReference:
|
42
|
-
Enabled: true
|
43
|
-
Layout/ConditionPosition:
|
44
|
-
Enabled: true
|
45
|
-
Lint/Debugger:
|
46
|
-
Enabled: true
|
47
|
-
Layout/DefEndAlignment:
|
48
|
-
Enabled: true
|
49
|
-
AutoCorrect: true
|
50
|
-
Lint/DeprecatedClassMethods:
|
51
|
-
Enabled: true
|
52
|
-
Lint/DuplicateCaseCondition:
|
53
|
-
Enabled: true
|
54
|
-
Lint/DuplicateMethods:
|
55
|
-
Enabled: true
|
56
|
-
|
57
|
-
|
58
|
-
Lint/EachWithObjectArgument:
|
59
|
-
Enabled: true
|
60
|
-
Lint/ElseLayout:
|
61
|
-
Enabled: true
|
62
|
-
Lint/EmptyEnsure:
|
63
|
-
Enabled: true
|
64
|
-
Lint/EmptyExpression:
|
65
|
-
Enabled: true
|
66
|
-
Lint/EmptyInterpolation:
|
67
|
-
Enabled: true
|
68
|
-
Lint/EmptyWhen:
|
69
|
-
Enabled: true
|
70
|
-
Layout/EndAlignment:
|
71
|
-
Enabled: true
|
72
|
-
AutoCorrect: true
|
73
|
-
|
74
|
-
|
75
|
-
Lint/
|
76
|
-
Enabled: true
|
77
|
-
Lint/
|
78
|
-
Enabled: true
|
79
|
-
Lint/
|
80
|
-
Enabled: true
|
81
|
-
Lint/
|
82
|
-
Enabled: true
|
83
|
-
Lint/
|
84
|
-
Enabled: true
|
85
|
-
Lint/
|
86
|
-
Enabled: true
|
87
|
-
Lint/
|
88
|
-
Enabled: true
|
89
|
-
Lint/
|
90
|
-
Enabled: true
|
91
|
-
Lint/
|
92
|
-
Enabled: true
|
93
|
-
|
94
|
-
|
95
|
-
Lint/
|
96
|
-
Enabled: true
|
97
|
-
Lint/
|
98
|
-
Enabled: true
|
99
|
-
Lint/
|
100
|
-
Enabled: true
|
101
|
-
Lint/
|
102
|
-
Enabled: true
|
103
|
-
Lint/
|
104
|
-
Enabled: true
|
105
|
-
Lint/
|
106
|
-
Enabled: true
|
107
|
-
Lint/
|
108
|
-
Enabled: true
|
109
|
-
Lint/
|
110
|
-
Enabled: true
|
111
|
-
Lint/
|
112
|
-
Enabled: true
|
113
|
-
Lint/
|
114
|
-
Enabled: true
|
115
|
-
Lint/
|
116
|
-
Enabled: true
|
117
|
-
|
118
|
-
|
119
|
-
Lint/
|
120
|
-
Enabled: true
|
121
|
-
Lint/
|
122
|
-
Enabled: true
|
123
|
-
|
124
|
-
|
125
|
-
Lint/
|
126
|
-
Enabled: true
|
127
|
-
Lint/
|
128
|
-
Enabled: true
|
129
|
-
Lint/
|
130
|
-
Enabled: true
|
131
|
-
Lint/
|
132
|
-
Enabled: true
|
133
|
-
|
134
|
-
|
135
|
-
Lint/
|
136
|
-
Enabled: true
|
137
|
-
|
138
|
-
Enabled: true
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
#
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
Lint/
|
152
|
-
Enabled: false
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
#
|
158
|
-
Lint/
|
159
|
-
Enabled: false
|
160
|
-
|
161
|
-
#
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
#
|
173
|
-
#
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
Metrics/
|
179
|
-
Enabled: false
|
180
|
-
Metrics/
|
181
|
-
Enabled: false
|
182
|
-
Metrics/
|
183
|
-
Enabled: false
|
184
|
-
|
185
|
-
Enabled: false
|
186
|
-
Metrics/
|
187
|
-
Enabled: false
|
188
|
-
|
189
|
-
Enabled: false
|
190
|
-
Metrics/
|
191
|
-
Enabled: false
|
192
|
-
Metrics/
|
193
|
-
Enabled: false
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
Layout/
|
205
|
-
Enabled: true
|
206
|
-
|
207
|
-
#
|
208
|
-
#
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
Layout/
|
258
|
-
Enabled: true
|
259
|
-
Layout/
|
260
|
-
Enabled: true
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
Style/
|
273
|
-
Enabled: true
|
274
|
-
Layout/
|
275
|
-
Enabled: true
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
Enabled: true
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
Layout/
|
325
|
-
Enabled: true
|
326
|
-
Layout/
|
327
|
-
Enabled: true
|
328
|
-
EnforcedStyle: indented
|
329
|
-
|
330
|
-
Enabled: true
|
331
|
-
|
332
|
-
Enabled: true
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
Style/
|
349
|
-
Enabled: true
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
Enabled: true
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
'%':
|
373
|
-
'%
|
374
|
-
'%
|
375
|
-
'%
|
376
|
-
'%
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
Enabled:
|
398
|
-
Style/
|
399
|
-
Enabled: true
|
400
|
-
|
401
|
-
|
402
|
-
Enabled:
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
|
436
|
-
|
437
|
-
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
Enabled: true
|
452
|
-
Style/
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
Enabled: true
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
|
482
|
-
#
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
#
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
#
|
510
|
-
Style/
|
511
|
-
Enabled: false
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
#
|
553
|
-
|
554
|
-
Enabled: false
|
555
|
-
|
556
|
-
#
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
#
|
574
|
-
Style/
|
575
|
-
Enabled: false
|
576
|
-
|
577
|
-
#
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
#
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
#
|
631
|
-
Style/
|
632
|
-
Enabled: false
|
633
|
-
|
634
|
-
#
|
635
|
-
#
|
636
|
-
Style/
|
637
|
-
Enabled: false
|
638
|
-
|
639
|
-
#
|
640
|
-
|
641
|
-
|
642
|
-
|
643
|
-
|
644
|
-
|
645
|
-
|
646
|
-
|
647
|
-
|
648
|
-
|
649
|
-
|
650
|
-
|
651
|
-
|
652
|
-
|
653
|
-
|
654
|
-
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
673
|
-
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
|
686
|
-
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
|
692
|
-
|
693
|
-
|
694
|
-
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
#
|
701
|
-
|
702
|
-
|
703
|
-
|
704
|
-
|
705
|
-
|
706
|
-
|
707
|
-
|
708
|
-
|
709
|
-
|
710
|
-
|
711
|
-
Enabled: true
|
712
|
-
|
713
|
-
|
714
|
-
|
715
|
-
|
716
|
-
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
|
721
|
-
|
722
|
-
|
723
|
-
|
724
|
-
|
725
|
-
Enabled: true
|
726
|
-
|
727
|
-
|
728
|
-
|
729
|
-
|
730
|
-
|
731
|
-
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
|
741
|
-
|
1
|
+
# This is an internal RuboCop configuration for Chef Ruby projects (chef-client, ohai,
|
2
|
+
# mixlib-shellout, mixlib-config, etc).
|
3
|
+
#
|
4
|
+
# It is not meant for consumption by cookbooks or for any general purpose uses.
|
5
|
+
# **Chef Users and Customers Should Generally Not Use This Configuration and
|
6
|
+
# Should Use cookstyle.yml**. It is not intended for any audience outside of
|
7
|
+
# Chef Core Ruby development.
|
8
|
+
|
9
|
+
AllCops:
|
10
|
+
TargetRubyVersion: 3.0
|
11
|
+
NewCops: disable
|
12
|
+
DisabledByDefault: true
|
13
|
+
SuggestExtensions: false
|
14
|
+
|
15
|
+
#
|
16
|
+
# Bundler
|
17
|
+
#
|
18
|
+
|
19
|
+
Bundler/DuplicatedGem:
|
20
|
+
Enabled: false
|
21
|
+
|
22
|
+
Bundler/InsecureProtocolSource:
|
23
|
+
Enabled: true
|
24
|
+
AllowHttpProtocol: false
|
25
|
+
|
26
|
+
#
|
27
|
+
# Lint
|
28
|
+
#
|
29
|
+
|
30
|
+
Lint/AmbiguousOperator:
|
31
|
+
Enabled: true
|
32
|
+
Lint/AmbiguousBlockAssociation:
|
33
|
+
Enabled: true
|
34
|
+
Lint/AmbiguousRegexpLiteral:
|
35
|
+
Enabled: true
|
36
|
+
Lint/AssignmentInCondition:
|
37
|
+
Enabled: true
|
38
|
+
Layout/BlockAlignment:
|
39
|
+
EnforcedStyleAlignWith: start_of_block
|
40
|
+
Enabled: true
|
41
|
+
Lint/CircularArgumentReference:
|
42
|
+
Enabled: true
|
43
|
+
Layout/ConditionPosition:
|
44
|
+
Enabled: true
|
45
|
+
Lint/Debugger:
|
46
|
+
Enabled: true
|
47
|
+
Layout/DefEndAlignment:
|
48
|
+
Enabled: true
|
49
|
+
AutoCorrect: true
|
50
|
+
Lint/DeprecatedClassMethods:
|
51
|
+
Enabled: true
|
52
|
+
Lint/DuplicateCaseCondition:
|
53
|
+
Enabled: true
|
54
|
+
Lint/DuplicateMethods:
|
55
|
+
Enabled: true
|
56
|
+
Lint/DuplicateHashKey:
|
57
|
+
Enabled: true
|
58
|
+
Lint/EachWithObjectArgument:
|
59
|
+
Enabled: true
|
60
|
+
Lint/ElseLayout:
|
61
|
+
Enabled: true
|
62
|
+
Lint/EmptyEnsure:
|
63
|
+
Enabled: true
|
64
|
+
Lint/EmptyExpression:
|
65
|
+
Enabled: true
|
66
|
+
Lint/EmptyInterpolation:
|
67
|
+
Enabled: true
|
68
|
+
Lint/EmptyWhen:
|
69
|
+
Enabled: true
|
70
|
+
Layout/EndAlignment:
|
71
|
+
Enabled: true
|
72
|
+
AutoCorrect: true
|
73
|
+
Lint/EnsureReturn:
|
74
|
+
Enabled: true
|
75
|
+
Lint/FloatOutOfRange:
|
76
|
+
Enabled: true
|
77
|
+
Lint/FormatParameterMismatch:
|
78
|
+
Enabled: true
|
79
|
+
Lint/ImplicitStringConcatenation:
|
80
|
+
Enabled: true
|
81
|
+
Lint/InheritException:
|
82
|
+
Enabled: true
|
83
|
+
Lint/IneffectiveAccessModifier:
|
84
|
+
Enabled: true
|
85
|
+
Lint/LiteralAsCondition:
|
86
|
+
Enabled: true
|
87
|
+
Lint/LiteralInInterpolation:
|
88
|
+
Enabled: true
|
89
|
+
Lint/Loop:
|
90
|
+
Enabled: true
|
91
|
+
Lint/MultipleComparison:
|
92
|
+
Enabled: true
|
93
|
+
Lint/NestedMethodDefinition:
|
94
|
+
Enabled: true
|
95
|
+
Lint/NextWithoutAccumulator:
|
96
|
+
Enabled: true
|
97
|
+
Lint/NonLocalExitFromIterator:
|
98
|
+
Enabled: true
|
99
|
+
Lint/ParenthesesAsGroupedExpression:
|
100
|
+
Enabled: true
|
101
|
+
Lint/PercentStringArray:
|
102
|
+
Enabled: true
|
103
|
+
Lint/PercentSymbolArray:
|
104
|
+
Enabled: true
|
105
|
+
Lint/RandOne:
|
106
|
+
Enabled: true
|
107
|
+
Lint/RequireParentheses:
|
108
|
+
Enabled: true
|
109
|
+
Lint/SafeNavigationChain:
|
110
|
+
Enabled: true
|
111
|
+
Lint/ShadowedException:
|
112
|
+
Enabled: true
|
113
|
+
Lint/ShadowingOuterLocalVariable:
|
114
|
+
Enabled: true
|
115
|
+
Lint/UnderscorePrefixedVariableName:
|
116
|
+
Enabled: true
|
117
|
+
Lint/UnifiedInteger:
|
118
|
+
Enabled: true
|
119
|
+
Lint/RedundantSplatExpansion:
|
120
|
+
Enabled: true
|
121
|
+
Lint/UnreachableCode:
|
122
|
+
Enabled: true
|
123
|
+
Lint/UriEscapeUnescape:
|
124
|
+
Enabled: true
|
125
|
+
Lint/UselessAccessModifier:
|
126
|
+
Enabled: true
|
127
|
+
Lint/UselessAssignment:
|
128
|
+
Enabled: true
|
129
|
+
Lint/BinaryOperatorWithIdenticalOperands:
|
130
|
+
Enabled: true
|
131
|
+
Lint/UselessElseWithoutRescue:
|
132
|
+
Enabled: true
|
133
|
+
Lint/UselessSetterCall:
|
134
|
+
Enabled: true
|
135
|
+
Lint/Void:
|
136
|
+
Enabled: true
|
137
|
+
Layout/CommentIndentation:
|
138
|
+
Enabled: true
|
139
|
+
|
140
|
+
#
|
141
|
+
# Disabled Lint
|
142
|
+
#
|
143
|
+
|
144
|
+
# These are disabled per https://github.com/chef/chef/pull/3038
|
145
|
+
Lint/UnusedBlockArgument:
|
146
|
+
Enabled: false
|
147
|
+
Lint/UnusedMethodArgument:
|
148
|
+
Enabled: false
|
149
|
+
|
150
|
+
# We ignore Exceptions a lot
|
151
|
+
Lint/SuppressedException:
|
152
|
+
Enabled: false
|
153
|
+
# We also decorate Exceptions a lot
|
154
|
+
Lint/RescueException:
|
155
|
+
Enabled: false
|
156
|
+
|
157
|
+
# disabling this will make it easier to stage chefstyle rollouts
|
158
|
+
Lint/RedundantCopDisableDirective:
|
159
|
+
Enabled: false
|
160
|
+
|
161
|
+
#
|
162
|
+
# Security
|
163
|
+
#
|
164
|
+
|
165
|
+
Security/Eval:
|
166
|
+
Enabled: true
|
167
|
+
|
168
|
+
#
|
169
|
+
# Metrics
|
170
|
+
#
|
171
|
+
|
172
|
+
# Metrics cops are all disabled, there would be too much refactoring
|
173
|
+
# work to do and we have much higher priorities.
|
174
|
+
Metrics/AbcSize:
|
175
|
+
Enabled: false
|
176
|
+
Metrics/BlockNesting:
|
177
|
+
Enabled: false
|
178
|
+
Metrics/BlockLength:
|
179
|
+
Enabled: false
|
180
|
+
Metrics/ClassLength:
|
181
|
+
Enabled: false
|
182
|
+
Metrics/CyclomaticComplexity:
|
183
|
+
Enabled: false
|
184
|
+
Layout/LineLength:
|
185
|
+
Enabled: false
|
186
|
+
Metrics/MethodLength:
|
187
|
+
Enabled: false
|
188
|
+
Metrics/ModuleLength:
|
189
|
+
Enabled: false
|
190
|
+
Metrics/ParameterLists:
|
191
|
+
Enabled: false
|
192
|
+
Metrics/PerceivedComplexity:
|
193
|
+
Enabled: false
|
194
|
+
|
195
|
+
#
|
196
|
+
# Style/Naming/Layout
|
197
|
+
#
|
198
|
+
|
199
|
+
Layout/AccessModifierIndentation:
|
200
|
+
Enabled: true
|
201
|
+
Layout/ArgumentAlignment:
|
202
|
+
Enabled: true
|
203
|
+
EnforcedStyle: with_fixed_indentation
|
204
|
+
Layout/ParameterAlignment:
|
205
|
+
Enabled: true
|
206
|
+
EnforcedStyle: with_fixed_indentation
|
207
|
+
# the "ignore_implict" is here for keyword args in method calls which are
|
208
|
+
# "implicit" hashes, and those should not be treated like normal hashes
|
209
|
+
Layout/HashAlignment:
|
210
|
+
Enabled: true
|
211
|
+
EnforcedLastArgumentHashStyle: ignore_implicit
|
212
|
+
Style/AndOr:
|
213
|
+
Enabled: true
|
214
|
+
Style/ArrayJoin:
|
215
|
+
Enabled: true
|
216
|
+
Naming/AsciiIdentifiers:
|
217
|
+
Enabled: true
|
218
|
+
Style/Attr:
|
219
|
+
Enabled: true
|
220
|
+
Style/BeginBlock:
|
221
|
+
Enabled: true
|
222
|
+
# there's debate over one-liner vs semantic blockstyle, chef projects should just pick one style
|
223
|
+
# and stick with it.
|
224
|
+
Style/BlockDelimiters:
|
225
|
+
Enabled: false
|
226
|
+
Layout/BlockEndNewline:
|
227
|
+
Enabled: true
|
228
|
+
Style/CharacterLiteral:
|
229
|
+
Enabled: true
|
230
|
+
Style/ClassCheck:
|
231
|
+
Enabled: true
|
232
|
+
Style/ClassMethods:
|
233
|
+
Enabled: true
|
234
|
+
Layout/ClosingHeredocIndentation:
|
235
|
+
Enabled: true
|
236
|
+
Layout/ClosingParenthesisIndentation:
|
237
|
+
Enabled: true
|
238
|
+
Style/ColonMethodCall:
|
239
|
+
Enabled: true
|
240
|
+
Style/CommandLiteral:
|
241
|
+
Enabled: true
|
242
|
+
Naming/ConstantName:
|
243
|
+
Enabled: true
|
244
|
+
Style/DefWithParentheses:
|
245
|
+
Enabled: true
|
246
|
+
Layout/DotPosition:
|
247
|
+
Enabled: True
|
248
|
+
Style/EachForSimpleLoop:
|
249
|
+
Enabled: true
|
250
|
+
Layout/ElseAlignment:
|
251
|
+
Enabled: true
|
252
|
+
Layout/EmptyLineAfterGuardClause:
|
253
|
+
Enabled: true
|
254
|
+
Layout/EmptyLineBetweenDefs:
|
255
|
+
Enabled: true
|
256
|
+
AllowAdjacentOneLineDefs: true
|
257
|
+
Layout/EmptyLines:
|
258
|
+
Enabled: true
|
259
|
+
Layout/EmptyLinesAroundAccessModifier:
|
260
|
+
Enabled: true
|
261
|
+
Layout/EmptyLinesAroundMethodBody:
|
262
|
+
Enabled: true
|
263
|
+
Style/EmptyLiteral:
|
264
|
+
Enabled: true
|
265
|
+
Style/EmptyMethod:
|
266
|
+
Enabled: true
|
267
|
+
Style/EndBlock:
|
268
|
+
Enabled: true
|
269
|
+
Layout/EndOfLine:
|
270
|
+
Enabled: true
|
271
|
+
EnforcedStyle: lf
|
272
|
+
Style/EvenOdd:
|
273
|
+
Enabled: true
|
274
|
+
Layout/ExtraSpacing:
|
275
|
+
Enabled: true
|
276
|
+
Lint/FlipFlop:
|
277
|
+
Enabled: true
|
278
|
+
Style/For:
|
279
|
+
Enabled: true
|
280
|
+
Style/HashSyntax:
|
281
|
+
Enabled: true
|
282
|
+
Naming/HeredocDelimiterCase:
|
283
|
+
Enabled: true
|
284
|
+
Style/IfUnlessModifierOfIfUnless:
|
285
|
+
Enabled: true
|
286
|
+
Style/IfWithSemicolon:
|
287
|
+
Enabled: true
|
288
|
+
Layout/AssignmentIndentation:
|
289
|
+
Enabled: true
|
290
|
+
Layout/FirstArgumentIndentation:
|
291
|
+
EnforcedStyle: consistent
|
292
|
+
Enabled: true
|
293
|
+
Layout/HeredocIndentation:
|
294
|
+
Enabled: true
|
295
|
+
Layout/IndentationConsistency:
|
296
|
+
Enabled: true
|
297
|
+
Layout/IndentationWidth:
|
298
|
+
Enabled: true
|
299
|
+
Style/InfiniteLoop:
|
300
|
+
Enabled: true
|
301
|
+
Layout/InitialIndentation:
|
302
|
+
Enabled: true
|
303
|
+
Style/LambdaCall:
|
304
|
+
Enabled: true
|
305
|
+
Layout/LeadingCommentSpace:
|
306
|
+
Enabled: true
|
307
|
+
Style/MethodDefParentheses:
|
308
|
+
Enabled: true
|
309
|
+
Style/MethodCallWithoutArgsParentheses:
|
310
|
+
Enabled: true
|
311
|
+
Layout/MultilineBlockLayout:
|
312
|
+
Enabled: true
|
313
|
+
Style/MultilineIfModifier:
|
314
|
+
Enabled: true
|
315
|
+
Style/MultilineIfThen:
|
316
|
+
Enabled: true
|
317
|
+
Style/MultilineMemoization:
|
318
|
+
Enabled: true
|
319
|
+
Layout/MultilineMethodCallBraceLayout:
|
320
|
+
Enabled: true
|
321
|
+
Layout/MultilineMethodCallIndentation:
|
322
|
+
Enabled: true
|
323
|
+
EnforcedStyle: indented
|
324
|
+
Layout/MultilineMethodDefinitionBraceLayout:
|
325
|
+
Enabled: true
|
326
|
+
Layout/MultilineOperationIndentation:
|
327
|
+
Enabled: true
|
328
|
+
EnforcedStyle: indented
|
329
|
+
Style/MultilineTernaryOperator:
|
330
|
+
Enabled: true
|
331
|
+
Style/MutableConstant:
|
332
|
+
Enabled: true
|
333
|
+
Style/NegatedIf:
|
334
|
+
Enabled: true
|
335
|
+
Style/NegatedWhile:
|
336
|
+
Enabled: true
|
337
|
+
Style/NegatedUnless:
|
338
|
+
Enabled: true
|
339
|
+
Style/NestedModifier:
|
340
|
+
Enabled: true
|
341
|
+
Style/NestedTernaryOperator:
|
342
|
+
Enabled: true
|
343
|
+
Style/NilComparison:
|
344
|
+
Enabled: true
|
345
|
+
Style/NonNilCheck:
|
346
|
+
Enabled: true
|
347
|
+
# `foo.zero?` is slower and substantially more annoying to read than `foo == 0`
|
348
|
+
Style/NumericPredicate:
|
349
|
+
Enabled: true
|
350
|
+
EnforcedStyle: comparison
|
351
|
+
Style/OneLineConditional:
|
352
|
+
Enabled: true
|
353
|
+
Naming/BinaryOperatorParameterName:
|
354
|
+
Enabled: true
|
355
|
+
Style/OptionalArguments:
|
356
|
+
Enabled: true
|
357
|
+
Style/ParenthesesAroundCondition:
|
358
|
+
Enabled: true
|
359
|
+
# - The chef source code predominantly uses {} for %,%i,%q,%Q,%r,%w,%W
|
360
|
+
# - The old 1.9 pickaxe book predominantly uses {} for %,%q,%Q,%r,%w,%W,%x
|
361
|
+
# - The chef source code does not use %x enough to determine a preference
|
362
|
+
# - The old 1.9 pickaxe book does not use %i
|
363
|
+
# - %s is not used in chef code or the pickaxe book, and is %s{} for consistency
|
364
|
+
Style/PercentLiteralDelimiters:
|
365
|
+
Enabled: true
|
366
|
+
PreferredDelimiters:
|
367
|
+
'%': '{}'
|
368
|
+
'%i': '{}'
|
369
|
+
'%I': '{}'
|
370
|
+
'%q': '{}'
|
371
|
+
'%Q': '{}'
|
372
|
+
'%r': '{}'
|
373
|
+
'%s': '{}'
|
374
|
+
'%w': '{}'
|
375
|
+
'%W': '{}'
|
376
|
+
'%x': '{}'
|
377
|
+
Style/PercentQLiterals:
|
378
|
+
Enabled: true
|
379
|
+
Style/PreferredHashMethods:
|
380
|
+
Enabled: true
|
381
|
+
Style/RedundantBegin:
|
382
|
+
Enabled: true
|
383
|
+
Style/RedundantException:
|
384
|
+
Enabled: true
|
385
|
+
Style/RedundantFreeze:
|
386
|
+
Enabled: true
|
387
|
+
Style/RedundantReturn:
|
388
|
+
Enabled: true
|
389
|
+
Style/RedundantSelf:
|
390
|
+
Enabled: true
|
391
|
+
Layout/RescueEnsureAlignment:
|
392
|
+
Enabled: true
|
393
|
+
Style/RegexpLiteral:
|
394
|
+
Enabled: true
|
395
|
+
# temporarily disabled, but we should do this
|
396
|
+
Style/SafeNavigation:
|
397
|
+
Enabled: false
|
398
|
+
Style/SelfAssignment:
|
399
|
+
Enabled: true
|
400
|
+
Style/Semicolon:
|
401
|
+
AllowAsExpressionSeparator: true
|
402
|
+
Enabled: true
|
403
|
+
# we only 'raise' and do not 'fail'
|
404
|
+
Style/SignalException:
|
405
|
+
EnforcedStyle: only_raise
|
406
|
+
Enabled: true
|
407
|
+
Layout/SpaceAfterColon:
|
408
|
+
Enabled: true
|
409
|
+
Layout/SpaceAfterComma:
|
410
|
+
Enabled: true
|
411
|
+
Layout/SpaceAfterMethodName:
|
412
|
+
Enabled: true
|
413
|
+
Layout/SpaceAfterSemicolon:
|
414
|
+
Enabled: true
|
415
|
+
Layout/SpaceAroundBlockParameters:
|
416
|
+
Enabled: true
|
417
|
+
Layout/SpaceAroundEqualsInParameterDefault:
|
418
|
+
Enabled: true
|
419
|
+
Layout/SpaceAroundOperators:
|
420
|
+
Enabled: true
|
421
|
+
Layout/SpaceBeforeBlockBraces:
|
422
|
+
Enabled: true
|
423
|
+
Layout/SpaceBeforeComment:
|
424
|
+
Enabled: true
|
425
|
+
Layout/SpaceBeforeSemicolon:
|
426
|
+
Enabled: true
|
427
|
+
Layout/SpaceAroundKeyword:
|
428
|
+
Enabled: true
|
429
|
+
Layout/SpaceInLambdaLiteral:
|
430
|
+
Enabled: true
|
431
|
+
Layout/SpaceInsideArrayPercentLiteral:
|
432
|
+
Enabled: true
|
433
|
+
Layout/SpaceInsideBlockBraces:
|
434
|
+
Enabled: true
|
435
|
+
Layout/SpaceInsideHashLiteralBraces:
|
436
|
+
Enabled: true
|
437
|
+
Layout/SpaceInsideRangeLiteral:
|
438
|
+
Enabled: true
|
439
|
+
Layout/SpaceInsideStringInterpolation:
|
440
|
+
Enabled: true
|
441
|
+
Style/StabbyLambdaParentheses:
|
442
|
+
Enabled: true
|
443
|
+
# core chef community prefers double quotes over single quotes
|
444
|
+
Style/StringLiterals:
|
445
|
+
EnforcedStyle: double_quotes
|
446
|
+
Enabled: true
|
447
|
+
Style/StringLiteralsInInterpolation:
|
448
|
+
EnforcedStyle: double_quotes
|
449
|
+
Enabled: true
|
450
|
+
Style/StructInheritance:
|
451
|
+
Enabled: true
|
452
|
+
Style/SymbolLiteral:
|
453
|
+
Enabled: true
|
454
|
+
Style/StringMethods:
|
455
|
+
Enabled: true
|
456
|
+
Style/SymbolArray:
|
457
|
+
Enabled: true
|
458
|
+
Style/SymbolProc:
|
459
|
+
Enabled: true
|
460
|
+
Layout/IndentationStyle:
|
461
|
+
Enabled: true
|
462
|
+
Layout/TrailingEmptyLines:
|
463
|
+
Enabled: true
|
464
|
+
Style/TrailingCommaInArguments:
|
465
|
+
Enabled: true
|
466
|
+
# rubocop's default gets this completely backwards
|
467
|
+
Style/TrailingCommaInArrayLiteral:
|
468
|
+
Enabled: true
|
469
|
+
EnforcedStyleForMultiline: comma
|
470
|
+
Style/TrailingCommaInHashLiteral:
|
471
|
+
Enabled: true
|
472
|
+
EnforcedStyleForMultiline: comma
|
473
|
+
Style/TrailingUnderscoreVariable:
|
474
|
+
Enabled: true
|
475
|
+
Layout/TrailingWhitespace:
|
476
|
+
Enabled: true
|
477
|
+
Style/RedundantCapitalW:
|
478
|
+
Enabled: true
|
479
|
+
Style/RedundantInterpolation:
|
480
|
+
Enabled: false # buggy: https://github.com/rubocop-hq/rubocop/issues/6099
|
481
|
+
#Style/RedundantPercentQ: # would like to enable this one but its buggy as of 0.35.1
|
482
|
+
# Enabled: true
|
483
|
+
Naming/VariableName:
|
484
|
+
Enabled: true
|
485
|
+
Style/VariableInterpolation:
|
486
|
+
Enabled: true
|
487
|
+
Style/WhenThen:
|
488
|
+
Enabled: true
|
489
|
+
Style/WhileUntilDo:
|
490
|
+
Enabled: true
|
491
|
+
Style/WhileUntilModifier:
|
492
|
+
Enabled: true
|
493
|
+
Style/WordArray:
|
494
|
+
Enabled: true
|
495
|
+
|
496
|
+
# we are ruby > 2.0 only so we can remove encoding comments for utf-8
|
497
|
+
Style/Encoding:
|
498
|
+
Enabled: true
|
499
|
+
|
500
|
+
#
|
501
|
+
# Disabled Style
|
502
|
+
#
|
503
|
+
|
504
|
+
# reduces memory usage, but isn't a simple autocorrect so we need to do this one project at a time
|
505
|
+
Style/FrozenStringLiteralComment:
|
506
|
+
Enabled: false
|
507
|
+
|
508
|
+
# As of this commit we have 686 modules and classes without docs.
|
509
|
+
# This is a cop that we /should/ have enabled, but tactically we can't really enable.
|
510
|
+
Style/Documentation:
|
511
|
+
Enabled: false
|
512
|
+
Style/DocumentationMethod:
|
513
|
+
Enabled: false
|
514
|
+
|
515
|
+
# this makes whitespace formatting of DSL code impossible
|
516
|
+
Layout/SpaceBeforeFirstArg:
|
517
|
+
Enabled: false
|
518
|
+
|
519
|
+
# whitespace in expressions is useful to enhance readability
|
520
|
+
Layout/SpaceInsideArrayLiteralBrackets:
|
521
|
+
Enabled: false
|
522
|
+
Layout/SpaceInsideReferenceBrackets:
|
523
|
+
Enabled: false
|
524
|
+
Layout/SpaceInsideParens:
|
525
|
+
Enabled: false
|
526
|
+
Layout/SpaceInsidePercentLiteralDelimiters:
|
527
|
+
Enabled: false
|
528
|
+
|
529
|
+
# more whitespace cops that we allow since they can enhance readability
|
530
|
+
Layout/EmptyLinesAroundBlockBody:
|
531
|
+
Enabled: false
|
532
|
+
Layout/EmptyLinesAroundClassBody:
|
533
|
+
Enabled: false
|
534
|
+
Layout/EmptyLinesAroundModuleBody:
|
535
|
+
Enabled: false
|
536
|
+
|
537
|
+
# double negation is perfectly idiomatic ruby
|
538
|
+
Style/DoubleNegation:
|
539
|
+
Enabled: false
|
540
|
+
# format strings are also perfectly idiomatic ruby
|
541
|
+
Style/FormatString:
|
542
|
+
Enabled: false
|
543
|
+
# single line if/unless blocks may read more naturally than modifiers
|
544
|
+
Style/IfUnlessModifier:
|
545
|
+
Enabled: false
|
546
|
+
|
547
|
+
# Dan is -1 on this one: https://github.com/chef/chef/pull/4526#issuecomment-179950045
|
548
|
+
Layout/FirstHashElementIndentation:
|
549
|
+
Enabled: false
|
550
|
+
|
551
|
+
# This is overly aggressive and autofix broke stuff, would need to exclude classes
|
552
|
+
# - https://github.com/chef/chef/pull/4541
|
553
|
+
Style/TrivialAccessors:
|
554
|
+
Enabled: false
|
555
|
+
|
556
|
+
# Not a lot of offenses and this seems to catch code that looks otherwise fine to my eye
|
557
|
+
Style/MultilineBlockChain:
|
558
|
+
Enabled: false
|
559
|
+
|
560
|
+
# We see nothing at all wrong with a trailing `rescue nil`
|
561
|
+
Style/RescueModifier:
|
562
|
+
Enabled: false
|
563
|
+
|
564
|
+
# Resulted in a bit of a bikeshed over names with unicode chars vs silently hidden unicode chars in comments
|
565
|
+
Style/AsciiComments:
|
566
|
+
Enabled: false
|
567
|
+
|
568
|
+
# Parens around ternaries often make them more readable and reduces cognitive load over operator precedence
|
569
|
+
Style/TernaryParentheses:
|
570
|
+
Enabled: false
|
571
|
+
|
572
|
+
# Underscores in numbers are super ugly for port numbers, freebsd versions, etc.
|
573
|
+
# If we could mandate that this gets turned on only for numbers >= 1e9 which require three _'s then maybe.
|
574
|
+
Style/NumericLiterals:
|
575
|
+
Enabled: false
|
576
|
+
|
577
|
+
# I tend to find this more readable than long elsif chains
|
578
|
+
Style/EmptyCaseCondition:
|
579
|
+
Enabled: false
|
580
|
+
|
581
|
+
# This didn't quite do what we need
|
582
|
+
Layout/MultilineArrayBraceLayout:
|
583
|
+
Enabled: false
|
584
|
+
|
585
|
+
# This rule isn't smart enough to figure out accessors vs. things that set stuff on the system (e.g. set_member method in group providers)
|
586
|
+
Naming/AccessorMethodName:
|
587
|
+
Enabled: false
|
588
|
+
|
589
|
+
# Perl backrefs are just fine and the alternative is a lot of typing.
|
590
|
+
Style/PerlBackrefs:
|
591
|
+
Enabled: false
|
592
|
+
|
593
|
+
# This has an annoying auto-fix which fails to `require "english"` and then fails silently
|
594
|
+
Style/SpecialGlobalVars:
|
595
|
+
Enabled: false
|
596
|
+
|
597
|
+
# This cop is horrible and I hate the code it produces (even though I tend to like GuardClauses in lots of cases)
|
598
|
+
Style/GuardClause:
|
599
|
+
Enabled: false
|
600
|
+
|
601
|
+
Style/RedundantSortBy:
|
602
|
+
Enabled: true
|
603
|
+
|
604
|
+
Style/Sample:
|
605
|
+
Enabled: true
|
606
|
+
|
607
|
+
# Let authors order gems however makes sense
|
608
|
+
Bundler/OrderedGems:
|
609
|
+
Enabled: false
|
610
|
+
|
611
|
+
# Naming cops produce fairly pointless makework (e.g. EOF on HEREDOC's is
|
612
|
+
# perfectly fine and understandable, using 'ip' as a parameter to a function
|
613
|
+
# is also perfectly descriptive even though its only 2 characters...).
|
614
|
+
Naming/HeredocDelimiterNaming:
|
615
|
+
Enabled: false
|
616
|
+
Naming/PredicateName:
|
617
|
+
Enabled: false
|
618
|
+
Naming/MethodParameterName:
|
619
|
+
Enabled: false
|
620
|
+
Naming/MemoizedInstanceVariableName:
|
621
|
+
Enabled: false
|
622
|
+
Naming/VariableNumber:
|
623
|
+
Enabled: false
|
624
|
+
|
625
|
+
# We almost never use format strings but this cop triggers on any string with "%{whatever}" in it and is 99% false positives
|
626
|
+
Style/FormatStringToken:
|
627
|
+
Enabled: false
|
628
|
+
|
629
|
+
# This cop is annoying. The rubocop default of course goes against the most popular community guidelines due to contrariness
|
630
|
+
# and then the autocorrect mangles specs in chef/chef. Burned more time than it was worth looking at this one so its off.
|
631
|
+
Style/Alias:
|
632
|
+
Enabled: false
|
633
|
+
|
634
|
+
# No autofix for this one, and I don't care to fix 138 instances of it in the chef/chef codebase. Don't think its worth wasting
|
635
|
+
# anyone else's time either.
|
636
|
+
Style/CommentedKeyword:
|
637
|
+
Enabled: false
|
638
|
+
|
639
|
+
# make sure we catch this Ruby 3.0 breaking change now
|
640
|
+
Lint/DeprecatedOpenSSLConstant:
|
641
|
+
Enabled: true
|
642
|
+
|
643
|
+
# alert on invalid ruby syntax
|
644
|
+
Lint/Syntax:
|
645
|
+
Enabled: true
|
646
|
+
|
647
|
+
# remove extra requires like 'thread'
|
648
|
+
Lint/RedundantRequireStatement:
|
649
|
+
Enabled: true
|
650
|
+
|
651
|
+
# simplify stripping strings
|
652
|
+
Style/Strip:
|
653
|
+
Enabled: true
|
654
|
+
|
655
|
+
# simplify getting min/max
|
656
|
+
Style/RedundantSort:
|
657
|
+
Enabled: true
|
658
|
+
|
659
|
+
# no need for .rb in requires
|
660
|
+
Style/RedundantFileExtensionInRequire:
|
661
|
+
Enabled: true
|
662
|
+
|
663
|
+
# more code you don't need
|
664
|
+
Style/RedundantCondition:
|
665
|
+
Enabled: true
|
666
|
+
|
667
|
+
# Use __dir__ to simplify things
|
668
|
+
Style/Dir:
|
669
|
+
Enabled: true
|
670
|
+
|
671
|
+
# Use __FILE__ or __dir__ to simplify expand_paths
|
672
|
+
Style/ExpandPathArguments:
|
673
|
+
Enabled: true
|
674
|
+
|
675
|
+
# more code you don't need
|
676
|
+
Lint/RedundantSafeNavigation:
|
677
|
+
Enabled: true
|
678
|
+
|
679
|
+
# Eases readability
|
680
|
+
Lint/RedundantStringCoercion:
|
681
|
+
Enabled: true
|
682
|
+
|
683
|
+
# unnecessary complexity
|
684
|
+
Lint/RedundantWithObject:
|
685
|
+
Enabled: true
|
686
|
+
|
687
|
+
# unnecessary complexity
|
688
|
+
Lint/RedundantWithIndex:
|
689
|
+
Enabled: true
|
690
|
+
|
691
|
+
# avoid requiring twice
|
692
|
+
Lint/DuplicateRequire:
|
693
|
+
Enabled: true
|
694
|
+
|
695
|
+
# detect assignment typos
|
696
|
+
Lint/AmbiguousAssignment:
|
697
|
+
Enabled: true
|
698
|
+
|
699
|
+
# File.dirname(path, 2)
|
700
|
+
# instead of
|
701
|
+
# File.dirname(File.dirname(path))
|
702
|
+
Style/NestedFileDirname:
|
703
|
+
Enabled: true
|
704
|
+
|
705
|
+
# Use strings instead of regexes when possible
|
706
|
+
Style/ExactRegexpMatch:
|
707
|
+
Enabled: true
|
708
|
+
|
709
|
+
# Don't use redundant `any?`, `empty?`, `none?` or `one?` with `select`
|
710
|
+
Style/RedundantFilterChain:
|
711
|
+
Enabled: true
|
712
|
+
|
713
|
+
# Simplify creating arrays
|
714
|
+
Style/RedundantArrayConstructor:
|
715
|
+
Enabled: true
|
716
|
+
|
717
|
+
# Catch regex that tries to catch A-Z and a-z but fails
|
718
|
+
Lint/MixedCaseRange:
|
719
|
+
Enabled: true
|
720
|
+
|
721
|
+
# Use require_relative '/path'
|
722
|
+
# not
|
723
|
+
# require_relative './path
|
724
|
+
Style/RedundantCurrentDirectoryInPath:
|
725
|
+
Enabled: true
|
726
|
+
|
727
|
+
# Use strings instead of regex with common helper methods
|
728
|
+
Style/RedundantRegexpArgument:
|
729
|
+
Enabled: true
|
730
|
+
|
731
|
+
# Simplify loading of YAML from a file
|
732
|
+
Style/YAMLFileRead:
|
733
|
+
Enabled: true
|
734
|
+
|
735
|
+
# You can't have the same named group in a gemfile twice
|
736
|
+
Bundler/DuplicatedGroup:
|
737
|
+
Enabled: true
|
738
|
+
|
739
|
+
# Avoid creating an array and iterating it when .map can be used
|
740
|
+
Style/MapIntoArray:
|
741
|
+
Enabled: true
|
742
|
+
|
743
|
+
# Don't send method names when you don't need to
|
744
|
+
Style/SendWithLiteralMethodName:
|
745
|
+
Enabled: true
|
746
|
+
|
747
|
+
# add_runtime_dependencies is not preferred in gemspecs
|
748
|
+
Gemspec/AddRuntimeDependency:
|
749
|
+
Enabled: true
|
750
|
+
|
751
|
+
# Avoid numeric operators that do nothing to the value
|
752
|
+
Lint/UselessNumericOperation:
|
753
|
+
Enabled: true
|
754
|
+
|
755
|
+
# Don't define a set with duplicate elements since that defeats the point of a set
|
756
|
+
Lint/DuplicateSetElement:
|
757
|
+
Enabled: true
|
758
|
+
|
759
|
+
# Avoid calling defined twice when you don't need both
|
760
|
+
Style/CombinableDefined:
|
761
|
+
Enabled: true
|
762
|
+
|
763
|
+
# Catch malformed regexes
|
764
|
+
Lint/UnescapedBracketInRegexp:
|
765
|
+
Enabled: true
|
766
|
+
|
767
|
+
# Avoid defined calls that are always truthy
|
768
|
+
Lint/UselessDefined:
|
769
|
+
Enabled: true
|
770
|
+
|
771
|
+
# Call dig with multiple args instead of chaining it
|
772
|
+
Style/DigChain:
|
773
|
+
Enabled: true
|
774
|
+
|
775
|
+
# Catch deprecation hash creation in Ruby 3.4
|
776
|
+
Lint/HashNewWithKeywordArgumentsAsDefault:
|
777
|
+
Enabled: true
|
778
|
+
|
779
|
+
# Consistent magic comment formatting
|
780
|
+
Style/MagicCommentFormat:
|
781
|
+
Enabled: true
|
782
|
+
|
783
|
+
# Reduce duplicate comments
|
784
|
+
Lint/DuplicateMagicComment:
|
785
|
+
Enabled: true
|
786
|
+
|
787
|
+
# Don't escape strings when you don't need to
|
788
|
+
Style/RedundantStringEscape:
|
789
|
+
Enabled: true
|
790
|
+
|
791
|
+
# Don't double each something when you don't need to
|
792
|
+
Style/RedundantEach:
|
793
|
+
Enabled: true
|
794
|
+
|
795
|
+
# Use array.intersect? when on Ruby 3.1+
|
796
|
+
Style/ArrayIntersect:
|
797
|
+
Enabled: true
|
798
|
+
|
799
|
+
# Use .push to add to arrays which is much faster than .concat
|
800
|
+
Style/ConcatArrayLiterals:
|
801
|
+
Enabled: true
|
802
|
+
|
803
|
+
# Use .min and .max instead of rolling your own
|
804
|
+
Style/MinMaxComparison:
|
805
|
+
Enabled: true
|
806
|
+
|
807
|
+
# use .to_set instead of .map/.collect and then .to_set
|
808
|
+
Style/MapToSet:
|
809
|
+
Enabled: true
|
810
|
+
|
811
|
+
# Simplify how you check for empty files
|
812
|
+
Style/FileEmpty:
|
813
|
+
Enabled: true
|
814
|
+
|
815
|
+
# Simplify checking for empty directories
|
816
|
+
Style/DirEmpty:
|
817
|
+
Enabled: true
|
818
|
+
|
819
|
+
# Make it easier to read line continuations
|
820
|
+
Layout/LineContinuationSpacing:
|
821
|
+
Enabled: true
|
822
|
+
|
823
|
+
# Catch range statements that produce a Ruby warning
|
824
|
+
Lint/RequireRangeParentheses:
|
825
|
+
Enabled: true
|
826
|
+
|
827
|
+
# Don't use attributes in the gemspec that are deprecated and/or ignored now
|
828
|
+
Gemspec/DeprecatedAttributeAssignment:
|
829
|
+
Enabled: true
|
830
|
+
|
831
|
+
# Don't .map and then .compact when you can use .select or .reject instead
|
832
|
+
Style/MapCompactWithConditionalBlock:
|
833
|
+
Enabled: true
|
834
|
+
|
835
|
+
# Don't allow case statements with the same condition twice
|
836
|
+
Lint/DuplicateMatchPattern:
|
837
|
+
Enabled: true
|
838
|
+
|
839
|
+
# Use the performant .between? helper when possible
|
840
|
+
Style/ComparableBetween:
|
841
|
+
Enabled: true
|
842
|
+
|
843
|
+
# Simplify fetching data by using .dig
|
844
|
+
Style/HashFetchChain:
|
845
|
+
Enabled: true
|
846
|
+
|
847
|
+
# Don't use .format or .sprintf when not required
|
848
|
+
Style/RedundantFormat:
|
849
|
+
Enabled: true
|
850
|
+
|
851
|
+
# Don't convert types if we don't need to
|
852
|
+
Lint/RedundantTypeConversion:
|
853
|
+
Enabled: true
|
854
|
+
|
855
|
+
Chef/Deprecations/Ruby27KeywordArgumentWarnings:
|
856
|
+
Description: Pass options to shell_out helpers without the brackets to avoid Ruby 2.7 deprecation warnings.
|
857
|
+
Enabled: true
|
858
|
+
VersionAdded: '1.3.0'
|
859
|
+
|
860
|
+
Chef/Ruby/UnlessDefinedRequire:
|
861
|
+
Description: Workaround RubyGems' slow requires by only running require if the constant isn't already defined
|
862
|
+
Enabled: true
|
863
|
+
VersionAdded: '1.3.0'
|
864
|
+
Include:
|
865
|
+
- 'lib/**/*'
|
866
|
+
|
867
|
+
Chef/Ruby/GemspecRequireRubygems:
|
868
|
+
Description: Rubygems does not need to be required in a Gemspec
|
869
|
+
Enabled: true
|
870
|
+
VersionAdded: '1.3.0'
|
871
|
+
Include:
|
872
|
+
- '**/*.gemspec'
|
873
|
+
|
874
|
+
Chef/Ruby/GemspecLicense:
|
875
|
+
Description: 'All gemspec files should define their license.'
|
876
|
+
Enabled: true
|
877
|
+
VersionAdded: '1.7.0'
|
878
|
+
Include:
|
879
|
+
- '**/*.gemspec'
|
880
|
+
Exclude:
|
881
|
+
- '/**/spec/**/*'
|
882
|
+
- '/**/test/**/*'
|
883
|
+
|
884
|
+
Chef/Ruby/RequireNetHttps:
|
885
|
+
Description: net/https is deprecated and just includes net/http and openssl. We should include those directly instead
|
886
|
+
Enabled: true
|
887
|
+
VersionAdded: '1.3.0'
|
888
|
+
|
889
|
+
Chef/Ruby/LegacyPowershellOutMethods:
|
890
|
+
Description: Use powershell_exec!/powershell_exec instead of the slower legacy powershell_out!/powershell_out methods.
|
891
|
+
Enabled: true
|
892
|
+
VersionAdded: '1.6.0'
|