codeclimate/minidoc

View on GitHub

Showing 57 of 57 total issues

Class has too many lines. [162/100]
Open

class Minidoc
require "minidoc/associations"
require "minidoc/connection"
require "minidoc/counters"
require "minidoc/finders"
Severity: Minor
Found in lib/minidoc.rb by rubocop

Class Minidoc has 29 methods (exceeds 20 allowed). Consider refactoring.
Open

class Minidoc
require "minidoc/associations"
require "minidoc/connection"
require "minidoc/counters"
require "minidoc/finders"
Severity: Minor
Found in lib/minidoc.rb - About 3 hrs to fix

    Method has too many lines. [18/10]
    Open

    def belongs_to(association_name, options = {})
    options[:class_name] ||= "#{self.parent.name}::#{association_name.to_s.camelize}"
     
    association_name = association_name.to_sym
    associations[association_name] = options
    Severity: Minor
    Found in lib/minidoc/associations.rb by rubocop

    Method has too many lines. [16/10]
    Open

    def validate_each(record, attribute, value)
    conditions = scope_conditions(record)
     
    if options[:case_sensitive]
    conditions[attribute] = value
    Severity: Minor
    Found in lib/minidoc/validations.rb by rubocop

    Method create_or_update has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
    Open

    def create_or_update
    new_record? ? create : update
    @new_record = false
    true
    rescue Mongo::Error::OperationFailure => exception
    Severity: Minor
    Found in lib/minidoc.rb - About 35 mins to fix

    Redundant self detected.
    Open

    other.is_a?(self.class) && self.id && self.id == other.id
    Severity: Minor
    Found in lib/minidoc.rb by rubocop

    Redundant self detected.
    Open

    other.is_a?(self.class) && self.id && self.id == other.id
    Severity: Minor
    Found in lib/minidoc.rb by rubocop

    Use alias instead of alias_method in a class body.
    Open

    alias_method :id, :_id
    Severity: Minor
    Found in lib/minidoc/value.rb by rubocop

    Use nested module/class definitions instead of compact style.
    Open

    class Minidoc::RecordInvalid < StandardError
    Severity: Minor
    Found in lib/minidoc/record_invalid.rb by rubocop

    %q-literals should be delimited by ( and ).
    Open

    spec.summary = %q{Lightweight wrapper for MongoDB documents}
    Severity: Minor
    Found in minidoc.gemspec by rubocop

    Missing magic comment # frozen_string_literal: true.
    Open

    require "bundler/gem_tasks"
    Severity: Minor
    Found in Rakefile by rubocop

    Use the return of the conditional for variable assignment and comparison.
    Open

    if options[:case_sensitive]
    conditions[attribute] = value
    else
    conditions[attribute] = /^#{Regexp.escape(value.to_s)}$/i
    end
    Severity: Minor
    Found in lib/minidoc/validations.rb by rubocop

    Use nested module/class definitions instead of compact style.
    Open

    class Minidoc::ReadOnly < Minidoc::Value
    Severity: Minor
    Found in lib/minidoc/read_only.rb by rubocop

    Missing magic comment # frozen_string_literal: true.
    Open

    require "active_support/concern"
    Severity: Minor
    Found in lib/minidoc/associations.rb by rubocop

    Pass __FILE__ and __LINE__ to eval method, as they are used by backtraces.
    Open

    class_eval(<<-EOM)
    Severity: Minor
    Found in lib/minidoc/counters.rb by rubocop

    Missing magic comment # frozen_string_literal: true.
    Open

    require "active_support/concern"
    Severity: Minor
    Found in lib/minidoc/finders.rb by rubocop

    Use nested module/class definitions instead of compact style.
    Open

    class Minidoc::Grid
    Severity: Minor
    Found in lib/minidoc/grid.rb by rubocop

    Use nested module/class definitions instead of compact style.
    Open

    module Minidoc::Validations
    Severity: Minor
    Found in lib/minidoc/validations.rb by rubocop

    Missing magic comment # frozen_string_literal: true.
    Open

    # coding: utf-8
    Severity: Minor
    Found in minidoc.gemspec by rubocop

    Missing magic comment # frozen_string_literal: true.
    Open

    require "active_support/concern"
    Severity: Minor
    Found in lib/minidoc/connection.rb by rubocop
    Severity
    Category
    Status
    Source
    Language