
Fixes #1848 by sharing recursive dependency resolution between dependencies and requirements. Coincidentally, this also fixes the errors introduced by #1784 that necessitated it being reverted in #1797.
Homebrew's Formula API
This is the (partially) documented public API for Homebrew.
The main class you should look at is the {Formula} class (and classes linked from there). That's the class that's used to create Homebrew formulae (i.e. package descriptions). Assume anything else you stumble upon is private.
You may also find the Formula Cookbook and Ruby Style Guide helpful in creating formulae.
Good luck!