28944 Commits

Author SHA1 Message Date
Misty De Meo
d4534ec528 StandardCompilers: 3.1.4 doesn't have llvm 2012-04-15 17:49:49 -05:00
Maurice Kelly
3ab2cc62e2 info: handle git:// URLs in origin remote
The URL being constructed is only able to extract the correct username
when git@ or https:// URLs are found as the origin remote. This change
allows git:// to be used as well.

Signed-off-by: Maurice Kelly <osv-github@chatswood.org.uk>

Closes Homebrew/homebrew#11670.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-15 14:41:41 -05:00
Jack Nagel
1d0be89fa5 tests: reorganize compiler selection tests
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-14 15:27:45 -05:00
Mike McQuaid
d4f7577185 Add ofail command to print error and exit. 2012-04-14 17:48:34 +10:00
Jack Nagel
5d84df0210 tests: bring brew update tests up to date
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-14 00:00:04 -05:00
Jack Nagel
a64f417f36 tests: remove special-casing @path in TestBall
Tests that expect Formula#path to resolve to a real path should use
TestBallWithRealPath; TestBall gets its original behavior back, fixing a
failing test in test_formula_install.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-14 00:00:04 -05:00
Misty De Meo
bf0955dc8a Fix StandardCompilers check
* Return true if Xcode version is not in hash, not nil
* Use two-digit version numbers for 4.0, 4.2, 4.3
2012-04-11 21:45:43 -05:00
Adam Vandenberg
f09e0c8e1e Don't warn about .o files in lib 2012-04-11 19:30:24 -07:00
Jack Nagel
801d8b2bfd deps: fix --tree for new deps
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-11 18:24:46 -05:00
Jack Nagel
15d7e89f0e Implement <=> for Dependency
Fixes Homebrew/homebrew#11587.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-11 18:24:24 -05:00
Jack Nagel
0452be43ac brew-leaves: fix for recent deps overhaul
Fixes Homebrew/homebrew#11567.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-11 14:00:17 -05:00
Misty De Meo
3a4899ebbc brew-pull: Fix detecting issue #
Fixes a regression introduced in c27a575eb6b2dfc0d662aaab2cf9d754647fbadd
This is why I wish 1.8.x had named captures.
2012-04-11 10:22:11 -05:00
Misty De Meo
4dc1a7bdce brew doctor: add check for outdated compilers
A common source of build problems on Xcode 4.3+ is outdated compilers,
usually when a user has installed over top of an old version and hasn't
installed the CLT. Since the compilers from the previous Xcode are still
around, brew doctor wouldn't complain.

This adds a hash containing a list of the canonical compiler versions
for supported versions of Xcode, and adds a check against that to determine
whether a given installation has any compilers which are out of date.

Closes Homebrew/homebrew#11518.

Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
2012-04-11 10:08:46 -05:00
Jack Nagel
9d172f85c6 ARGV: use include? for --HEAD
ARGV.build_head? will return true if the typo '-HEAD' is passed because
it uses flag? to detect the option. However, we only filter the exact
spelling of '--HEAD' in ARGV.filter_for_dependencies, and thus the HEAD
property is undesirably passed to deps during installation.

Since we never advertised '-H' as a valid short option for '--HEAD',
just use include? instead of flag?.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-10 21:53:01 -05:00
Jack Nagel
f296683409 tests: fix no-op fails_with test
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-09 17:45:35 -05:00
Misty De Meo
c134ba6c4a doctor: be specific about libiconv files detected
Closes Homebrew/homebrew#11417.
2012-04-09 13:19:42 -05:00
Misty De Meo
90400eceb1 make_relative_symlink: give more specific advice 2012-04-09 10:09:19 -05:00
Misty De Meo
c9fd1b9bf0 doctor: skip Cellar checks if Cellar doesn't exist
Attempting to call certain methods on the Cellar before it exists,
such as realpath, would cause brew doctor to throw unnecessary "file
does not exist" errors. This was fixed once before, but new tests
have been added since without the appropriate checks.
cf. 0d28bc78d71590c8e8a5961d8d10e3d7d9b8822d

Fixes Homebrew/homebrew#5188 (again).
2012-04-08 15:50:16 -05:00
Jack Nagel
25a148d6a1 Clean up fails_with test classes
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-07 13:29:40 -05:00
Jack Nagel
d2c9b27e14 info: output correct URL for tapped dupes
Tapped formulae that dupe those in core now display the correct URL when
invoked like `brew info homebrew/dupes/openssl`.

This also fixes the broken `brew info` test.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-06 23:54:41 -05:00
Jack Nagel
504756745b tests: silence mirror test
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-06 22:06:05 -05:00
Jack Nagel
9614301be4 Fix protection against overriding Formula#brew
The test for this previously passed, but only because the constructor
for SoftwareSpecification was raising an exception. method_added needs
to be a class method because methods are being defined on the class, not
the object, and to test it properly we have to eval the class in the
test itself.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-06 17:32:43 -05:00
Misty De Meo
04bf4e5f89 brew-pull: add support for pulling from taps 2012-04-06 09:53:01 -05:00
Jack Nagel
d3ba9723b2 Add test for ghc version style
the ghc formula had an explicit version because we had trouble parsing
the version from the 64-bit URL. It is working now, so add a test to
ensure it isn't broken in the future.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-06 00:08:23 -05:00
Max Howell
5d3c65f68e Use GitHub API 3 in brew search 2012-04-05 13:06:36 -04:00
Charlie Sharpsteen
7ffa831718 patches.rb: Fix warning thrown by Ruby 1.8.6
Need to be consistent with use of parenthesis in functions.
2012-04-04 08:28:15 -07:00
Mike McQuaid
62a98753ec Populate empty mirror_list for bottles.
Fixes Homebrew/homebrew#11434.
2012-04-04 20:50:22 +10:00
Mike McQuaid
6010763159 Use current bottle versions to calculate new ones. 2012-04-04 15:44:51 +10:00
Rory O’Kane
c2ca1773c5 doctor: fix typos
Closes Homebrew/homebrew#11418.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-03 16:21:01 -05:00
Jack Nagel
227ee505b0 fetch: don't display cached location twice
The download strategy will print the cached location if we've already
fetched it, so avoid printing redundant information.

Also just "puts" it instead of using a second `ohai` line.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-02 21:04:30 -05:00
Mike McQuaid
a947064994 Version bottles. 2012-04-03 11:43:41 +10:00
Jack Nagel
bb8fcc8901 Reset compiler when testing fails_with
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-01 14:56:04 -05:00
Jack Nagel
de444ead0b New fails_with infrastructure
- Formulae can now declare failures on any compiler.
 - FailsWithLLVM and associated formula elements have been moved to
   compat.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-01 12:39:59 -05:00
Adam Vandenberg
bfbfdf03eb Show target path when empty 2012-03-30 23:02:43 -07:00
Adam Vandenberg
a0cb4e7c11 install: warn when passed no files
Rationale: we warn when inreplace makes no changes; this is a similar
sort of warning. We expected some list (probably via Dir) to include
some files, but none were found.

Either the list was wrong, or the install can now be omitted.
2012-03-30 22:36:45 -07:00
Jack Nagel
49b0b3903f info: always indicate if a keg is linked
We mark the linked keg with an asterisk when multiple kegs exist, but
not when there is only a single keg. Start marking even in this case,
giving consistent behavior and a reliable indicate of the link status.

Fixes Homebrew/homebrew#11300.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-29 21:30:13 -05:00
Jack Nagel
7706e1210f Remove "__brew_ps1" function from completion
This was probably silly and I'm probably the only person that ever used
it. I still do, actually, but it's not really a completion function,
it's simple enough to just stick in a shell startup script, and removing
it makes the completion script usable under the new dynamic loading
scheme provided by bash-completion 1.99+.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-29 20:11:00 -05:00
Mike McQuaid
0cbdeeaa3c Exit with bad exit code on command failures. 2012-03-29 18:44:37 +11:00
Mike McQuaid
61444ee3a6 brew-bottle doesn't need to specify filenames now. 2012-03-29 18:41:47 +11:00
Mike McQuaid
eb71d1ba71 Add brew tests command to run all unit tests. 2012-03-29 18:40:32 +11:00
Mike McQuaid
8c338a6bb1 Cleanup brew-pull code. 2012-03-29 18:30:38 +11:00
Diego Plentz
4ddbb335d0 typo
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2012-03-28 20:02:07 -07:00
Jack Nagel
4360342947 Document how formula arguments can be specified
Closes Homebrew/homebrew#11037.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-25 16:21:13 -05:00
Max Howell
1e55c1f580 Fix brew unlink
Whoops.
2012-03-25 13:09:30 +01:00
Max Howell
69672ca965 Speed-up brew-unlink under certain conditions
This massively speeds up upgrades for certain formula, ie. formula with lots of files that aren't in the directories we link. I found upgrading android took ages before the un-tar step and it was indeed for this reason.
2012-03-25 11:07:30 +01:00
Max Howell
05c140e2e4 Search Homebrew/games 2012-03-25 11:06:28 +01:00
Jack Nagel
0aea8d39e6 Fix typo in --config.rb
Closes Homebrew/homebrew#11183.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-24 12:11:37 -05:00
Jack Nagel
53481dc14a Tab completion for brew tap
Using an inline Ruby script we can hit the GitHub API and look for
repositories that match the tap naming scheme. The results are cached
for the duration of the current shell session, so going over the network
is a once-per-shell-session cost.

There are a few false positives, but not much we can do about that at
this point, as taps do not have to be in the fork network of any
specific repository.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-23 22:42:43 -05:00
Jack Nagel
8c4e7ca5b5 Parse raw diff output in brew update
Using each_cons() "works", but to report all changes correctly we need
to look at the last elements even after we've looked at the last 3
consecutive elements.

Instead, let's parse each line of the raw diff output using a regexp.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-23 20:39:24 -05:00
Jack Nagel
1bc6313694 Pass the tab to FormulaInstaller
Callers of FormulaInstaller now usually unlink the existing keg prior to
running the installer. However, Tab.for_formula uses the LinkedKeg
record to obtain the tab.

Since we need the tab to persist install options across upgrades, we
must start creating the Tab object before unlinking the old keg and
passing it to the FormulaInstaller.

Fixes Homebrew/homebrew#11086.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-23 13:05:08 -05:00