38364 Commits

Author SHA1 Message Date
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
Jack Nagel
9076037a0d Detect and display renames in brew update
Renamed formulae will cease to display as an add/delete pair and instead
end up the in the "Renamed" section. In the future we should be able to
take this information and use it to rename existing kegs during updates,
allowing us to rename formulae without breaking upgrades.

Renaming a formula requires renaming the class, so there will be at
least one add/delete pair in the file. Thus, the similarity threshold
for detecting renames is set at 85% to allow a little bit of content
turnover without losing track of the rename.

Closes Homebrew/homebrew#11158.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-22 22:15:57 -05:00
Jack Nagel
10f8443f8a Use --verify when querying HEAD
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-22 22:15:57 -05:00
Max Howell
bb8d92c3cf Check tapped before trying to untap
If the tap-formula wasn't symlinked for some reason, don't throw an exception—the job is already done.
2012-03-23 00:16:08 +00:00
Mike McQuaid
b059ffb952 Bottles currently require 64-bit hardware on 10.6. 2012-03-23 09:24:56 +13:00
Mike McQuaid
49b16f3462 Fix broken default bottle URL. 2012-03-23 05:58:14 +13:00
Max Howell
abfce0f6b2 Don't double print ln message in verbose mode
Refs Homebrew/homebrew#11091.
2012-03-22 09:33:41 +00:00
Adam Vandenberg
23664db4d7 brew doctor: check for trailing slashes in path
Having path directories with trailing slashes can cause other false
warnings.

Closes Homebrew/homebrew#9986.
2012-03-21 22:03:21 -07:00
Adam Vandenberg
897b7c2367 Patch: expose download_filename 2012-03-21 12:12:10 -07:00
Jack Nagel
76c86d1ac8 Update missing Xcode advice
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-21 12:47:51 -05:00
Jack Nagel
5dc15272d9 ENV: reset LD when switching compilers
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-21 12:22:22 -05:00
Jack Nagel
01c14f8775 ENV: normalize usage of "self" and "ENV"
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-21 12:22:22 -05:00
Adam Vandenberg
a161058bcd brew fetch: show downloaded path 2012-03-21 09:09:11 -07:00
Adam Vandenberg
6eced20b35 Fix Dependency equality 2012-03-20 22:31:14 -07:00
Adam Vandenberg
07736cb8fa Allow a different package and import name for language deps.
Some times the module to import is different than the module to install
when dealing with external dependencies. This change allows an optional
import name to be specififed when it is different from the module name.

Closes Homebrew/homebrew#11078.
2012-03-20 19:43:41 -07:00
janv
54f1837d23 Generate unique patch filenames
Closes Homebrew/homebrew#11098.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2012-03-20 19:24:58 -07:00
Adam Vandenberg
975459a75c Add tests for patches.rb 2012-03-20 19:24:58 -07: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
Misty De Meo
de234ebb5a Don't try to link info/dir with HOMEBREW_KEEP_INFO
Some formulae have local info/dir files from before 9610ff2, and
attempting to link their info/dir over PREFIX/share/info/dir caused
linking to fail.
2012-03-20 17:00:38 -05:00
Misty De Meo
bc7469c819 Fix inappropriate linking of info files
share/info files were always being linked if they existed, regardless of
whether the user had HOMEBREW_KEEP_INFO set. This primarily affects
users with software built before
9610ff2e9e06931693f49d4377ee26c0e664c547.

This also fixes a bug in Keg#link_dir, in which a file would always be
linked if no argument was passed.
2012-03-20 14:33:46 -05:00
Misty De Meo
f8861daeb9 Skip linking info/dir
The regexp that handles skipping info files was only skipping
info/*.info files, but several formula would create info/dir files as
well. Since these conflicted with each other, Homebrew would error out
during the linking step.
2012-03-20 11:46:10 -05:00
Jack Nagel
ed83fa609b Remove broken puts from verbose brew link
The print wrapper which has its own `puts` broke this line; though with
the changes to `link` it isn't necessary any longer, so just remove it.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-20 11:24:35 -05:00
Max Howell
17bdfb1d38 Don't query online for plain brew search 2012-03-20 16:03:27 +00:00
Adam Vandenberg
9c28138889 audit: add tests for patches 2012-03-19 18:50:17 -07:00
Adam Vandenberg
7c50020822 Use Patches 2012-03-19 18:50:17 -07:00
Adam Vandenberg
f6052e8cc4 Add Patches class 2012-03-19 18:50:17 -07:00
Max Howell
d145fd30b4 Be more helpful about how to resolve this issue 2012-03-19 14:19:56 +00:00
Max Howell
9ab1df5b68 If no formula but multiple kegs, advise resolution
In this case the user will simply have to delete all but one keg in order to use the command that uses ARGV.kegs.

Refs Homebrew/homebrew#11050.
2012-03-19 14:17:50 +00:00
Max Howell
46a9c9b6a0 Tell the user to run doctor after installing 2012-03-19 13:14:23 +00:00
Max Howell
88118b51b2 Don't error if exact link already exists
If the link already exists exactly (well almost exactly) as we are about to correct it, then it's okay. Otherwise we error out. This is a safe choice, and really, the correct choice too.

This will prevent the tickets like Homebrew/homebrew#11050 from occurring.
2012-03-19 12:24:13 +00:00