diff options
-rw-r--r-- | .gitlab-ci.yml | 8 | ||||
-rw-r--r-- | .rubocop_todo.yml | 655 | ||||
-rw-r--r-- | Gemfile | 4 | ||||
-rw-r--r-- | Gemfile.lock | 8 |
4 files changed, 534 insertions, 141 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e0e780e1e6b..68690ff33da 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -233,7 +233,13 @@ spinach 9 10 ruby21: *spinach-knapsack-ruby21 script: - bundle exec $CI_BUILD_NAME -rubocop: *exec +rubocop: + <<: *ruby-static-analysis + <<: *dedicated-runner + stage: test + script: + - bundle exec "rubocop --require rubocop-rspec" + rake haml_lint: *exec rake scss_lint: *exec rake brakeman: *exec diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 11b34fafa2a..2434e8c4b42 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -1,65 +1,106 @@ # This configuration was generated by -# `rubocop --auto-gen-config --exclude-limit 0` -# on 2016-10-04 13:16:20 +0200 using RuboCop version 0.43.0. +# `rubocop --auto-gen-config` +# on 2017-01-05 14:31:09 -0800 using RuboCop version 0.46.0. # The point is for the user to remove these configuration records # one by one as the offenses are removed from the code base. # Note that changes in the inspected code, or installation of new # versions of RuboCop, may require this file to be generated again. -# Offense count: 160 +# Offense count: 28 +# Configuration parameters: Include. +# Include: **/Gemfile, **/gems.rb +Bundler/OrderedGems: + Exclude: + - 'Gemfile' + +# Offense count: 174 Lint/AmbiguousRegexpLiteral: Enabled: false -# Offense count: 40 +# Offense count: 53 # Configuration parameters: AllowSafeAssignment. Lint/AssignmentInCondition: Enabled: false -# Offense count: 18 +# Offense count: 1 +Lint/EmptyWhen: + Exclude: + - 'lib/gitlab/diff/parser.rb' + +# Offense count: 20 Lint/HandleExceptions: Enabled: false -# Offense count: 2 +# Offense count: 1 Lint/Loop: - Enabled: false + Exclude: + - 'app/mailers/notify.rb' -# Offense count: 19 +# Offense count: 28 Lint/ShadowingOuterLocalVariable: Enabled: false -# Offense count: 9 +# Offense count: 10 # Cop supports --auto-correct. Lint/UnifiedInteger: - Enabled: false + Exclude: + - 'spec/lib/gitlab/metrics/method_call_spec.rb' + - 'spec/lib/gitlab/metrics/metric_spec.rb' + - 'spec/lib/gitlab/metrics/system_spec.rb' + - 'spec/lib/gitlab/metrics/transaction_spec.rb' + - 'spec/models/repository_spec.rb' -# Offense count: 13 +# Offense count: 21 # Cop supports --auto-correct. Lint/UnneededSplatExpansion: - Enabled: false - -# Offense count: 69 + Exclude: + - 'config/application.rb' + - 'lib/banzai/filter/gollum_tags_filter.rb' + - 'lib/bitbucket/page.rb' + - 'lib/gitlab/markup_helper.rb' + - 'spec/helpers/auth_helper_spec.rb' + - 'spec/models/project_wiki_spec.rb' + - 'spec/requests/api/projects_spec.rb' + - 'spec/requests/api/tags_spec.rb' + - 'spec/support/seed_helper.rb' + - 'spec/support/test_env.rb' + +# Offense count: 82 # Cop supports --auto-correct. # Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments. Lint/UnusedBlockArgument: Enabled: false -# Offense count: 144 +# Offense count: 173 # Cop supports --auto-correct. # Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods. Lint/UnusedMethodArgument: Enabled: false -# Offense count: 2 +# Offense count: 94 +# Configuration parameters: CountComments. +Metrics/BlockLength: + Max: 289 + +# Offense count: 3 # Cop supports --auto-correct. Performance/RedundantBlockCall: - Enabled: false + Exclude: + - 'app/controllers/application_controller.rb' + - 'lib/gitlab/backend/shell.rb' + - 'lib/gitlab/optimistic_locking.rb' # Offense count: 5 # Cop supports --auto-correct. Performance/RedundantMatch: - Enabled: false + Exclude: + - 'app/models/external_issue.rb' + - 'lib/ci/api/helpers.rb' + - 'lib/extracts_path.rb' + - 'lib/gitlab/diff/highlight.rb' + - 'lib/gitlab/diff/parser.rb' -# Offense count: 26 +# Offense count: 32 # Cop supports --auto-correct. # Configuration parameters: MaxKeyValuePairs. Performance/RedundantMerge: @@ -67,63 +108,127 @@ Performance/RedundantMerge: # Offense count: 7 RSpec/BeEql: - Enabled: false + Exclude: + - 'spec/lib/gitlab/ldap/user_spec.rb' + - 'spec/lib/gitlab/o_auth/user_spec.rb' + - 'spec/lib/gitlab/saml/user_spec.rb' -# Offense count: 20 +# Offense count: 15 # Configuration parameters: CustomIncludeMethods. RSpec/EmptyExampleGroup: - Enabled: false + Exclude: + - 'spec/features/issues_spec.rb' + - 'spec/features/notes_on_merge_requests_spec.rb' + - 'spec/lib/gitlab/git_access_spec.rb' + - 'spec/models/project_snippet_spec.rb' + - 'spec/models/protected_branch_spec.rb' + - 'spec/routing/routing_spec.rb' -# Offense count: 16 +# Offense count: 24 RSpec/ExpectActual: - Enabled: false + Exclude: + - 'spec/lib/gitlab/regex_spec.rb' -# Offense count: 34 +# Offense count: 58 # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: implicit, each, example RSpec/HookArgument: Enabled: false -# Offense count: 168 +# Offense count: 12 +# Configuration parameters: EnforcedStyle, SupportedStyles. +# SupportedStyles: is_expected, should +RSpec/ImplicitExpect: + Exclude: + - 'spec/lib/banzai/renderer_spec.rb' + - 'spec/models/project_group_link_spec.rb' + - 'spec/models/project_services/external_wiki_service_spec.rb' + - 'spec/models/project_spec.rb' + +# Offense count: 235 RSpec/LeadingSubject: Enabled: false -# Offense count: 162 +# Offense count: 246 RSpec/LetSetup: Enabled: false -# Offense count: 10 +# Offense count: 13 RSpec/MessageChain: - Enabled: false - -# Offense count: 714 + Exclude: + - 'spec/finders/move_to_project_finder_spec.rb' + - 'spec/helpers/issues_helper_spec.rb' + - 'spec/initializers/secret_token_spec.rb' + - 'spec/models/build_spec.rb' + - 'spec/requests/api/internal_spec.rb' + - 'spec/services/merge_requests/build_service_spec.rb' + - 'spec/services/notes/create_service_spec.rb' + - 'spec/workers/emails_on_push_worker_spec.rb' + +# Offense count: 468 # Configuration parameters: EnforcedStyle, SupportedStyles. -# SupportedStyles: allow, expect -RSpec/MessageExpectation: +# SupportedStyles: have_received, receive +RSpec/MessageSpies: Enabled: false -# Offense count: 2423 +# Offense count: 3013 RSpec/MultipleExpectations: - Max: 36 + Max: 37 -# Offense count: 1504 +# Offense count: 2072 RSpec/NamedSubject: Enabled: false -# Offense count: 1335 +# Offense count: 1949 # Configuration parameters: MaxNesting. RSpec/NestedGroups: Enabled: false -# Offense count: 99 +# Offense count: 32 +RSpec/RepeatedDescription: + Exclude: + - 'spec/controllers/projects/todo_controller_spec.rb' + - 'spec/features/boards/boards_spec.rb' + - 'spec/helpers/issuables_helper_spec.rb' + - 'spec/lib/banzai/filter/emoji_filter_spec.rb' + - 'spec/models/commit_range_spec.rb' + - 'spec/models/global_milestone_spec.rb' + - 'spec/models/hooks/system_hook_spec.rb' + - 'spec/requests/api/commits_spec.rb' + - 'spec/requests/api/merge_requests_spec.rb' + - 'spec/requests/api/users_spec.rb' + - 'spec/requests/lfs_http_spec.rb' + - 'spec/routing/admin_routing_spec.rb' + - 'spec/services/notification_service_spec.rb' + +# Offense count: 1 +RSpec/SingleArgumentMessageChain: + Exclude: + - 'spec/requests/api/internal_spec.rb' + +# Offense count: 125 RSpec/SubjectStub: Enabled: false -# Offense count: 64 +# Offense count: 104 +# Cop supports --auto-correct. +# Configuration parameters: Whitelist. +# Whitelist: find_by_sql +Rails/DynamicFindBy: + Enabled: false + +# Offense count: 929 +# Cop supports --auto-correct. +# Configuration parameters: Include. +# Include: spec/**/*, test/**/* +Rails/HttpPositionalArguments: + Enabled: false + +# Offense count: 55 Rails/OutputSafety: Enabled: false -# Offense count: 151 +# Offense count: 181 # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: strict, flexible Rails/TimeZone: @@ -134,35 +239,52 @@ Rails/TimeZone: # Configuration parameters: Include. # Include: app/models/**/*.rb Rails/Validation: - Enabled: false + Exclude: + - 'app/models/ci/build.rb' + - 'app/models/ci/pipeline.rb' + - 'app/models/ci/runner_project.rb' + - 'app/models/ci/trigger.rb' + - 'app/models/commit_status.rb' + - 'app/models/members/group_member.rb' + - 'app/models/members/project_member.rb' + - 'app/models/project.rb' + - 'app/models/protected_branch.rb' + - 'app/models/user.rb' -# Offense count: 2 +# Offense count: 8 # Cop supports --auto-correct. +# Configuration parameters: AutoCorrect. Security/JSONLoad: - Enabled: false + Exclude: + - 'db/migrate/20161019190736_migrate_sidekiq_queues_from_default.rb' + - 'db/migrate/20161024042317_migrate_mailroom_queue_from_default.rb' + - 'db/migrate/20161124141322_migrate_process_commit_worker_jobs.rb' + - 'spec/migrations/migrate_process_commit_worker_jobs_spec.rb' + - 'spec/models/project_services/irker_service_spec.rb' + - 'spec/support/stub_gitlab_calls.rb' -# Offense count: 284 +# Offense count: 339 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth. # SupportedStyles: with_first_parameter, with_fixed_indentation Style/AlignParameters: Enabled: false -# Offense count: 28 +# Offense count: 27 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: always, conditionals Style/AndOr: Enabled: false -# Offense count: 52 +# Offense count: 53 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: percent_q, bare_percent Style/BarePercentLiterals: Enabled: false -# Offense count: 291 +# Offense count: 354 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: braces, no_braces, context_dependent @@ -171,97 +293,156 @@ Style/BracesAroundHashParameters: # Offense count: 6 Style/CaseEquality: - Enabled: false + Exclude: + - 'app/helpers/auth_helper.rb' + - 'app/models/commit.rb' + - 'app/models/protected_branch.rb' + - 'app/services/projects/download_service.rb' + - 'config/initializers/trusted_proxies.rb' + - 'spec/features/calendar_spec.rb' -# Offense count: 26 +# Offense count: 37 # Cop supports --auto-correct. Style/ColonMethodCall: Enabled: false -# Offense count: 2 +# Offense count: 4 # Cop supports --auto-correct. # Configuration parameters: Keywords. # Keywords: TODO, FIXME, OPTIMIZE, HACK, REVIEW Style/CommentAnnotation: - Enabled: false + Exclude: + - 'config/routes/user.rb' + - 'lib/api/commits.rb' + - 'lib/api/entities.rb' + - 'spec/requests/api/project_snippets_spec.rb' -# Offense count: 30 +# Offense count: 29 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles, SingleLineConditionsOnly. # SupportedStyles: assign_to_condition, assign_inside_condition Style/ConditionalAssignment: Enabled: false -# Offense count: 957 +# Offense count: 1210 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: leading, trailing Style/DotPosition: Enabled: false -# Offense count: 13 +# Offense count: 18 Style/DoubleNegation: - Enabled: false + Exclude: + - 'app/controllers/users_controller.rb' + - 'app/models/commit.rb' + - 'app/models/merge_request.rb' + - 'app/models/project.rb' + - 'app/models/project_services/buildkite_service.rb' + - 'app/models/project_services/drone_ci_service.rb' + - 'app/models/project_wiki.rb' + - 'app/models/user.rb' + - 'config/initializers/6_validations.rb' + - 'lib/banzai/filter/relative_link_filter.rb' + - 'lib/gitlab/git/diff_collection.rb' + - 'lib/gitlab/git/repository.rb' + - 'lib/gitlab/sherlock.rb' + - 'lib/gitlab/sherlock/middleware.rb' -# Offense count: 6 +# Offense count: 7 # Cop supports --auto-correct. Style/EachWithObject: - Enabled: false + Exclude: + - 'app/controllers/projects/cycle_analytics_controller.rb' + - 'app/services/merge_requests/get_urls_service.rb' + - 'lib/ci/ansi2html.rb' + - 'lib/expand_variables.rb' + - 'lib/gitlab/ee_compat_check.rb' + - 'lib/gitlab/import_export/members_mapper.rb' + - 'lib/gitlab/import_export/relation_factory.rb' -# Offense count: 26 +# Offense count: 24 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: empty, nil, both Style/EmptyElse: Enabled: false -# Offense count: 3 +# Offense count: 4 # Cop supports --auto-correct. Style/EmptyLiteral: + Exclude: + - 'features/steps/project/commits/commits.rb' + - 'lib/gitlab/fogbugz_import/importer.rb' + - 'lib/gitlab/git/diff_collection.rb' + - 'spec/lib/gitlab/workhorse_spec.rb' + +# Offense count: 57 +# Cop supports --auto-correct. +# Configuration parameters: EnforcedStyle, SupportedStyles. +# SupportedStyles: compact, expanded +Style/EmptyMethod: Enabled: false -# Offense count: 140 +# Offense count: 145 # Cop supports --auto-correct. # Configuration parameters: AllowForAlignment, ForceEqualSignAlignment. Style/ExtraSpacing: Enabled: false -# Offense count: 6 +# Offense count: 8 # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: format, sprintf, percent Style/FormatString: - Enabled: false - -# Offense count: 201 + Exclude: + - 'app/models/ci/pipeline.rb' + - 'app/services/gravatar_service.rb' + - 'config/initializers/rack_lineprof.rb' + - 'lib/gitlab/version_info.rb' + - 'spec/factories/lfs_objects.rb' + - 'spec/services/issues/move_service_spec.rb' + +# Offense count: 236 # Configuration parameters: MinBodyLength. Style/GuardClause: Enabled: false # Offense count: 11 Style/IfInsideElse: - Enabled: false - -# Offense count: 174 + Exclude: + - 'app/controllers/projects/forks_controller.rb' + - 'app/controllers/projects/imports_controller.rb' + - 'app/helpers/milestones_helper.rb' + - 'app/helpers/projects_helper.rb' + - 'app/services/system_note_service.rb' + - 'config/initializers/1_settings.rb' + - 'lib/gitlab/auth.rb' + - 'lib/gitlab/checks/change_access.rb' + - 'lib/gitlab/database.rb' + - 'spec/controllers/projects/merge_requests_controller_spec.rb' + - 'spec/support/import_export/export_file_helper.rb' + +# Offense count: 173 # Cop supports --auto-correct. # Configuration parameters: MaxLineLength. Style/IfUnlessModifier: Enabled: false -# Offense count: 53 +# Offense count: 55 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth. # SupportedStyles: special_inside_parentheses, consistent, align_brackets Style/IndentArray: Enabled: false -# Offense count: 95 +# Offense count: 99 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth. # SupportedStyles: special_inside_parentheses, consistent, align_braces Style/IndentHash: Enabled: false -# Offense count: 29 +# Offense count: 41 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: line_count_dependent, lambda, literal @@ -271,18 +452,49 @@ Style/Lambda: # Offense count: 5 # Cop supports --auto-correct. Style/LineEndConcatenation: - Enabled: false + Exclude: + - 'app/helpers/preferences_helper.rb' + - 'app/helpers/tree_helper.rb' + - 'app/models/merge_request.rb' + - 'spec/lib/gitlab/gfm/reference_rewriter_spec.rb' -# Offense count: 15 +# Offense count: 19 # Cop supports --auto-correct. Style/MethodCallParentheses: - Enabled: false + Exclude: + - 'lib/ci/ansi2html.rb' + - 'spec/controllers/dashboard/todos_controller_spec.rb' + - 'spec/controllers/projects/issues_controller_spec.rb' + - 'spec/controllers/projects/merge_requests_controller_spec.rb' + - 'spec/controllers/projects/snippets_controller_spec.rb' + - 'spec/features/calendar_spec.rb' + - 'spec/features/dashboard/datetime_on_tooltips_spec.rb' + - 'spec/helpers/submodule_helper_spec.rb' + - 'spec/lib/gitlab/git/repository_spec.rb' + - 'spec/requests/api/internal_spec.rb' -# Offense count: 8 +# Offense count: 9 Style/MethodMissing: - Enabled: false + Exclude: + - 'app/controllers/projects/application_controller.rb' + - 'app/models/commit.rb' + - 'app/models/network/commit.rb' + - 'app/models/repository.rb' + - 'config/initializers/gollum.rb' + - 'lib/bitbucket/collection.rb' + - 'lib/gitlab/github_import/client.rb' + - 'lib/gitlab/lazy.rb' + - 'lib/uploaded_file.rb' -# Offense count: 95 +# Offense count: 3 +# Cop supports --auto-correct. +Style/MultilineIfModifier: + Exclude: + - 'app/helpers/snippets_helper.rb' + - 'app/models/merge_request.rb' + - 'app/models/project_wiki.rb' + +# Offense count: 178 # Cop supports --auto-correct. Style/MutableConstant: Enabled: false @@ -290,53 +502,95 @@ Style/MutableConstant: # Offense count: 8 # Cop supports --auto-correct. Style/NestedParenthesizedCalls: - Enabled: false + Exclude: + - 'app/helpers/commits_helper.rb' + - 'app/workers/irker_worker.rb' + - 'spec/lib/gitlab/ci/build/artifacts/metadata/entry_spec.rb' + - 'spec/lib/gitlab/email/message/repository_push_spec.rb' # Offense count: 13 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, MinBodyLength, SupportedStyles. # SupportedStyles: skip_modifier_ifs, always Style/Next: - Enabled: false + Exclude: + - 'app/models/namespace.rb' + - 'app/models/user.rb' + - 'config/initializers/secret_token.rb' + - 'db/migrate/20161220141214_remove_dot_git_from_group_names.rb' + - 'db/migrate/20161226122833_remove_dot_git_from_usernames.rb' + - 'lib/banzai/filter/math_filter.rb' + - 'lib/banzai/filter/table_of_contents_filter.rb' + - 'lib/gitlab/fogbugz_import/importer.rb' + - 'lib/gitlab/metrics/instrumentation.rb' + - 'lib/gitlab/metrics/sampler.rb' + - 'lib/gitlab/project_search_results.rb' -# Offense count: 12 +# Offense count: 19 # Cop supports --auto-correct. # Configuration parameters: EnforcedOctalStyle, SupportedOctalStyles. # SupportedOctalStyles: zero_with_o, zero_only Style/NumericLiteralPrefix: - Enabled: false + Exclude: + - 'config/initializers/1_settings.rb' + - 'config/initializers/secret_token.rb' + - 'lib/gitlab/backend/shell.rb' + - 'lib/gitlab/import_export/command_line_util.rb' + - 'lib/gitlab/workhorse.rb' + - 'spec/features/projects/import_export/export_file_spec.rb' + - 'spec/lib/gitlab/git/blob_spec.rb' + - 'spec/lib/gitlab/git/hook_spec.rb' + - 'spec/lib/gitlab/git/repository_spec.rb' + - 'spec/lib/gitlab/workhorse_spec.rb' + - 'spec/support/import_export/export_file_helper.rb' + - 'spec/support/test_env.rb' + - 'spec/tasks/gitlab/backup_rake_spec.rb' -# Offense count: 53 +# Offense count: 19 # Cop supports --auto-correct. -# Configuration parameters: EnforcedStyle, SupportedStyles. +# Configuration parameters: AutoCorrect, EnforcedStyle, SupportedStyles. # SupportedStyles: predicate, comparison Style/NumericPredicate: Enabled: false -# Offense count: 29 +# Offense count: 34 # Cop supports --auto-correct. Style/ParallelAssignment: Enabled: false -# Offense count: 294 +# Offense count: 416 # Cop supports --auto-correct. # Configuration parameters: PreferredDelimiters. Style/PercentLiteralDelimiters: Enabled: false -# Offense count: 11 +# Offense count: 10 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: lower_case_q, upper_case_q Style/PercentQLiterals: - Enabled: false + Exclude: + - 'spec/lib/gitlab/diff/highlight_spec.rb' + - 'spec/models/project_services/bamboo_service_spec.rb' + - 'spec/models/project_services/teamcity_service_spec.rb' + - 'spec/workers/repository_import_worker_spec.rb' # Offense count: 13 # Cop supports --auto-correct. Style/PerlBackrefs: - Enabled: false - -# Offense count: 38 + Exclude: + - 'app/controllers/projects/application_controller.rb' + - 'app/helpers/submodule_helper.rb' + - 'lib/banzai/filter/abstract_reference_filter.rb' + - 'lib/banzai/filter/autolink_filter.rb' + - 'lib/banzai/filter/emoji_filter.rb' + - 'lib/banzai/filter/gollum_tags_filter.rb' + - 'lib/expand_variables.rb' + - 'lib/gitlab/diff/highlight.rb' + - 'lib/gitlab/search_results.rb' + - 'lib/gitlab/sherlock/query.rb' + +# Offense count: 63 # Configuration parameters: NamePrefix, NamePrefixBlacklist, NameWhitelist. # NamePrefix: is_, has_, have_ # NamePrefixBlacklist: is_, has_, have_ @@ -344,17 +598,25 @@ Style/PerlBackrefs: Style/PredicateName: Enabled: false -# Offense count: 26 +# Offense count: 33 # Cop supports --auto-correct. +# Configuration parameters: EnforcedStyle, SupportedStyles. +# SupportedStyles: short, verbose Style/PreferredHashMethods: Enabled: false -# Offense count: 6 +# Offense count: 8 # Cop supports --auto-correct. Style/Proc: - Enabled: false + Exclude: + - 'app/mailers/base_mailer.rb' + - 'app/models/milestone.rb' + - 'app/models/service.rb' + - 'lib/api/api_guard.rb' + - 'lib/gitlab/ldap/config.rb' + - 'spec/initializers/trusted_proxies_spec.rb' -# Offense count: 22 +# Offense count: 50 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: compact, exploded @@ -364,107 +626,196 @@ Style/RaiseArgs: # Offense count: 4 # Cop supports --auto-correct. Style/RedundantBegin: - Enabled: false + Exclude: + - 'app/models/ci/build.rb' + - 'app/models/merge_request.rb' + - 'app/services/projects/import_service.rb' + - 'lib/gitlab/git/commit.rb' # Offense count: 1 # Cop supports --auto-correct. Style/RedundantException: - Enabled: false + Exclude: + - 'app/helpers/preferences_helper.rb' -# Offense count: 24 +# Offense count: 29 # Cop supports --auto-correct. Style/RedundantFreeze: - Enabled: false + Exclude: + - 'app/models/merge_request.rb' + - 'app/validators/color_validator.rb' + - 'app/validators/line_code_validator.rb' + - 'lib/api/templates.rb' + - 'lib/banzai/filter/blockquote_fence_filter.rb' + - 'lib/banzai/filter/gollum_tags_filter.rb' + - 'lib/banzai/filter/yaml_front_matter_filter.rb' + - 'lib/gitlab/diff/inline_diff.rb' + - 'lib/gitlab/ee_compat_check.rb' + - 'lib/gitlab/import_export/relation_factory.rb' + - 'lib/gitlab/incoming_email.rb' + - 'lib/gitlab/middleware/static.rb' + - 'lib/gitlab/regex.rb' -# Offense count: 427 +# Offense count: 11 +# Cop supports --auto-correct. +# Configuration parameters: AllowMultipleReturnValues. +Style/RedundantReturn: + Exclude: + - 'app/controllers/concerns/issuable_actions.rb' + - 'app/controllers/groups/application_controller.rb' + - 'app/controllers/groups_controller.rb' + - 'app/controllers/projects/labels_controller.rb' + - 'app/controllers/projects/milestones_controller.rb' + - 'app/services/access_token_validation_service.rb' + +# Offense count: 359 # Cop supports --auto-correct. Style/RedundantSelf: Enabled: false -# Offense count: 97 +# Offense count: 105 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles, AllowInnerSlashes. # SupportedStyles: slashes, percent_r, mixed Style/RegexpLiteral: Enabled: false -# Offense count: 18 +# Offense count: 19 # Cop supports --auto-correct. Style/RescueModifier: - Enabled: false - -# Offense count: 114 -# Cop supports --auto-correct. -Style/SafeNavigation: - Enabled: false + Exclude: + - 'app/controllers/admin/system_info_controller.rb' + - 'app/controllers/users_controller.rb' + - 'app/helpers/blob_helper.rb' + - 'app/helpers/issues_helper.rb' + - 'app/models/diff_note.rb' + - 'app/models/project_services/external_wiki_service.rb' + - 'app/models/sent_notification.rb' + - 'app/models/todo.rb' + - 'config/initializers/1_settings.rb' + - 'config/initializers/attr_encrypted_no_db_connection.rb' + - 'lib/gitlab/current_settings.rb' + - 'lib/gitlab/diff/parser.rb' + - 'lib/gitlab/kubernetes.rb' + - 'lib/gitlab/slash_commands/command_definition.rb' + - 'spec/support/matchers/be_url.rb' # Offense count: 7 # Cop supports --auto-correct. Style/SelfAssignment: - Enabled: false + Exclude: + - 'app/models/project_team.rb' + - 'app/services/notification_service.rb' + - 'lib/api/runners.rb' + - 'spec/features/merge_requests/diff_notes_resolve_spec.rb' + - 'spec/support/import_export/configuration_helper.rb' # Offense count: 2 # Configuration parameters: Methods. -# Methods: {"reduce"=>["a", "e"]}, {"inject"=>["a", "e"]} +# Methods: {"reduce"=>["acc", "elem"]}, {"inject"=>["acc", "elem"]} Style/SingleLineBlockParams: - Enabled: false + Exclude: + - 'app/models/commit.rb' + - 'spec/support/services_shared_context.rb' # Offense count: 50 # Cop supports --auto-correct. # Configuration parameters: AllowIfMethodIsEmpty. Style/SingleLineMethods: - Enabled: false + Exclude: + - 'lib/ci/ansi2html.rb' -# Offense count: 125 +# Offense count: 140 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: space, no_space Style/SpaceBeforeBlockBraces: Enabled: false -# Offense count: 10 +# Offense count: 8 # Cop supports --auto-correct. # Configuration parameters: AllowForAlignment. Style/SpaceBeforeFirstArg: - Enabled: false + Exclude: + - 'config/routes/project.rb' + - 'features/steps/project/source/browse_files.rb' + - 'features/steps/project/source/markdown_render.rb' + - 'spec/routing/project_routing_spec.rb' + - 'spec/services/system_note_service_spec.rb' -# Offense count: 145 +# Offense count: 37 +# Cop supports --auto-correct. +# Configuration parameters: EnforcedStyle, SupportedStyles. +# SupportedStyles: require_no_space, require_space +Style/SpaceInLambdaLiteral: + Exclude: + - 'app/models/concerns/mentionable.rb' + - 'app/models/issue.rb' + - 'app/models/member.rb' + - 'lib/api/entities.rb' + - 'lib/file_size_validator.rb' + - 'lib/gitlab/visibility_level.rb' + - 'spec/models/concerns/participable_spec.rb' + - 'spec/models/cycle_analytics/code_spec.rb' + - 'spec/models/cycle_analytics/issue_spec.rb' + - 'spec/models/cycle_analytics/plan_spec.rb' + - 'spec/models/cycle_analytics/production_spec.rb' + - 'spec/models/cycle_analytics/review_spec.rb' + - 'spec/models/cycle_analytics/staging_spec.rb' + - 'spec/models/cycle_analytics/test_spec.rb' + +# Offense count: 174 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters. # SupportedStyles: space, no_space Style/SpaceInsideBlockBraces: Enabled: false -# Offense count: 99 +# Offense count: 115 # Cop supports --auto-correct. Style/SpaceInsideBrackets: Enabled: false -# Offense count: 65 +# Offense count: 77 # Cop supports --auto-correct. Style/SpaceInsideParens: Enabled: false -# Offense count: 7 +# Offense count: 4 # Cop supports --auto-correct. Style/SpaceInsidePercentLiteralDelimiters: - Enabled: false + Exclude: + - 'lib/gitlab/git_access.rb' -# Offense count: 41 +# Offense count: 53 # Cop supports --auto-correct. # Configuration parameters: SupportedStyles. # SupportedStyles: use_perl_names, use_english_names Style/SpecialGlobalVars: EnforcedStyle: use_perl_names -# Offense count: 31 +# Offense count: 25 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: single_quotes, double_quotes Style/StringLiteralsInInterpolation: - Enabled: false + Exclude: + - 'app/helpers/labels_helper.rb' + - 'app/helpers/time_helper.rb' + - 'app/helpers/todos_helper.rb' + - 'app/models/application_setting.rb' + - 'app/models/project_services/campfire_service.rb' + - 'app/models/project_services/jira_service.rb' + - 'db/migrate/20161017125927_add_unique_index_to_labels.rb' + - 'features/steps/groups.rb' + - 'features/steps/project/merge_requests.rb' + - 'lib/banzai/filter/abstract_reference_filter.rb' + - 'lib/ci/gitlab_ci_yaml_processor.rb' + - 'lib/gitlab/google_code_import/importer.rb' + - 'spec/lib/banzai/filter/issue_reference_filter_spec.rb' + - 'spec/models/project_services/hipchat_service_spec.rb' -# Offense count: 33 +# Offense count: 52 # Cop supports --auto-correct. # Configuration parameters: IgnoredMethods. # IgnoredMethods: respond_to, define_method @@ -474,18 +825,23 @@ Style/SymbolProc: # Offense count: 5 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle, SupportedStyles, AllowSafeAssignment. -# SupportedStyles: require_parentheses, require_no_parentheses +# SupportedStyles: require_parentheses, require_no_parentheses, require_parentheses_when_complex Style/TernaryParentheses: - Enabled: false + Exclude: + - 'features/support/capybara.rb' + - 'lib/api/projects.rb' + - 'lib/banzai/filter/table_of_contents_filter.rb' + - 'lib/gitlab/ci/build/artifacts/metadata/entry.rb' + - 'spec/support/capybara.rb' -# Offense count: 29 +# Offense count: 35 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyleForMultiline, SupportedStyles. # SupportedStyles: comma, consistent_comma, no_comma Style/TrailingCommaInArguments: Enabled: false -# Offense count: 102 +# Offense count: 149 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyleForMultiline, SupportedStyles. # SupportedStyles: comma, consistent_comma, no_comma @@ -496,31 +852,62 @@ Style/TrailingCommaInLiteral: # Cop supports --auto-correct. # Configuration parameters: AllowNamedUnderscoreVariables. Style/TrailingUnderscoreVariable: - Enabled: false + Exclude: + - 'app/controllers/admin/background_jobs_controller.rb' + - 'app/controllers/invites_controller.rb' + - 'app/controllers/projects/git_http_client_controller.rb' + - 'app/helpers/tab_helper.rb' + - 'lib/gitlab/git/repository.rb' + - 'lib/gitlab/logger.rb' -# Offense count: 76 +# Offense count: 66 # Cop supports --auto-correct. Style/TrailingWhitespace: Enabled: false -# Offense count: 2 +# Offense count: 3 # Cop supports --auto-correct. # Configuration parameters: ExactNameMatch, AllowPredicates, AllowDSLWriters, IgnoreClassMethods, Whitelist. # Whitelist: to_ary, to_a, to_c, to_enum, to_h, to_hash, to_i, to_int, to_io, to_open, to_path, to_proc, to_r, to_regexp, to_str, to_s, to_sym Style/TrivialAccessors: - Enabled: false + Exclude: + - 'app/models/external_issue.rb' + - 'app/serializers/base_serializer.rb' + - 'lib/gitlab/ldap/person.rb' # Offense count: 2 # Cop supports --auto-correct. Style/UnlessElse: - Enabled: false + Exclude: + - 'lib/gitlab/project_search_results.rb' + - 'spec/features/issues/award_emoji_spec.rb' -# Offense count: 14 +# Offense count: 17 # Cop supports --auto-correct. Style/UnneededInterpolation: - Enabled: false + Exclude: + - 'app/helpers/boards_helper.rb' + - 'app/helpers/projects_helper.rb' + - 'app/helpers/search_helper.rb' + - 'app/helpers/time_helper.rb' + - 'app/models/merge_request.rb' + - 'app/models/project_services/pushover_service.rb' + - 'features/steps/project/forked_merge_requests.rb' + - 'spec/features/admin/admin_projects_spec.rb' + - 'spec/features/issues_spec.rb' + - 'spec/features/projects/branches_spec.rb' + - 'spec/features/projects/issuable_templates_spec.rb' + - 'spec/lib/banzai/filter/issue_reference_filter_spec.rb' + - 'spec/views/projects/commit/_commit_box.html.haml_spec.rb' # Offense count: 8 # Cop supports --auto-correct. Style/ZeroLengthPredicate: - Enabled: false + Exclude: + - 'app/models/deploy_key.rb' + - 'app/models/merge_request.rb' + - 'app/models/network/commit.rb' + - 'app/models/network/graph.rb' + - 'app/models/project_services/asana_service.rb' + - 'app/models/repository.rb' + - 'lib/extracts_path.rb' @@ -296,8 +296,8 @@ group :development, :test do gem 'spring-commands-spinach', '~> 1.1.0' gem 'spring-commands-teaspoon', '~> 0.0.2' - gem 'rubocop', '~> 0.43.0', require: false - gem 'rubocop-rspec', '~> 1.5.0', require: false + gem 'rubocop', '~> 0.46.0', require: false + gem 'rubocop-rspec', '~> 1.9.1', require: false gem 'scss_lint', '~> 0.47.0', require: false gem 'haml_lint', '~> 0.18.2', require: false gem 'simplecov', '0.12.0', require: false diff --git a/Gemfile.lock b/Gemfile.lock index c99313163a4..b042e4b1b09 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -614,14 +614,14 @@ GEM rspec-retry (0.4.5) rspec-core rspec-support (3.5.0) - rubocop (0.43.0) + rubocop (0.46.0) parser (>= 2.3.1.1, < 3.0) powerpack (~> 0.1) rainbow (>= 1.99.1, < 3.0) ruby-progressbar (~> 1.7) unicode-display_width (~> 1.0, >= 1.0.1) - rubocop-rspec (1.5.0) - rubocop (>= 0.40.0) + rubocop-rspec (1.9.1) + rubocop (>= 0.42.0) ruby-fogbugz (0.2.1) crack (~> 0.4) ruby-prof (0.16.2) @@ -933,7 +933,7 @@ DEPENDENCIES rspec-rails (~> 3.5.0) rspec-retry (~> 0.4.5) rubocop (~> 0.43.0) - rubocop-rspec (~> 1.5.0) + rubocop-rspec (~> 1.9.1) ruby-fogbugz (~> 0.2.1) ruby-prof (~> 0.16.2) rugged (~> 0.24.0) |