Module: Deprecool::LockfileParser

Extended by:
LockfileParser
Included in:
LockfileParser
Defined in:
lib/deprecool/lockfile_parser.rb

Instance Method Summary collapse

Instance Method Details

#parse!(path_to_gemfile_lock = 'Gemfile.lock', parser: Bundler::LockfileParser) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/deprecool/lockfile_parser.rb', line 9

def parse!(path_to_gemfile_lock = 'Gemfile.lock', parser: Bundler::LockfileParser)
  lockfile = File.read(path_to_gemfile_lock)

  parsed = parser.new(lockfile)

  versions = parsed.specs.map do |spec|
    { gem: spec.name, version: spec.version.to_s }
  end

  gem, version = parsed.ruby_version.split
  versions << { gem:, version: }
end