170 Commits

Author SHA1 Message Date
Jack Nagel
6ebcccdcc5 Make FileUtils extension available globally
Now that we are monkeypatching copy_metadata, we should load our
extension up front for consistency.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-27 16:22:01 -05:00
Jack Nagel
e909b54c96 Tighten post-install checks
- Avoid ENOTDIR by ensuring that the directories we are checking are
   actually directories.
 - DRY up the check_PATH method; paths are already available via the
   global ORIGINAL_PATHS.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-11 00:45:45 -05:00
Jack Nagel
f5d0fbcce6 Remove dead code
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-06 17:34:11 -05:00
Jack Nagel
c227792bc1 Don't raise when expanding ORIGINAL_PATHS
File.expand_path raises ArgumentError when it is passed a path with a
nonexistent username, e.g.:

  $ PATH=~foo/bin:$PATH brew
  /usr/local/Library/Homebrew/global.rb:97:in `expand_path': user foo
  doesn't exist (ArgumentError)

However, `brew doctor` does its own expansion of PATH entries and
outputs warnings if this happens, so let's just ignore it here and
continue on our way.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-06 10:40:55 -05:00
Adam Vandenberg
1eb808c109 Homebrew 0.9.3 for superenv 2012-08-29 10:08:46 -07:00
Max Howell
24bcc694e5 Speed up brew instantiation
Adding MacOS.dev_tools_path to our PATH was slow. We no longer need to do this because of the previous commit making a script wrapper for git and svn. It was slow because the function calls out to lots of slow utilities to determine this path.
2012-08-29 12:41:36 -04:00
Jack Nagel
f471c3e99f MacOS.dev_tools_path: return nil if not found
This matches the semantics of other path methods, such as Xcode.prefix.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-20 15:00:32 -05:00
Jack Nagel
9b1bb58214 HOMEBREW_CONTRIB
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-20 13:57:01 -05:00
Jack Nagel
c9f824b54a Make Set available globally
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-12 00:58:31 -05:00
Brandon Black
bcde6432f3 Fix issues with writable? detection in brew doctor
Closes Homebrew/homebrew#13689.

Signed-off-by: Max Howell <mxcl@me.com>

There are subtle distinctions between writable? and writable_real? we don't
understand precisely why we need this, but it fixes the bugs :/
2012-08-06 22:02:38 -04:00
Jack Nagel
1050261316 Homebrew 0.9.2
0.9.2 includes the formula specs refactoring.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-07-04 22:55:25 -05:00
Jack Nagel
60b518278b Refactor PATH setup
- Make ORIGINAL_PATHS an array of Pathnames instead of strings
 - Append the dev tools path once in global.rb instead of build.rb

Closes Homebrew/homebrew#13075.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-06-29 00:55:01 -05:00
Adam Vandenberg
dcc2765947 Homebrew 0.9.1
Bump the version number due to the Xcode/CLT change.
2012-06-27 10:28:24 -07:00
Mike McQuaid
ef65f3654f Improve bug report wiki page text.
Fixes Homebrew/homebrew#12674.
2012-06-25 19:49:44 -05:00
samueljohn
725feb3db1 Core change: XCode only install, with CLT or both
Allow XCode without the Command Line Tools to
work with homebrew, so it's not necessary
to register an Apple Dev ID and/or go to the
XCode prefs and download the CLT. Yay!

Further, this commit allows to use the CLT
solely (without the need for XCode).
Saves quite some megs.
(Some furmulae require xcodebuild)

Of course XCode together with the CLT is still
fine and has been tested on 10.7 and 10.6
with Xcode 4 and Xcode 3.

Only on Lion or above, tell the user about the options,
which are
- Xcode without CLT
- CLT without Xcode
- both (ok, it's not directly stated, but implicit)
So if no Xcode is found and we are on Lion or above,
we don't fail but check for the CLTs now.
For older Macs, the old message that Xcode is needed
and the installer should be run is still displayed.
If the CLT are not found but Xcode is, then we
print out about the experimental status of this setup.

Closes Homebrew/homebrew#10510.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2012-06-24 19:11:06 -07:00
Mike McQuaid
0cbdeeaa3c Exit with bad exit code on command failures. 2012-03-29 18:44:37 +11:00
Jack Nagel
fa837edcbb Update Xcode version checks
Closes Homebrew/homebrew#11044.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-20 19:06:59 -05:00
Jack Nagel
f00099a179 Update issues URL
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-20 18:48:42 -05:00
Mike McQuaid
23b84ef732 Set MACOS_VERSION as 0 on non-OSX platforms. 2012-03-18 15:43:39 +13:00
Max Howell
a2e84e5e57 Homebrew 0.9 2012-03-16 21:09:00 +00:00
Max Howell
0f02354073 HOMEBREW_LIBRARY
I got fed up writing HOMEBREW_REPOSITORY/"Library" and also correcting mistakes when I did HOMEBREW_PREFIX instead.
2012-03-16 21:06:18 +00:00
Max Howell
6ded0d0cbb Use /Library/Caches/Homebrew
We don't penalise existing users; if ~/Library/Caches/Homebrew already exists and is writable, we select that.

This is the correct choice, the cache should be the same directory whichever user is used and whatever instance of brew is invoked.

The Cache directory is set to 0777 this allows any user to write to it and fixes Homebrew/homebrew#10857.
2012-03-14 00:05:46 +00:00
Adam Vandenberg
aef580261b Tell the user when build logs are copied 2012-03-09 18:48:23 -08:00
Max Howell
d830e17a12 Protect against unwritable cache location 2012-03-07 12:51:02 +00:00
Adam Vandenberg
de709fa449 Homebrew 0.8.1
This version number is arbitrary, and only used to differentiate versions
in bug reports.

There have been enough changes to compiler detection since 0.8 that it makes
sense to bump the version here.
2011-12-21 12:03:45 -08:00
Jack Nagel
14cd6667b4 'CHANGES' is also a meta file
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-12-11 21:59:30 -06:00
Jack Nagel
f501e7f00b Ignore $HOME/.curlrc when invoking curl
Several issues have been caused by conflicts between the options
Homebrew passes to curl and those read from $HOME/.curlrc. Passing '-q'
will force curl to ignore settings in that file.

Suggested in Homebrew/homebrew#9027.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-12-08 21:05:19 -06:00
Max Howell
b5c709e2ed Save config.log to ~/Library/Logs/Homebrew
Also tidied error output. Still could be tidied quite a lot but I am still considering how best to go about it.
2011-08-31 15:35:59 +01:00
Max Howell
42cc28597c HOMEBREW_CURL_ARGS so that tests can be more silent 2011-08-24 22:30:43 +01:00
Max Howell
b36dcc4ffd Improve compatibility for old formula
Allow compatibility to be disabled with --no-compat or HOMEBREW_NO_COMPAT environment variable.
2011-08-02 12:22:58 +01:00
Mike McQuaid
939a530ddc Make bottle path. 2011-06-21 19:04:18 +01:00
Adam Vandenberg
35e2a5a498 Fix issue checklist link 2011-06-16 15:40:12 -07:00
Adam Vandenberg
5d5a8ed32f Better support for brew install <url>
Brews installed via URL are now checked from the cache when
other commands are run. This allows for instance:

    brew install <vim-url>
    brew info vim
2011-06-08 11:13:50 -07:00
Dan Loewenherz
6495505f88 Add HOMEBREW_CACHE to let the user specify a cache directory
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-06-07 13:38:15 -07:00
Adam Vandenberg
9baece866b Homebrew 0.8 2011-03-12 11:55:12 -08:00
Adam Vandenberg
2a5f757816 Use + instead of /. 2011-03-12 11:55:07 -08:00
Max Howell
712dcff45f Revised bug report text 2011-03-12 11:55:06 -08:00
Max Howell
c1a3b724fd Some Cleanup 2011-03-12 11:55:03 -08:00
Max Howell
768910283a Refactor the brew command into one file per command
The code was sucking. To the extent that maintenance was hard. It's a lot
easier to work with code that is sensibly split at sensible boundaries. So
now it is more like that.

But the refactor is minimal. Because we don't want you to have more merge
hell than absolutely necessary.

If you merge you will need to pay attention to brew.h.rb (as it is deleted)
and bin/brew (as command logic is gone). It will be painful, but you will just
have to help git out by moving any changes around manually.

Note compatibility.rb. It ensures that any function renames or removals don't
break anything. We're pretty serious about backwards compatibility. And that's
because we encourage you to hack around with the innards. And we couldn't do
that if we would then just make stuff disappear behind your back.
2011-03-12 11:55:02 -08:00
Adam Vandenberg
b6332de28d Bump Homebrew to 0.7.1
The Homebrew version number is mainly useful for bug reports. Since it is
included in "brew --config" output, it is an easy way to see roughly how
new the a user's version of Homebrew is.

Bumping the micro version now, in anticipation of some more version-changing
events in the near future.
2010-10-31 17:23:20 -07:00
Adam Vandenberg
2bb9fa1b22 Bump Xcode recommendation to 3.2.3 2010-09-07 13:23:43 -07:00
Adam Vandenberg
6b32dfe8de Homebrew now at version 0.7
Changes in this version include:
* Aliases are now defined by relative symlinks rather than in the
  formulae themselves. Many commands are faster now that they don't
  have to read every formula to find aliases.

* "url" now supports the same features as "head", including ":using"
  and version specifiers for VCS systems.

* Files and methods marked for deprecation in 0.7 have been removed.

* The Formula DSL now supports "skip_clean :all" and "keg_only 'reason'"
2010-08-07 18:08:54 -07:00
Adam Vandenberg
b355d6af25 Bump Xcode recommendation to 3.2.2 2010-07-21 09:45:31 -07:00
Adam Vandenberg
41e8245534 Clarify cellar comment 2010-07-08 22:41:51 -07:00
Adam Vandenberg
696e49e87a Move exceptions from global to utils; remove duplicate defintions 2010-07-08 22:41:51 -07:00
Adam Vandenberg
eb058c0958 Fix: attr doesn't take a list. 2010-06-10 19:39:15 -07:00
Adam Vandenberg
1761ba66bf Failures during ./configure should mention config.log. 2010-06-10 12:57:51 -07:00
Adam Vandenberg
ec926a7f5f Change homepage. Fixes Homebrew/homebrew#105. 2010-04-06 08:29:33 -07:00
Adam Vandenberg
3825535310 Move recommended compiler versions into constants. 2010-03-16 20:58:12 -07:00
Adam Vandenberg
485d480722 Add a snapshot of ENV to BuildError and show some flags with the stack trace. 2010-03-11 15:58:17 -08:00