github.com/replit/upm@v0.0.0-20240423230255-9ce4fc3ea24c/resources/ruby/list-specfile.rb (about)

     1  # This is a Ruby script which dumps relevant information from the
     2  # Gemfile to stdout in JSON format. The JSON is a map from package
     3  # names to specs, both strings.
     4  
     5  require 'bundler'
     6  require 'json'
     7  
     8  dsl = Bundler::Dsl.new
     9  dsl.eval_gemfile("Gemfile")
    10  
    11  result = {}
    12  dsl.dependencies.each do |dep|
    13    result[dep.name] = dep.requirement.requirements.map{ |req| req.join(" ") }.join(", ")
    14  end
    15  
    16  puts result.to_json