lib/old_tasks/manage_gems.rake

Summary

Maintainability
Test Coverage

Block has too many lines. [104/25]
Open

namespace :manage_gems do
  task :exec_action do
    # default
    ENV['GEMS_ACTION'] ||= 'update'

Severity: Minor
Found in lib/old_tasks/manage_gems.rake by rubocop

This cop checks if the length of a block exceeds some maximum value. Comment lines can optionally be ignored. The maximum allowed length is configurable. The cop can be configured to ignore blocks passed to certain methods.

Block has too many lines. [46/25]
Open

  task :exec_action do
    # default
    ENV['GEMS_ACTION'] ||= 'update'

    if !`echo $USER`.strip.casecmp('root').zero?
Severity: Minor
Found in lib/old_tasks/manage_gems.rake by rubocop

This cop checks if the length of a block exceeds some maximum value. Comment lines can optionally be ignored. The maximum allowed length is configurable. The cop can be configured to ignore blocks passed to certain methods.

Block has too many lines. [29/25]
Open

    required[ENV['GEMS_TO_GRAB']].each do |key, value|
      if !value.blank? && value.kind_of?(Hash)

        # Pre install command (like clearing old gem versions)
        unless value['pre_command'].blank?
Severity: Minor
Found in lib/old_tasks/manage_gems.rake by rubocop

This cop checks if the length of a block exceeds some maximum value. Comment lines can optionally be ignored. The maximum allowed length is configurable. The cop can be configured to ignore blocks passed to certain methods.

Block has too many lines. [28/25]
Open

  namespace :required do
    desc 'Install required gems'
    task :install do
      ENV['GEMS_TO_GRAB'] = 'gems'
      ENV['GEMS_ACTION'] = 'install'
Severity: Minor
Found in lib/old_tasks/manage_gems.rake by rubocop

This cop checks if the length of a block exceeds some maximum value. Comment lines can optionally be ignored. The maximum allowed length is configurable. The cop can be configured to ignore blocks passed to certain methods.

Use each_key instead of each.
Open

          value['gem_deps'].each do |dependancy_key, dependancy_value|
Severity: Minor
Found in lib/old_tasks/manage_gems.rake by rubocop

This cop checks for uses of each_key and each_value Hash methods.

Note: If you have an array of two-element arrays, you can put parentheses around the block arguments to indicate that you're not working with a hash, and suppress RuboCop offenses.

Example:

# bad
hash.keys.each { |k| p k }
hash.values.each { |v| p v }
hash.each { |k, _v| p k }
hash.each { |_k, v| p v }

# good
hash.each_key { |k| p k }
hash.each_value { |v| p v }

TODO found
Open

# TODO: confirm proper way to call either invoke or execute for Rake > 1.8
Severity: Minor
Found in lib/old_tasks/manage_gems.rake by fixme

include is used at the top level. Use inside class or module.
Open

include RequiredSoftware
Severity: Minor
Found in lib/old_tasks/manage_gems.rake by rubocop

This cop checks that include, extend and prepend exists at the top level. Using these at the top level affects the behavior of Object. There will not be using include, extend and prepend at the top level. Let's use it inside class or module.

Example:

# bad
include M

class C
end

# bad
extend M

class C
end

# bad
prepend M

class C
end

# good
class C
  include M
end

# good
class C
  extend M
end

# good
class C
  prepend M
end

Favor unless over if for negative conditions.
Open

    if !`echo $USER`.strip.casecmp('root').zero?
      puts "\n/!\\ IMPORTANT /!\\\n\n"
      puts 'This script has detected you are trying to run this as either a non root account or using sudo.'
      puts 'Please make sure you are installing these gems as a root user or as a user that will install gems in the system wide location.'
      puts 'Installing them as anyone without permission to the gem paths will install to your user account, not system wide.'
Severity: Minor
Found in lib/old_tasks/manage_gems.rake by rubocop

Checks for uses of if with a negated condition. Only ifs without else are considered. There are three different styles:

- both
- prefix
- postfix

Example: EnforcedStyle: both (default)

# enforces `unless` for `prefix` and `postfix` conditionals

# bad

if !foo
  bar
end

# good

unless foo
  bar
end

# bad

bar if !foo

# good

bar unless foo

Example: EnforcedStyle: prefix

# enforces `unless` for just `prefix` conditionals

# bad

if !foo
  bar
end

# good

unless foo
  bar
end

# good

bar if !foo

Example: EnforcedStyle: postfix

# enforces `unless` for just `postfix` conditionals

# bad

bar if !foo

# good

bar unless foo

# good

if !foo
  bar
end

Prefer Object#is_a? over Object#kind_of?.
Open

      if !value.blank? && value.kind_of?(Hash)
Severity: Minor
Found in lib/old_tasks/manage_gems.rake by rubocop

This cop enforces consistent use of Object#is_a? or Object#kind_of?.

Example: EnforcedStyle: is_a? (default)

# bad
var.kind_of?(Date)
var.kind_of?(Integer)

# good
var.is_a?(Date)
var.is_a?(Integer)

Example: EnforcedStyle: kind_of?

# bad
var.is_a?(Time)
var.is_a?(String)

# good
var.kind_of?(Time)
var.kind_of?(String)

Use missing_lib_count.positive? instead of missing_lib_count > 0.
Open

      if missing_lib_count > 0
Severity: Minor
Found in lib/old_tasks/manage_gems.rake 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

Unused block argument - dependancy_value. If it's necessary, use _ or _dependancy_value as an argument name to indicate that it won't be used.
Open

          value['gem_deps'].each do |dependancy_key, dependancy_value|
Severity: Minor
Found in lib/old_tasks/manage_gems.rake by rubocop

This cop checks for unused block arguments.

Example:

# bad

do_something do |used, unused|
  puts used
end

do_something do |bar|
  puts :foo
end

define_method(:foo) do |bar|
  puts :baz
end

Example:

#good

do_something do |used, _unused|
  puts used
end

do_something do
  puts :foo
end

define_method(:foo) do |_bar|
  puts :baz
end

There are no issues that match your filters.

Category
Status