@snyk/gemfile

A Gemfile.lock parser for Node.js represented with JSON.

Usage no npm install needed!

<script type="module">
  import snykGemfile from 'https://cdn.skypack.dev/@snyk/gemfile';
</script>

README

gemfile

A Gemfile.lock parser for Node.js represented with JSON.

Installation

$ npm install gemfile

API

// Takes a path to a Gemfile.lock.
parse(filename) // String => Promise => String
parseSync(filename) // String => String

// Takes the Gemfile.lock in String format.
interpret(gemfile) // String => String

Output Expectations

  1. Anything that looks like a path will be identifiable by .path.
  2. Anything that looks like a package version will be identifiable by .version.
  3. Anything that uses a remote resource that is not https://rubygems.org will be identifiable by .outsourced.
  4. Anything that looks like a SHA-1 will be identifiable by .sha.
  5. Everything other than "BUNDLED WITH" is an object.
  6. "BUNDLED WITH" is not an Object, but rather a String containing the version.

Tests

$ npm test

Contributions

Please feel free to improve the script and submit a pull request.