Module: Albacore::Paket

Defined in:
lib/albacore/paket.rb

Class Method Summary collapse

Class Method Details

.parse_line(line) ⇒ Object



6
7
8
9
10
11
12
13
14
15
# File 'lib/albacore/paket.rb', line 6

def self.parse_line line
  if (m = line.match(/^\s*(?<id>[\w\-\.]+) \((?<ver>[\.\d\w\-]+)\)( - )?((framework: >= (?<tf>\w+))|(redirects: (?<redir>\w+)))?$/i))
    ver = Albacore::SemVer.parse(m[:ver], '%M.%m.%p', false)
    OpenStruct.new(:id               => m[:id],
                   :version          => m[:ver],
                   :target_framework => m[:tf] || 'net40',
                   :redirects        => m[:redir] || nil,
                   :semver           => ver)
  end
end

.parse_paket_lock(data) ⇒ Object



17
18
19
20
21
# File 'lib/albacore/paket.rb', line 17

def self.parse_paket_lock data
  data.map { |line| parse_line line }.
       compact.
       map { |package| [package.id, package] }
end