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
- Anything that looks like a path will be identifiable by
.path
. - Anything that looks like a package version will be identifiable by
.version
. - Anything that uses a remote resource that is not https://rubygems.org will be identifiable by
.outsourced
. - Anything that looks like a SHA-1 will be identifiable by
.sha
. - Everything other than "BUNDLED WITH" is an object.
- "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.