Class: LicenseFinder::Mix

Inherits:
PackageManager show all
Defined in:
lib/license_finder/package_managers/mix.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from PackageManager

#active?, command_exists?, #current_packages_with_relations, #detected_package_path, installed?, #prepare, takes_priority_over

Constructor Details

#initialize(options = {}) ⇒ Mix

Returns a new instance of Mix.



5
6
7
8
9
# File 'lib/license_finder/package_managers/mix.rb', line 5

def initialize(options = {})
  super
  @command = options[:mix_command] || Mix.package_management_command
  @deps_path = Pathname(options[:mix_deps_dir] || 'deps')
end

Class Method Details

.package_management_commandObject



22
23
24
# File 'lib/license_finder/package_managers/mix.rb', line 22

def self.package_management_command
  'mix'
end

.prepare_commandObject



26
27
28
# File 'lib/license_finder/package_managers/mix.rb', line 26

def self.prepare_command
  'mix deps.get'
end

Instance Method Details

#current_packagesObject



11
12
13
14
15
16
17
18
19
20
# File 'lib/license_finder/package_managers/mix.rb', line 11

def current_packages
  mix_output.map do |name, version|
    MixPackage.new(
      name,
      version,
      install_path: @deps_path.join(name),
      logger: logger
    )
  end
end

#possible_package_pathsObject



30
31
32
# File 'lib/license_finder/package_managers/mix.rb', line 30

def possible_package_paths
  [project_path.join('mix.exs')]
end