85 Commits

Author SHA1 Message Date
Jack Nagel
8c6efd8993 Drop pointless use of CannotInstallFormulaError
These are not caught anywhere, just raise the string. Missed in
1b3b61ff08a4ee5979838f7dbc171e9b38e83f7c.
2014-10-20 03:15:12 -05:00
Jack Nagel
f3b7c3236b Consistently call name on formula instead of relying on to_s 2014-09-14 11:19:30 -05:00
Jack Nagel
7bfb12aa45 Install dependencies before an interactive install
Closes Homebrew/homebrew#29121.
2014-08-30 15:02:47 -05:00
Mike McQuaid
4db0aa19c1 install: search when formula isn't found.
If you do `brew install blah` it currently doesn't search for it. This
seems to be unintentional looking at this code as the exception thrown
by ARGV.formulae.each is not caught and handled. Instead, let's handle
this case and provide a little more usability around our taps.

Closes Homebrew/homebrew#31761.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2014-08-25 09:24:30 +01:00
Jack Nagel
10a1952d2c Only "extend self" once on the Homebrew module 2014-06-19 13:10:36 -05:00
Jack Nagel
c6d75bfcec Move head-only checks to cmd/install
Fixes Homebrew/homebrew#30084.
Closes Homebrew/homebrew#30203.
2014-06-16 18:39:59 -05:00
Jack Nagel
f3817b58ee install: move requires to top of file 2014-06-16 13:36:17 -05:00
Misty De Meo
8cb980f7be doctor: Add check for install_name_tool
Closes Homebrew/homebrew#29593.
2014-06-03 22:50:37 -07:00
Jack Nagel
f6fda5651b Remove deprecated --use-{gcc,llvm,clang}
Closes Homebrew/homebrew#29380.
2014-05-19 10:37:45 -05:00
Jack Nagel
1845b39d41 Separate Xcode and CLT doctor checks by OS X version
Closes Homebrew/homebrew#29206.
2014-05-12 18:59:52 -05:00
Andrew Potter
45922f1903 run macports check after failed build instead of before every build
Closes Homebrew/homebrew#28717.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2014-04-27 16:10:28 -07:00
Jack Nagel
eab90dcb56 Rewrite brew reinstall
Fixes Homebrew/homebrew#23928.
2014-03-15 10:53:03 -05:00
Jack Nagel
3b68723fa8 Make FormulaInstaller setup more readable 2014-03-13 15:59:54 -05:00
Jack Nagel
ce5e2aa65c Make debug an installer mode 2014-03-13 15:59:54 -05:00
Jack Nagel
4d02849d43 Make verbose an installer mode 2014-03-13 15:59:54 -05:00
Jack Nagel
908d2ba792 Make interactive an installer mode 2014-03-13 15:59:53 -05:00
Jack Nagel
a96c1a2afc Make force_bottle an explicit installer mode 2014-03-10 14:56:02 -05:00
Jack Nagel
97dd5f61c4 install: explicitly pass used options to the installer 2014-03-10 14:56:02 -05:00
Jack Nagel
a911dd5066 Make build_from_source an explicit installer mode 2014-03-10 14:56:02 -05:00
Jack Nagel
42e60f7c59 Make build_bottle an explicit installer mode 2014-03-10 14:56:01 -05:00
Jack Nagel
1ab5943fb2 Let commands decide what mode the installer should use 2014-03-04 14:06:25 -06:00
Jack Nagel
4c0db19538 Extract installer setup to prelude method 2014-03-04 14:06:25 -06:00
Jack Nagel
c534b1907d Revert "Let commands decide what mode the installer should use"
I'd still like to make this change, but at least for now the initializer
requires ignore_deps to be set correctly.

This reverts commit 881a8855b944fa9bd7dfd598bb9197f79f7a13f0.
2014-03-02 09:01:50 -06:00
Jack Nagel
ffbe5bf22c Let commands decide what mode the installer should use 2014-03-02 00:21:13 -06:00
Jack Nagel
26785dbe5d Use Formula.path 2014-02-28 16:51:15 -06:00
Adam Vandenberg
ae69fa25cc Revert "Recognize --head as an alias for --HEAD"
This reverts commit c32ab0a35a2dfa9b593f759ef0ae8b7af077b0b7.

There are other hard-coded uses of HEAD, in build_options for instance.
These all need to be fixed before enabling this.
2014-02-11 21:25:26 -08:00
Misty De Meo
b1c0380b7b Recognize --head as an alias for --HEAD
Homebrew currently recognizes "--head" during the install process, but
rather than actually fetch HEAD it just nags the user to use the
correct option.	Since we recognize the spelling anyway, this just
promotes the lowercase version to an official alias.

Closes Homebrew/homebrew#26555.
2014-02-09 15:44:49 -08:00
Mike McQuaid
4dd6f0cb4c install, update: AlreadyTappedError never raised. 2014-01-03 21:57:06 +00:00
Jack Nagel
6c04ccfb3b Remove unused variables 2013-12-12 15:42:35 -06:00
Jack Nagel
4443a9f2e1 Emit deprecation warning for --use-{gcc,llvm,clang}
Closes Homebrew/homebrew#24864.
2013-12-02 01:17:32 -06:00
Mike McQuaid
b0bf181788 install: search when formula isn't found. 2013-10-31 17:20:00 -07:00
Mike McQuaid
ce8123badd install: print osx-gcc-installer doctor warning. 2013-10-30 11:28:37 -07:00
Mike McQuaid
98b28f5ac3 Different regex for user/tap/formula and user/tap.
Closes Homebrew/homebrew#23430.
2013-10-22 11:58:40 +01:00
Mike McQuaid
b7000aec37 install: silently ignore already tapped taps. 2013-10-21 20:16:57 +01:00
Mike McQuaid
0055e4dc5f install: fix trying to tap local bottles. 2013-10-21 19:49:09 +01:00
Mike McQuaid
c71492561f install: tap if full tap formula format given.
Closes Homebrew/homebrew#23411.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2013-10-21 18:53:24 +01:00
Xiyue Deng
896173a999 Revert Library/Homebrew/cmd/install.rb to 4b320eec.
* Fix problem when install exception got swallow and reinstall thinks it
  succeeded.
2013-09-05 12:24:21 -07:00
Samuel John
6ae2e872d3 reinstall cleanup 2013-09-05 14:59:33 +02:00
Xiyue Deng
8aae1dac7b Make reinstall transaction safe.
* Aborting during reinstall will now restore the originally installed
  keg.
  - Change install code to pass on CannotInstallFormulaError exception
    to caller so it can be reused in reinstall.
* Add "--force-new-install" flag to force installing a new formula.

Closes Homebrew/homebrew#22190.

Signed-off-by: Samuel John <github@SamuelJohn.de>
2013-09-05 14:02:29 +02:00
Jack Nagel
50db35e5d3 Use Hardware::CPU module 2013-06-14 10:34:17 -05:00
Jack Nagel
2045217a68 install: remove overcautious array manipulation 2013-06-12 09:02:20 -05:00
Adam Vandenberg
4c9ac19e87 Consolidate sudo checks.
Closes Homebrew/homebrew#20318.
2013-06-08 20:44:56 -07:00
Jack Nagel
3755b33a97 Refactor Xcode/CLT version checks 2013-05-22 22:30:38 -05:00
Jack Nagel
12932a51b3 Don't error out when a package is already installed
Fixes Homebrew/homebrew#17010.
2013-04-03 18:27:28 -05:00
Jack Nagel
5c799ef8c8 Don't attempt installation multiple times
When a dependency of a formula specified on the command-line is also
specified, *after* the dependent formula, installation proceeds as part
of the dependent's dependency tree and then is attempted again because
the user asked for it explicitly. This results in the installer raising
a CannotInstallFormulaError because it has already been installed.

For example:

  $ brew install graphviz pkg-config
  ==> Installing graphviz dependency: pkg-config
  ...
  ==> Installing graphviz
  ...
  Error: pkg-config-0.27.1 already installed

We already have a mechanism for dealing with this, but it does not kick
in early enough. Move the installation attempt check into
FormulaInstaller#check_install_sanity and catch the exception in the
appropriate places.

Fixes Homebrew/homebrew#16957.
2013-01-10 16:46:54 -06:00
Misty De Meo
1bce10ad6c Replace sceaga/homebrew with mistydemeo/tigerbrew
@sceaga has discontinued his homebrew fork, so tigerbrew is now PPC/
Tiger users' best bet.
2012-12-27 21:55:15 -04:00
Jack Nagel
3dcce70a6a Better reporting for MacPorts/Fink installations
closes Homebrew/homebrew#15853.
2012-12-17 17:18:22 -06:00
Adam Vandenberg
5e212a76e3 Error out on lowercase --head parameter to install.
Fixes Homebrew/homebrew#14815.
2012-11-01 08:08:40 -07:00
Max Howell
b98c4792d0 Doctor check for unlicensed Xcode
Checking the license text is probably the most future proofed method. Though for future reference other possible methods are listed in the below ticket.

Closes Homebrew/homebrew#14558.
2012-08-31 10:22:11 -04:00
Adam Vandenberg
bd1a7e2690 remove trailing whitespace 2012-08-10 07:23:48 -07:00