Skip to main content

Parse Ruby's Gemfiles

Project description

Installation

If using pip, use the command sudo pip install gemfileparser
Else use the following commands
git clone https://github.com/balasankarc/gemfileparser.git
cd gemfileparser
python setup.py install

Usage

from gemfileparser import gemfileparser
parser = gemfileparser.GemfileParser(<path to Gemfile>, <name of the application (optional)>)
dependency_dictionary = parser.parse()

The parse() method returns a dict object of the following format

{
'development': [list of dependency objects inside group 'development'],
'runtime': [list of runtime dependency objects],
.
.
.}

Each dependency object contains the following attributes

name - Name of the gem
requirement - Version requirement
autorequire - Autorequire value
source - Source URL of the gem
parent - Dependency of which gem
group - Group in which gem is a member of (default : runtime)

Example

from gemfileparser import gemfileparser
n = gemfileparser.GemfileParser('Gemfile', 'diaspora')
deps = n.parse()
for key in deps:
   if deps[key]:
       print key
       for dependency in deps[key]:
           print "  ", dependency

License

gemfileparser is released under GNU GPL version 3 (or above) License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gemfileparser-0.2.2.tar.gz (3.1 kB view details)

Uploaded Source

File details

Details for the file gemfileparser-0.2.2.tar.gz.

File metadata

  • Download URL: gemfileparser-0.2.2.tar.gz
  • Upload date:
  • Size: 3.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for gemfileparser-0.2.2.tar.gz
Algorithm Hash digest
SHA256 aad9784ef5fc9a45ad54227e4b67ca23f04f7c307b14b6b02be0248669adc50a
MD5 335335ed6da9a909a838418b46adaf52
BLAKE2b-256 3238004bed3c65d9c8c0dc5f28cb8c8b972354b0c50e29284f71efa8044dfca7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page