rambler-digital-solutions/Generamba

View on GitHub

Showing 840 of 840 total issues

Use 2 (not 0) spaces for indentation.
Open

          next_group = group_is_logical ?  final_group.new_group(group_name) : final_group.new_group(group_name, group_name)

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Tab detected.
Open

                                                                [code_module.project_group_path])
Severity: Minor
Found in lib/generamba/module_generator.rb by rubocop

Line is too long. [102/80]
Open

    method_option :test_group_path, :desc => 'Specifies a location in Xcode groups for new test files'
Severity: Minor
Found in lib/generamba/cli/gen_command.rb by rubocop

Tab detected.
Open

                unless file[TEMPLATE_FILE_PATH_KEY]
Severity: Minor
Found in lib/generamba/module_generator.rb by rubocop

Tab detected.
Open

                file_group = nil if file_group == '.'
Severity: Minor
Found in lib/generamba/module_generator.rb by rubocop

Use the new Ruby 1.9 hash syntax.
Open

    method_option :project_targets, :desc => 'Specifies project targets for adding new module files'
Severity: Minor
Found in lib/generamba/cli/gen_command.rb by rubocop

This cop checks hash literal syntax.

It can enforce either the use of the class hash rocket syntax or the use of the newer Ruby 1.9 syntax (when applicable).

A separate offense is registered for each problematic pair.

The supported styles are:

  • ruby19 - forces use of the 1.9 syntax (e.g. {a: 1}) when hashes have all symbols for keys
  • hash_rockets - forces use of hash rockets for all hashes
  • nomixedkeys - simply checks for hashes with mixed syntaxes
  • ruby19nomixed_keys - forces use of ruby 1.9 syntax and forbids mixed syntax hashes

Example: EnforcedStyle: ruby19 (default)

# bad
{:a => 2}
{b: 1, :c => 2}

# good
{a: 2, b: 1}
{:c => 2, 'd' => 2} # acceptable since 'd' isn't a symbol
{d: 1, 'e' => 2} # technically not forbidden

Example: EnforcedStyle: hash_rockets

# bad
{a: 1, b: 2}
{c: 1, 'd' => 5}

# good
{:a => 1, :b => 2}

Example: EnforcedStyle: nomixedkeys

# bad
{:a => 1, b: 2}
{c: 1, 'd' => 2}

# good
{:a => 1, :b => 2}
{c: 1, d: 2}

Example: EnforcedStyle: ruby19nomixed_keys

# bad
{:a => 1, :b => 2}
{c: 2, 'd' => 3} # should just use hash rockets

# good
{a: 1, b: 2}
{:c => 3, 'd' => 4}

Extra empty line detected at class body beginning.
Open


    no_commands {

This cops checks if empty lines around the bodies of classes match the configuration.

Example: EnforcedStyle: empty_lines

# good

class Foo

  def bar
    # ...
  end

end

Example: EnforcedStyle: emptylinesexcept_namespace

# good

class Foo
  class Bar

    # ...

  end
end

Example: EnforcedStyle: emptylinesspecial

# good
class Foo

  def bar; end

end

Example: EnforcedStyle: noemptylines (default)

# good

class Foo
  def bar
    # ...
  end
end

Line is too long. [100/80]
Open

            puts "Project file path: #{code_module.project_file_path}".green if code_module.project_file_path
Severity: Minor
Found in lib/generamba/module_generator.rb by rubocop

Trailing whitespace detected.
Open

      

Tab detected.
Open

                file_group = File.dirname(file[TEMPLATE_NAME_KEY])
Severity: Minor
Found in lib/generamba/module_generator.rb by rubocop

Trailing whitespace detected.
Open

      
Severity: Minor
Found in lib/generamba/cli/setup_command.rb by rubocop

Tab detected.
Open

                file_is_resource = file[TEMPLATE_FILE_IS_RESOURCE_KEY]
Severity: Minor
Found in lib/generamba/module_generator.rb by rubocop

Tab detected.
Open

                                                                                                                dir_path,
Severity: Minor
Found in lib/generamba/module_generator.rb by rubocop

Use targets.count.zero? instead of targets.count == 0.
Open

            if targets.count == 0 || files == nil || files.count == 0 || dir_path == nil || group_path == nil
Severity: Minor
Found in lib/generamba/module_generator.rb by rubocop

This cop checks for usage of comparison operators (==, >, <) to test numbers as zero, positive, or negative. These can be replaced by their respective predicate methods. The cop can also be configured to do the reverse.

The cop disregards #nonzero? as it its value is truthy or falsey, but not true and false, and thus not always interchangeable with != 0.

The cop ignores comparisons to global variables, since they are often populated with objects which can be compared with integers, but are not themselves Interger polymorphic.

Example: EnforcedStyle: predicate (default)

# bad

foo == 0
0 > foo
bar.baz > 0

# good

foo.zero?
foo.negative?
bar.baz.positive?

Example: EnforcedStyle: comparison

# bad

foo.zero?
foo.negative?
bar.baz.positive?

# good

foo == 0
0 > foo
bar.baz > 0

private (on line 103) does not make singleton methods private. Use private_class_method or private inside a class << self block instead.
Open

    def self.path_names_from_path(path)

This cop checks for private or protected access modifiers which are applied to a singleton method. These access modifiers do not make singleton methods private/protected. private_class_method can be used for that.

Example:

# bad

class C
  private

  def self.method
    puts 'hi'
  end
end

Example:

# good

class C
  def self.method
    puts 'hi'
  end

  private_class_method :method
end

Example:

# good

class C
  class << self
    private

    def method
      puts 'hi'
    end
  end
end

private (on line 103) does not make singleton methods private. Use private_class_method or private inside a class << self block instead.
Open

    def self.remove_file_from_build_phases(file_path, build_phases)

This cop checks for private or protected access modifiers which are applied to a singleton method. These access modifiers do not make singleton methods private/protected. private_class_method can be used for that.

Example:

# bad

class C
  private

  def self.method
    puts 'hi'
  end
end

Example:

# good

class C
  def self.method
    puts 'hi'
  end

  private_class_method :method
end

Example:

# good

class C
  class << self
    private

    def method
      puts 'hi'
    end
  end
end

Extra empty line detected at class body end.
Open


  end

This cops checks if empty lines around the bodies of classes match the configuration.

Example: EnforcedStyle: empty_lines

# good

class Foo

  def bar
    # ...
  end

end

Example: EnforcedStyle: emptylinesexcept_namespace

# good

class Foo
  class Bar

    # ...

  end
end

Example: EnforcedStyle: emptylinesspecial

# good
class Foo

  def bar; end

end

Example: EnforcedStyle: noemptylines (default)

# good

class Foo
  def bar
    # ...
  end
end

Line is too long. [116/80]
Open

      module_group = self.retrieve_group_or_create_if_needed(group_path, nil, nil, project, false, group_is_logical)

Line is too long. [100/80]
Open

            if targets.count == 0 || files == nil || files.count == 0 || dir_path == nil || group_path == nil
Severity: Minor
Found in lib/generamba/module_generator.rb by rubocop

Line is too long. [112/80]
Open

      File.extname(file_name) == '.m' || File.extname(file_name) == '.swift' || File.extname(file_name) == '.mm'
Severity
Category
Status
Source
Language