class RBS::Collection::Config::Lockfile

def self.from_lockfile(lockfile_path:, data:)

def self.from_lockfile(lockfile_path:, data:)
  path = Pathname(data["path"])
  if p = data["gemfile_lock_path"]
    gemfile_lock_path = Pathname(p)
  end
  lockfile = Lockfile.new(lockfile_path: lockfile_path, path: path, gemfile_lock_path: gemfile_lock_path)
  if gems = data["gems"]
    gems.each do |gem|
      src = gem["source"]
      source = Sources.from_config_entry(src, base_directory: lockfile_path.dirname)
      lockfile.gems[gem["name"]] = {
        name: gem["name"],
        version: gem["version"],
        source: source
      }
    end
  end
  lockfile
end