class Dependabot::Uv::Language

def deprecated?

def deprecated?
  return false unless detected_version
  return false if unsupported?
  deprecated_versions.include?(detected_version)
end

def initialize(detected_version:, raw_version: nil, requirement: nil)

def initialize(detected_version:, raw_version: nil, requirement: nil)
  super(
    name: LANGUAGE,
    detected_version: major_minor_version(detected_version),
    version: raw_version ? Version.new(raw_version) : nil,
    deprecated_versions: DEPRECATED_VERSIONS,
    supported_versions: SUPPORTED_VERSIONS,
    requirement: requirement,
 )
end

def major_minor_version(version)

def major_minor_version(version)
  major_minor = T.let(T.must(Version.new(version).segments[0..1]&.join(".")), String)
  Version.new(major_minor)
end

def unsupported?

def unsupported?
  return false unless detected_version
  supported_versions.all? { |supported| supported > detected_version }
end