Class: LicenseFinder::CocoaPods

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

Instance Attribute Summary

Attributes inherited from PackageManager

#logger

Instance Method Summary collapse

Methods inherited from PackageManager

#active?, #initialize

Constructor Details

This class inherits a constructor from LicenseFinder::PackageManager

Instance Method Details

#current_packagesObject



5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/license_finder/package_managers/cocoa_pods.rb', line 5

def current_packages
  podfile = YAML.load_file(lockfile_path)

  acknowledgements = read_plist(acknowledgements_path)["PreferenceSpecifiers"]

  podfile["PODS"].map do |pod|
    pod = pod.keys.first if pod.is_a?(Hash)

    pod_name, pod_version = pod.scan(/(.*)\s\((.*)\)/).flatten
    pod_acknowledgment = acknowledgements.detect { |hash| hash["Title"] == pod_name } || {}
    CocoaPodsPackage.new(pod_name, pod_version, pod_acknowledgment["FooterText"])
  end
end