Skip to content

bhouse/solve

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Solve

Build Status Dependency Status Code Climate

A Ruby versioning constraint solver implementing Semantic Versioning 2.0.0-rc.1.

Installation

$ gem install solve

Usage

Create a new graph

graph = Graph.new

Add an artifact to the graph

graph.artifacts("nginx", "1.0.0")

Now add another artifact that has a dependency

graph.artifacts("mysql", "1.2.4-alpha.1").depends("openssl", "~> 1.0.0")

Dependencies can be chained, too

graph.artifacts("ntp", "1.0.0").depends("build-essential").depends("yum")

And now solve the graph with some demands

Solve.it!(graph, ['nginx', '>= 0.100.0'])

Removing an artifact, or dependency from the graph

graph.artifacts("nginx", "1.0.0").delete

artifact.dependencies("nginx", "~> 1.0.0").delete

Authors

About

A constraint solver for Ruby

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%