Sha256: f1577a321d830f4dc538e4c89d1552b0589d2cb4a58bd689b3033763ac1bd158
Contents?: true
Size: 1.34 KB
Versions: 5
Compression:
Stored size: 1.34 KB
Contents
# Codependency Codependency is a simple comment-based dependency graph that you can use on arbitrary files. The comment syntax should look familiar to anyone who has used Sprockets, but is not nearly as robust (yet). ## Installation Add this line to your application's Gemfile: gem 'codependency' And then execute: $ bundle Or install it yourself as: $ gem install codependency ## Usage Say you have two files, `bar.rb` and `foo.rb`. `bar` comes before `foo` in a natural naming scheme, but `bar` has a dependency on `foo`. We can express this using a simple comment syntax at the head of the file like this: **bar.rb:** ``` rb #= require foo class Bar end ``` **foo.rb:** ``` rb class Foo end ``` Then, we create a dependency graph to determine the order in which the files might need to be loaded, inserted, or compiled: ``` rb graph = Codependency::Graph.new graph.path << '.' # works like PATH, append search paths for this graph graph << 'bar' # adds a file to this graph, finds its dependencies recursively graph.files # returns a topologically sorted list of relative pathnames ``` ## Contributing 1. Fork it 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Added some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create new Pull Request
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
codependency-2.3.2 | README.md |
codependency-2.3.1 | README.md |
codependency-2.3.0 | README.md |
codependency-2.2.0 | README.md |
codependency-2.1.0 | README.md |