Sha256: 387f5f0161868af1fbfd93ff2a630fec453d2047fcf747cb17b46b0ecf78120a

Contents?: true

Size: 1.22 KB

Versions: 9

Compression:

Stored size: 1.22 KB

Contents

module Codesake
  module Dawn
    module Kb
      class DeprecationCheck
        include BasicCheck

        DEPRECATION_MATRIX = [
          # {:gem=>"rails", :versions=>['0.x', '1.x', '2.x']},
          # {:gem=>"sinatra", :versions=>['0.x', '1.x', '2.x']},
          # {:gem=>"padrino", :versions=>['0.x', '1.x', '2.x']},
          {:gem=>"ruby", :versions=>['1.1.x', '1.2.x', '1.3.x', '1.4.x', '1.5.x', '1.6.x', '1.7.x', '1.8.7']},
        ]

        attr_accessor :detected
        attr_accessor :enable_warning

        def initialize(options={})
          super(options)
          @enable_warning ||= options[:enable_warning]
          debug_me "DeprecationCheck initialized"
          $logger.warn "MVC deprecation check is disable by now" unless self.enable_warning.nil?
        end

        def vuln?
          debug_me "vuln? @detected is #{@detected}"
          v = Codesake::Dawn::Kb::VersionCheck.new
          v.debug = self.debug
          v.detected = @detected[:version]

          DEPRECATION_MATRIX.each do |dm|
            v.deprecated = dm[:versions] if dm[:gem] == @detected[:gem]
          end
          return false if v.deprecated.nil?
          return v.is_detected_deprecated?
        end

      end
    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
dawnscanner-1.2.99 lib/codesake/dawn/kb/deprecation_check.rb
codesake-dawn-1.2.99 lib/codesake/dawn/kb/deprecation_check.rb
codesake-dawn-1.2.0 lib/codesake/dawn/kb/deprecation_check.rb
codesake-dawn-1.1.3 lib/codesake/dawn/kb/deprecation_check.rb
codesake-dawn-1.1.2 lib/codesake/dawn/kb/deprecation_check.rb
codesake-dawn-1.1.1 lib/codesake/dawn/kb/deprecation_check.rb
codesake-dawn-1.1.0 lib/codesake/dawn/kb/deprecation_check.rb
codesake-dawn-1.1.0.rc2 lib/codesake/dawn/kb/deprecation_check.rb
codesake-dawn-1.1.0.rc1 lib/codesake/dawn/kb/deprecation_check.rb