4632 Commits

Author SHA1 Message Date
Max Howell
de56768c6e Prune LinkedKegs too 2011-08-28 11:40:03 +01:00
Max Howell
7c5073fff2 Feature new/removed internal commands
Removed updated external commands, like seriously, who cares? We could add it back as if --verbose is set I guess but in all honesty, if nobody complains then nobody cared.

# We removed many redundant comments
Removed many redundant comments.

Fixes Homebrew/homebrew#7191; though it could be fixed better.
2011-08-26 13:26:46 +01:00
Max Howell
0d6aff5e1b Fix brew update after new install for real this time?
Fixes Homebrew/homebrew#7220.
2011-08-26 11:25:09 +01:00
Charlie Sharpsteen
e527c1c83a Leopard: Eliminate moar Array.count from brew upgrade 2011-08-25 18:02:36 -07:00
Charlie Sharpsteen
f7bd98875b Leopard: Fix undefined method count for Array
Leopard runs Ruby 1.8.6 while Snow Leopard runs 1.8.7 and `Array.count` was not
introduced until 1.8.7.

Using `Array.length` instead.
2011-08-24 17:45:19 -07:00
Max Howell
98fc60db69 brew update uses origin rather than full URL
This is more flexible for forks and personal customisations, and also more useful for us collaborators since the origin HEAD will be kept up-to-date.
2011-08-25 01:20:33 +01:00
Max Howell
36596de68c Force contributors to define a test by adding it to the create template
A little cheeky but it should help us to maintain higher quality.
2011-08-25 00:53:37 +01:00
Max Howell
94abb42567 Don't include LinkedKegs or Aliases with brew edit 2011-08-24 22:30:44 +01:00
Max Howell
13918ff6d9 Record which keg is linked
Will be useful for a variety of reasons, but for now, I'm just using it to ensure install won't install again if something is already installed (use brew upgrade instead).

But means that brew switch and that can work properly etc.
2011-08-24 22:30:44 +01:00
Max Howell
1f95b07ba5 Fix keg exception pretty output 2011-08-24 22:30:43 +01:00
Max Howell
19e387d92e brew upgrade
Consequence: you can no longer install when something is already installed, you must upgrade it. This doesn't apply if the formula in question was unlinked. You can still --force installs though.

Rationale: the old way of installing over the top would leave symlinks to multiple versions in /usr/local if the old version had a file the newer version didn't. The new upgrade command handles everything properly.
2011-08-24 22:30:43 +01:00
Max Howell
4f4d70d457 Prettier brew uses output (columnate) 2011-08-24 22:30:43 +01:00
Max Howell
31885c2a99 Constants that are used once are dumb
It just means nobody knows what is being done without scrolling up and down, up and down the file like a doofus on a pogo stick.
2011-08-24 22:30:42 +01:00
Max Howell
e9aaef0e25 Revise cleanup text, we're removing, not uninstalling 2011-08-24 22:30:42 +01:00
Dave Bayer
84eae3c425 Fix uninstall.rb brew remove --force "Directory not empty" error
Finder activity such as moving the position of an icon can create an unexpected
.DS_Store file in a Cellar directory. This causes `brew remove --force` to throw
an error that is reported as

Error: Directory not empty - /usr/local/Cellar/<formula>

This fix avoids that error, by calling rmtree rather than rmdir.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-08-22 20:26:53 -07:00
Max Howell
471dc987e5 Specify that they are symlinks 2011-08-22 10:26:01 +01:00
Max Howell
df113d3ce6 Only error out for sudo brew install
Note this only happens if Homebrew is *not* installed sudo. Which is most of the time true.

Fixes Homebrew/homebrew#6899
2011-08-17 12:30:21 +01:00
Jack Nagel
32c746ef45 Add keg-only text to brew info output
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-08-11 11:46:35 -07:00
Adam Vandenberg
6666494551 brew doctor: do not check TMPDIR if it is not set 2011-08-07 10:01:52 -07:00
Max Howell
554147fa99 Reset --hard after the first git init
We don't know what revision the tarball was when homebrew was installed, so all we can do really is hard reset. In theory some set of git commands should suffice, but apparently --soft and --mixed resets ended up putting stuff in the index which would break subsequent `brew updates`.

Fixes Homebrew/homebrew#6851
2011-08-06 11:11:06 +01:00
Max Howell
48501e8e1f Prettier brew versions output 2011-08-02 14:45:37 +01:00
Max Howell
cb049409e5 Fix brew doctor if sbin directory doesn't exist 2011-08-02 14:45:03 +01:00
Jack Nagel
fd6c9833c6 Fix brew update local changes bug
Users were seeing local changes in their repository after updating, even
though they had made no local changes.

The repository setup sequence should use `git reset --soft` rather than
vanilla `git reset`, which defaults to '--mixed'. '--soft' updates
_only_ HEAD, leaving the index as-is, allowing future incantations of
`brew update` to proceed without errors.

Fixes Homebrew/homebrew#6732.
2011-08-02 13:21:06 +01:00
Max Howell
616b52e627 Oops, show proper git checkout command 2011-08-02 12:58:16 +01:00
Max Howell
18a54259e9 Improvements to brew versions
The output happens as it is determined, rather than all at once, which is preferable for CLI commands. This meant I had to hard-code the left-justification.

The pre-amble warning is removed. Instead the command outputs the git checkout command for each she that you can type to get that old formula.

I decided that reseting the one file will work 99% of the time and that it is too risky to reset the whole repo, this will roll-back bug fixes. Instead we should add functionality to compat/ in order to support old formula as required. Sometimes deps may have to be rolled-back too, but the user will have to figure this out on an ad-hoc basis. We are assuming a failure sophisticated user anyway, one who would like to get old versions of stuff.

I moved most of the functions into Formula since IMO this makes more conceptual sense.

I made the she get abbreviated by git (using --abbrev-commit) itself so it as short as can be.
2011-08-02 12:34:33 +01:00
Sebastian Staudt
6726fe090f Added new command "versions" 2011-08-02 10:35:30 +01:00
Adam Vandenberg
f30893a968 Fix brew update on Leopard 2011-07-31 10:32:09 -07:00
Adam Vandenberg
733e280e61 fix doctor on 10.5 2011-07-30 22:24:19 -07:00
Max Howell
630c77a362 Exclude brew manpages from unbrewed. 2011-07-30 11:04:04 +01:00
Max Howell
1cfad8f502 Don't abort if /usr/local is not writable
Since this is our new policy for /usr/local.
2011-07-30 11:03:34 +01:00
Adam Vandenberg
8c50cb54c0 audit: make version checks strict only 2011-07-29 08:34:00 -07:00
Max Howell
76745610ec Emphasise the consequence of not installing to /usr/local 2011-07-29 15:21:10 +01:00
Max Howell
01a779655c Writability for /usr/local is no longer required
Provided the user installed with our installer anyway. It creates all the directories that Homebrew will need during its life thus negating the need for root writability.
2011-07-29 14:56:59 +01:00
Max Howell
98ffbeb8f5 Make the check for a valid git repo better
Because the new installer creates the .git directory when it installs.
2011-07-29 14:55:41 +01:00
Max Howell
36ce83fd8d Don't mention the sbin PATH issue unless files are there
Because the new installer will always create /usr/local/sbin. Because we must keep /usr/local root:wheel unless we want to be considered bad citizens.
2011-07-29 14:54:42 +01:00
risk
a10aa12f29 check for a valid $TMPDIR path in brew doctor
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-07-28 19:50:39 -07:00
Adam Vandenberg
e2b21b0b4a Fix brew doctor when no Xcode is detected. 2011-07-26 16:01:30 -07:00
Jack Nagel
5b06a27e99 doctor: be more forgiving about GREP_OPTIONS
Currently, `brew doctor` complains about GREP_OPTIONS being set,
regardless of its value. The cmake formula, for which this check was
introduced, is more specific about what actually makes it fail.

GREP_OPTIONS='--color=auto' will not cause the build to fail, so don't
warn about this.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-07-25 16:25:44 -07:00
Brant Bobby
113eaf26e4 Fix typo in brew doctor command
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-07-22 11:47:13 -07:00
Charlie Sharpsteen
fbff2ee853 Retire check for GCC 4.0 under XCode 4.x
XCode 4.x only includes GCC 4.2. Therefore, having `brew doctor` report that
GCC 4.0 is missing only spreads fear, uncertainty and doubt over a situation
that is status quo.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-07-21 08:10:33 -07:00
Mislav Marohnić
f0eab140f8 doctor: don't report wrong location of autoconf if it's missing
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-07-10 12:18:55 -07:00
Adam Vandenberg
cee1003782 brew-doctor: use String.start_with? 2011-06-19 21:32:54 -07:00
Les Hill
0d44609dfb doctor: check /usr/local for writablity
- Airfoil during the install of InstantOn changes /usr/local to
  root:wheel ownership

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-06-19 09:46:57 -07:00
Max Howell
1587c70357 Don’t output "nothing" messages
This is how we do it in general in Homebrew.
2011-06-17 09:30:25 +01:00
Adam Vandenberg
be63ae9b14 Inclue HOMEBREW_USE_CLANG in --env output 2011-06-16 20:58:06 -07:00
José Martínez
2763fc6f5a Add clang compiler option
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-06-16 20:45:52 -07:00
Adam Vandenberg
ea35d749af be more ruby-like 2011-06-16 20:35:09 -07:00
Adam Vandenberg
00b7e07f45 audit: check for redundant 'version' 2011-06-16 20:31:55 -07:00
Jack Nagel
4b6de22cf2 Fix brew-info when on branch master and github.user set
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-06-16 19:30:19 -07:00
Adam Vandenberg
0523f66bec deps: document -n switch 2011-06-15 09:02:18 -07:00