Skip to content

Draft: Rubocop jihu

Peter Leitzen requested to merge rubocop-jihu into master

PoC for #356503 (comment 885797051).

How to verify locally

$ be rubocop --show-cops | grep -A 28 Naming/FileName
Naming/FileName:
  Description: Use snake_case for source file names.
  StyleGuide: "#snake-case-files"
  Enabled: true
  VersionAdded: '0.50'
  Exclude:
  - "/home/peter/devel/gitlab/gdk/gitlab/jh/config/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/jh/spec/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/**/*/*.builder"
  - "/home/peter/devel/gitlab/gdk/gitlab/ee/bin/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/config.ru"
  - "/home/peter/devel/gitlab/gdk/gitlab/config/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/ee/config/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/db/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/ee/db/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/ee/elastic/migrate/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/lib/tasks/**/*.rake"
  - "/home/peter/devel/gitlab/gdk/gitlab/ee/lib/tasks/**/*.rake"
  - "/home/peter/devel/gitlab/gdk/gitlab/lib/generators/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/ee/lib/generators/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/scripts/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/spec/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/tooling/bin/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/ee/spec/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/qa/bin/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/qa/spec/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/qa/qa/specs/**/*"
  - "/home/peter/devel/gitlab/gdk/gitlab/qa/tasks/**/*.rake"
  - "/home/peter/devel/gitlab/gdk/gitlab/**/*.ru"
...


$ REVEAL_RUBOCOP_TODO=1 be rubocop -C false jh/
Inspecting 2 files
CC

Offenses:

jh/app/models/foo.rb:1:1: C: Naming/FileName: foo.rb should define a class or module called Foo.
# frozen_string_literal: true
^
jh/app/models/foo.rb:3:1: C: Gitlab/NamespacedClass: Classes must be declared inside a module indicating a product domain namespace. For more info: https://gitlab.com/gitlab-org/gitlab/-/issues/212156
class Bar ...
^^^^^^^^^
jh/config/foo.rb:1:1: C: Style/FrozenStringLiteralComment: Missing magic comment # frozen_string_literal: true.
jh/config/foo.rb:2:1: C: Layout/LeadingEmptyLines: Unnecessary blank line at the beginning of the source.
# OK
^^^^

2 files inspected, 4 offenses detected, 2 offenses auto-correctable
peter@happy ~/devel/gitlab/gdk/gitlab on (rubocop-jihu?)
$ REVEAL_RUBOCOP_TODO=0 be rubocop -C true jh/
Inspecting 2 files
CC

Offenses:

jh/app/models/foo.rb:3:1: C: Gitlab/NamespacedClass: Classes must be declared inside a module indicating a product domain namespace. For more info: https://gitlab.com/gitlab-org/gitlab/-/issues/212156
class Bar ...
^^^^^^^^^
jh/config/foo.rb:1:1: C: Style/FrozenStringLiteralComment: Missing magic comment # frozen_string_literal: true.
jh/config/foo.rb:2:1: C: Layout/LeadingEmptyLines: Unnecessary blank line at the beginning of the source.
# OK
^^^^

2 files inspected, 3 offenses detected, 2 offenses auto-correctable
Edited by Peter Leitzen

Merge request reports