Files
brew/Library/Homebrew
Mike McQuaid ef59a751f4 Improve some brew install messaging.
Improve the messaging around `brew install` when there's a possible user
action such as an `upgrade` or `link` and don't tell people to
`install --force` when it's unnecessary.

While I did this, tweak the output and function usage in a couple of
related places.

Some example output before this change:
```
Warning: openssl is a keg-only and another version is linked to opt.
Use `brew install --force` if you want to install this version
Warning: mysql@5.6 is a keg-only and another version is linked to opt.
Use `brew install --force` if you want to install this version
Warning: analog-6.0_1 already installed
Warning: bash-completion@2-2.5 already installed, it's just not linked.
```

Some example output after this change:
```
Error: openssl 1.0.2k is already installed
To upgrade to 1.0.2l, run `brew upgrade openssl`
Warning: mysql@5.6 5.6.36_1 is already installed
Warning: analog 6.0_1 is already installed
Warning: bash-completion@2 2.5 is already installed, it's just not linked.
You can use `brew link bash-completion@2` to link this version.
```
2017-05-27 10:15:37 +01:00
..
2017-05-27 10:15:37 +01:00
2017-05-24 23:54:36 +02:00
2017-05-08 13:37:28 +02:00
2017-04-22 16:28:07 +01:00
2017-05-24 23:54:36 +02:00
2017-05-13 11:42:01 +01:00
2017-05-27 10:15:37 +01:00
2017-05-24 09:12:21 -07:00
2016-11-21 08:48:26 +00:00
2017-05-22 02:51:17 +02:00
2017-04-22 16:28:07 +01:00
2017-05-02 19:03:03 +01:00
2017-04-22 16:28:07 +01:00
2017-02-23 10:49:20 -08:00
2017-04-23 15:10:18 +01:00
2017-04-22 16:28:07 +01:00
2017-05-01 10:58:26 -07:00
2017-04-30 21:11:28 +02:00
2017-01-04 11:13:41 +00:00
2017-05-22 20:39:17 +01:00
2017-01-04 11:13:41 +00:00
2017-05-15 17:23:40 +02:00
2017-05-09 20:00:11 +01:00
2017-04-02 17:02:56 +01:00
2017-04-25 13:40:40 +01:00
2017-05-08 13:37:28 +02: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!