362 Commits

Author SHA1 Message Date
Mike McQuaid
170c5493a4
Update deprecations
- Add some `odeprecated`
- Make some `odeprecated` now `odisabled`
- Remove `odisabled` code.
- Remove old update migrations
- Remove GCC 4.0 compiler
- Remove Tiger-only code
- Remove 32-bit-only code
- Remove use of LD64
- Remove GCC 4.3 - 4.8 support.
2019-01-08 19:13:46 +00:00
Mike McQuaid
8144667a71
Cleanup periodically if HOMEBREW_INSTALL_CLEANUP is set.
This will become the default in a later version of Homebrew but has an
opt-out through HOMEBREW_NO_INSTALL_CLEANUP.

Also, always cleanup files older than 120 days and set the general
default value for "old" logs, casks etc. to 30 days.
2019-01-03 16:23:44 +00:00
Jarek Wojciechowski
6c2f41b90c Update docs and manpage for HOMEBREW_INSTALL_CLEANUP 2018-10-30 10:19:45 -04:00
Jarek Wojciechowski
51ca60d6d5 add formula cleanup to install and reinstall 2018-10-29 11:23:32 -04:00
Markus Reiter
e9b9ea49a1 Update to RuboCop 0.59.1. 2018-09-17 03:45:59 +02:00
Andrew Janke
0a2d8c3d4d Add --display-times option to install, reinstall, and upgrade 2018-07-14 11:06:03 -04:00
Andrew Janke
c644392a85 Display collected caveats at end of install or upgrade 2018-07-12 20:41:32 -04:00
Afnan Enayet
133c3a3c0b
Fix typo
* change `MacOS` -> `macOS`
* regenerate manpages
2018-07-06 23:06:41 -04:00
Afnan Enayet
9579fadad4
Strip trailing whitespaces
This fixes the rubocop offences, which was blocking Travis
2018-07-05 21:33:29 -04:00
Afnan Enayet
72735aef17
Update documentation and generate manpage
* update references in `--cc` flag, using modern gcc examples
* note that issues should not be filed if `--cc` flag is used
* remove reference to `HOMEBREW_CC` as it should not be exposed to users
* generate manpages using `brew man` with these changes
2018-07-05 17:25:19 -04:00
Afnan Enayet
fa41a66907
Update manpages using man brew
Properly update man pages using the local brew executable (from the repo),
and copy the man pages to the repo.
2018-07-01 18:47:13 -04:00
Markus Reiter
cc93997fb7 Refactor search_taps. 2018-06-07 14:02:31 +02:00
Markus Reiter
0dfad30fb1 Only suggests formulae in brew install. 2018-06-07 14:02:31 +02:00
Markus Reiter
717032d86d Use Searchable module. 2018-06-07 14:02:31 +02:00
Andrew Janke
8b55cb5ecb Refactor commands to remove "require cmd/help" 2018-06-07 04:59:59 -04:00
Markus Reiter
16fb563d49 Refactor MissingFormula spec. 2018-04-20 19:11:22 +02:00
Mike McQuaid
9fca172d03 Fix HOMEBREW_RUBY_WARNINGS="-w"
Fix various circular requirements, method redefinitions, etc.
2018-04-07 20:28:56 +01:00
Mike McQuaid
ed8cae93ab cmd/install: mention brew reinstall
If people are trying to `brew install` an existing version it’s worth
pointing out to them how they can reinstall (as it’s pretty much the
only case where we’re not already suggesting another command).
2018-03-30 14:58:36 +01:00
Harald Nordgren
5db2ed4fbf brew install: search casks if not found 2018-03-25 19:14:14 +02:00
Mike McQuaid
82e82b7fbc install: add --include-test option.
Allow at `install` (or `install --only-dependencies`) time to specify
that test dependencies should be installed. This will allow simplifying
code in `brew test-bot`.

This could also be made an environment variable if desired by
maintainers.
2018-03-15 13:37:34 +00:00
Mike McQuaid
86a6361f4e install: make --only-dependencies fill in missing.
This makes the `brew install --only-dependencies` command more useful by
filling in missing dependencies for a formula even if it's already
installed.
2018-03-13 09:43:29 +00:00
Mike McQuaid
e03f07f302 Rubocop 0.53.0 automatic fixes. 2018-03-08 14:10:02 +00:00
EricFromCanada
1d2b4ed321 docs: add more missing option descriptions
and improve wording or formatting where necessary.
2018-02-01 16:06:17 -05:00
Markus Reiter
9bee9ca575 Use “squiggly” heredocs. 2017-10-18 14:39:09 +02:00
Markus Reiter
175ca909ee Clean up code style and remove .rubocop_todo.yml. 2017-10-08 16:10:37 +02:00
Maxim Belkin
b8d8049f70
install.rb: stop early if there are no formulae to be installed 2017-09-28 14:17:42 -05:00
Mike McQuaid
b8611bd988 formula_installer: simplify callers.
There's a bunch of duplication going on that's not really necessary.
2017-07-28 15:27:47 +01:00
VonUniGE
7957e1a721 Add a suitable explanatory line 2017-07-11 23:43:28 +02:00
VonUniGE
16496a0b0f Update documentation of brew install syntax to match its actual behavior. 2017-07-08 00:22:18 +02:00
Mike McQuaid
7a0aff1080 Autocorrect Rubocop Style/PerlBackrefs. 2017-06-10 20:23:20 +03:00
Mike McQuaid
54e01d76db Merge pull request #2599 from peternewman/patch-1
Fix internal links on the manpage
2017-06-04 11:52:13 +01:00
Mike McQuaid
9e17e44b3e Change manpage internal links in correct location. 2017-06-04 11:12:56 +01:00
Mike McQuaid
5dc11c6b93 install: fix cask install with env filtering.
With `HOMEBREW_ENV_FILTERING` simply running `brew` is not sufficient
to find `brew cask` so the full path needs to be passed.
2017-06-02 22:17:18 +01:00
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
Mike McQuaid
1330b74416 install: don't search when formula is unreadable.
These formulae are detected as missing but exist in an unreadable form.

Fixes #2485
2017-04-18 08:43:39 +01:00
Mike McQuaid
3b14aa2e90 install: use include instead of regex. 2017-04-17 14:56:04 +01:00
Zhiming Wang
363b26801a
install: do not search taps when a qualified formula is missing 2017-04-15 20:27:33 -04:00
Mike McQuaid
879b3360d3 Handle missing receipt on brew install.
For example if this is for a really old keg, keg where a user has
manually removed stuff or used `brew diy`.
2017-04-02 17:02:56 +01:00
Mike McQuaid
566d3cb58b Document all short flags. 2017-04-02 10:14:58 +01:00
Mike McQuaid
d82522060e install: perform rename migrations when needed. 2017-03-31 10:01:46 +01:00
Mike McQuaid
c458ffbd24 install: immediately print FormulaUnavailableError. 2017-03-23 08:39:29 +00:00
Mike McQuaid
f59eb358c2 missing_formula: subsume historic logic.
These methods belong together so combine them in a single class to
provide a simpler API.
2017-03-20 20:37:12 +01:00
Mike McQuaid
80e95b684e blacklist: move to missing_formula class instead.
This will allow extending this class so it can be used by more than
just blacklisting.
2017-03-20 18:20:31 +02:00
Zhiming Wang
1c10a6260f Hint at new location of migrated formulae
Partial implementation of
https://github.com/Homebrew/brew-evolution/pull/15, along with the ability to
search for deleted formulae in git history (inspired by #1996) which is not
described in the proposal.

See also: #1371.
2017-03-20 18:20:31 +02:00
EricFromCanada
aee23ccb03 Add more flags and descriptions to man pages. 2017-03-05 21:45:15 -05:00
Mike McQuaid
ee43c09f7a install: set installed_{as_dependency,on_request}. 2017-01-18 11:23:21 +00:00
Mike McQuaid
7c15944991 Fix documentation for HEAD upgrades.
These can now be done with just `brew upgrade`, like other upgrades.

Fixes #1818.
2017-01-15 02:25:51 -08:00
Mike McQuaid
79f9896d2f bottles: --force-bottle feigns or_later.
When reproducing issues with software that hasn’t been bottled yet on
your version of macOS it can sometimes be helpful to use `or_later`
bottle functionality i.e. just use the bottle for the latest version of
macOS available. This maps well to the existing `--force-bottle`
argument so it will now act as if the latest bottle has a `or_later`
ending.
2017-01-02 16:05:14 +00:00
Uladzislau Shablinski
73a1daa669 cmd/install: allow to install any spec
* installing HEAD keg_only should be possible only if:
  1.
    - Old version installed differs from new one and optlinked
    - `--force` flag is passed
    - HEAD is seriously outdated or outdated with `--fetch-HEAD`
  or 2.
    - Old version installed differs from new one and not optlinked
  or 3.
    - This formula is not installed

* installing keg_only should be possible only if:
  1.
    - Old version installed differs from new one and optlinked
    - `--force` flag is passed
  or 2.
    - Old version installed differs from new one and not optlinked
  or 3.
    - This formula is not installed

* installing HEAD should be possible only if:
  1.
    - Old HEAD is seriously outdated or outdated with `--fetch-HEAD`
  or 2.
    - HEAD is not installed

* installing stable or devel should be possible only if:
  - Old version installed differs from new one
2016-12-03 04:42:04 +03:00
Mike McQuaid
2a53d14b51 Merge pull request #1217 from MatzFan/invalid_build_option_warnings
Invalid build option warnings - supersedes #1088
2016-11-13 10:50:51 +00:00