apainintheneck 3834ef1b73 tap: cache more things at the Tap level
I added two new methods to cache both installed and all taps.
All taps includes core taps no matter if they're installed locally
since they're always provided by the API anyway.

This makes it easier to cache `Tap.each` while making the code
easier to reason about. It also will be useful because we'll
be able to avoid the `Tap.select(&:installed?` pattern that has
recently invaded the codebase.

Note: I also stopped clearing all tap instance caches before
tests. Running `Tap.each` would cache existing taps which would
lead to unexpected behavior since the only existing tap before
each test is the core tap. This is the only tap whose directory
is not cleaned up between tests so we just clear it's cache directly.
We also now clear all tap instances after tests as well regardless
of whether the API was used that time.
2024-03-08 23:22:00 -08:00
..
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-02-09 00:11:05 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-08 18:50:12 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-02-11 21:53:21 -05:00
2023-11-11 05:36:40 +00:00
2024-03-07 16:20:20 +00:00
2023-12-31 11:29:57 -08:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 20:44:20 -05:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2023-11-05 08:55:58 -08:00
2024-02-18 15:47:56 -08:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-02-18 15:47:56 -08:00
2024-03-07 16:20:20 +00:00
2024-02-04 15:42:26 +01:00
2023-12-27 15:29:33 -08:00
2024-03-07 16:20:20 +00:00
wip
2024-02-11 20:27:38 -08:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-02-18 15:47:56 -08:00
2023-12-06 00:01:25 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-01-12 15:37:24 +01:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-02-22 22:03:54 +01:00
2024-03-08 23:22:00 -08:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00
2024-03-07 16:20:20 +00:00

Homebrew Ruby API

This is the 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!