Mike McQuaid 20106e4268 dependency: don't recurse infinitely.
If we have a dependency cycle ensure that infinite recursion does not
result by storing state in a stack which we push/pop from for each
level of recursion and verify that we haven’t been through this
dependency already.

Closes Homebrew/homebrew#47933.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2016-01-17 20:12:03 +00:00
..
2015-08-03 13:22:35 +01:00
2016-01-03 19:08:10 +00:00
2015-08-03 13:22:35 +01:00
2016-01-03 19:08:11 +00:00
2016-01-09 10:30:19 +00:00
2015-12-26 23:00:38 +01:00
2015-11-23 22:56:18 -08:00
2015-12-09 16:56:59 +08:00
2016-01-04 13:17:21 +01:00
2016-01-03 19:08:11 +00:00
2015-08-03 13:22:35 +01:00
2016-01-05 16:08:25 +01:00
2015-08-03 13:22:35 +01:00
2015-12-13 01:29:52 +08:00
2015-08-03 13:22:35 +01:00
2015-08-03 13:22:35 +01:00
2016-01-09 20:28:15 +08:00
2015-08-03 13:22:35 +01:00
2015-12-09 16:56:59 +08:00
2015-10-18 22:57:42 +08:00
2015-08-03 13:22:35 +01:00
2016-01-13 21:37:22 +01:00
2016-01-15 16:26:04 +08:00
2015-08-03 13:22:35 +01:00

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!