Sha256: d99b653cb2feb85adba5ee403ef555df89dd0df17a956d575961cafe945e2847

Contents?: true

Size: 1.3 KB

Versions: 24

Compression:

Stored size: 1.3 KB

Contents

# frozen_string_literal: true

require "dependabot/file_fetchers/base"

module Dependabot
  module FileFetchers
    module Elm
      class ElmPackage < Dependabot::FileFetchers::Base
        def self.required_files_in?(filenames)
          return true if filenames.include?("elm-package.json")

          filenames.include?("elm.json")
        end

        def self.required_files_message
          "Repo must contain an elm-package.json or an elm.json"
        end

        private

        def fetch_files
          fetched_files = []

          fetched_files << elm_package if elm_package
          fetched_files << elm_json if elm_json

          # Note: We *do not* fetch the exact-dependencies.json file, as it is
          # recommended that this is not committed

          check_required_files_present
          fetched_files
        end

        def check_required_files_present
          return if elm_package || elm_json

          path = Pathname.new(File.join(directory, "elm.json")).
                 cleanpath.to_path
          raise Dependabot::DependencyFileNotFound, path
        end

        def elm_package
          @elm_package ||= fetch_file_if_present("elm-package.json")
        end

        def elm_json
          @elm_json ||= fetch_file_if_present("elm.json")
        end
      end
    end
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
dependabot-core-0.81.1 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.81.0 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.80.1 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.80.0 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.79.4 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.79.3 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.79.2 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.79.1 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.79.0 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.78.0 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.77.2 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.77.1 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.77.0 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.76.11 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.76.10 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.76.9 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.76.8 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.76.7 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.76.6 lib/dependabot/file_fetchers/elm/elm_package.rb
dependabot-core-0.76.5 lib/dependabot/file_fetchers/elm/elm_package.rb