Showing 6 of 6 total issues
Class OembedProvider
has 21 methods (exceeds 20 allowed). Consider refactoring. Open
class OembedProvider
attr_reader :url, :options
def initialize(url, options = {})
@url = url
Reverse the order of the operands "https" == uri.scheme
. Open
"https" == uri.scheme
- Read upRead up
- Exclude checks
This cop checks for Yoda conditions, i.e. comparison operations where readability is reduced because the operands are not ordered the same way as they would be ordered in spoken English.
Example: EnforcedStyle: allcomparisonoperators (default)
# bad
99 == foo
"bar" != foo
42 >= foo
10 < bar
# good
foo == 99
foo == "bar"
foo <= 42
bar > 10
Example: EnforcedStyle: equalityoperatorsonly
# bad
99 == foo
"bar" != foo
# good
99 >= foo
3 < a && a < 5
Unnecessary utf-8 encoding comment. Open
# coding: utf-8
- Exclude checks
Add an empty line after magic comments. Open
lib = File.expand_path("../lib", __FILE__)
- Read upRead up
- Exclude checks
Checks for a newline after the final magic comment.
Example:
# good
# frozen_string_literal: true
# Some documentation for Person
class Person
# Some code
end
# bad
# frozen_string_literal: true
# Some documentation for Person
class Person
# Some code
end
required_ruby_version
(2.0, declared in film_snob.gemspec) and TargetRubyVersion
(2.1, declared in .rubocop.yml) should be equal. Open
spec.required_ruby_version = ">= 2.0.0"
- Read upRead up
- Exclude checks
Checks that required_ruby_version
of gemspec and TargetRubyVersion
of .rubocop.yml are equal.
Thereby, RuboCop to perform static analysis working on the version
required by gemspec.
Example:
# When `TargetRubyVersion` of .rubocop.yml is `2.3`.
# bad
Gem::Specification.new do |spec|
spec.required_ruby_version = '>= 2.2.0'
end
# bad
Gem::Specification.new do |spec|
spec.required_ruby_version = '>= 2.4.0'
end
# good
Gem::Specification.new do |spec|
spec.required_ruby_version = '>= 2.3.0'
end
# good
Gem::Specification.new do |spec|
spec.required_ruby_version = '>= 2.3'
end
# good
Gem::Specification.new do |spec|
spec.required_ruby_version = ['>= 2.3.0', '< 2.5.0']
end
Use %i
or %I
for an array of symbols. Open
MEDIA_METHODS = [:site, :id, :clean_url, :title, :html].freeze
- Read upRead up
- Exclude checks
This cop can check for array literals made up of symbols that are not using the %i() syntax.
Alternatively, it checks for symbol arrays using the %i() syntax on projects which do not want to use that syntax.
Configuration option: MinSize
If set, arrays with fewer elements than this value will not trigger the
cop. For example, a MinSize of
3` will not enforce a style on an array
of 2 or fewer elements.
Example: EnforcedStyle: percent (default)
# good
%i[foo bar baz]
# bad
[:foo, :bar, :baz]
Example: EnforcedStyle: brackets
# good
[:foo, :bar, :baz]
# bad
%i[foo bar baz]