122 Commits

Author SHA1 Message Date
Xu Cheng
2c25303949 remove unnecessary tap_args
It's now handled by Tap.fetch
2015-12-09 16:56:59 +08:00
Xu Cheng
d7e95997ae tap: warn already tapped 2015-11-10 18:33:57 +08:00
Mike McQuaid
aab53e65a9 tap: don't error when already tapped. 2015-11-10 09:12:25 +00:00
Xu Cheng
e97610b916 add Tap#install and Tap#uninstall 2015-11-09 15:34:20 +08:00
Søren Brokær
ed42b2eb39 let the user know what exactly was already tapped
Closes Homebrew/homebrew#44843.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2015-10-13 14:03:42 +02:00
Xu Cheng
3b520cf195 cache taps
There are plenty of IO operations inside Tap object, and it will be more
when implementing formula alias reverse look up(e.g. list all of alias
names for a formula). So let's cache them.

Some benchmark:

$ time brew info $(brew ruby -e 'puts Formula.tap_names') > /dev/null
Before: 6.40s user 2.42s system 96% cpu 9.134 total
After: 4.75s user 0.77s system 97% cpu 5.637 total

Closes Homebrew/homebrew#44377.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-09-30 16:25:30 +08:00
Dan Martinez
8374374168 Improve description searching and add a cache.
Closes Homebrew/homebrew#42281.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-09-08 15:23:37 +01:00
Xu Cheng
190902e98f tap: ensure git is installed
Closes Homebrew/homebrew#43463.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-09-02 15:24:53 +08:00
Xu Cheng
a5aba7f7d8 tap: rmdir when tap failed or interrupted
Fixes Homebrew/homebrew#43280.

Closes Homebrew/homebrew#43352.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-08-28 17:15:23 +08:00
Xu Cheng
d09d2690ca tap: add --list-pinned 2015-08-21 20:08:13 +08:00
Baptiste Fontaine
8ba0fb9fcf unnecessary calls to .select simplified
These are minor perf optimizations.

Closes Homebrew/homebrew#43028.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2015-08-18 00:18:22 +02:00
Baptiste Fontaine
3a733cad09 shell completion of official taps added to 'brew tap'
Closes Homebrew/homebrew#42421.

Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
2015-08-03 23:37:00 +02:00
BrewTestBot
13d544e11e Core files style updates.
Closes Homebrew/homebrew#42354.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-08-03 13:22:35 +01:00
Xu Cheng
4101cef3c5 Tap: make remote a separate method to reduce initial overhead
Also make remote method only response to installed tap.
2015-06-14 21:28:36 +08:00
Xu Cheng
44383fecb8 (un)tap/update/readall: use Tap class 2015-06-11 15:28:29 +08:00
Xu Cheng
18bb32a04d tap: fix Homebrew/homebrew#40487 2015-06-08 22:13:50 +08:00
Peter Aronoff
965e2f50c3 brew tap: allow tapping non-GitHub repositories.
`brew tap` restricts users to GitHub and checks for private repos. I
created `brew any-tap` to support a wider variety of taps.

With very small changes (and no extra flags!), this change allows users
to use `brew tap` with GitHub as they always have or add one extra
argument and tap any repository of any type from anywhere.

    brew tap user/name              # Same as it ever was
    brew tap user/name URL          # Tap URL, whatever it happens to be

Closes Homebrew/homebrew#40326.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-06-05 21:54:12 +01:00
Xu Cheng
171c3dd2d9 tap/untap/update/prune: remove obsolete method, add migrate_taps 2015-05-27 13:53:40 +08:00
Xu Cheng
fa9371e58e tap: support fast clone
Closes Homebrew/homebrew#37592.
Closes Homebrew/homebrew#38268.

Signed-off-by: Xu Cheng <xucheng@me.com>
2015-05-08 15:48:51 +08:00
Mike McQuaid
63d8bcd314 tap: better match install format. 2015-04-09 09:00:18 +01:00
chdiza
5e854164a7 untap: Handle multiple arguments
Closes Homebrew/homebrew#36436.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-02-01 20:12:13 +01:00
Jack Nagel
50b900daf3 Don't warn about tap conflicts during pruning
Fixes Homebrew/homebrew#32710.
2014-09-27 12:17:22 -05:00
Jack Nagel
d6bceebeca Clarify "could not tap" warning
Closes Homebrew/homebrew#31451.
Closes Homebrew/homebrew#32223.
2014-09-19 18:22:48 -05:00
Jack Nagel
44254aa9cf Remove redundant "which git" guards
There is always a git executable on PATH due to the git wrapper in
Library/Contributions/cmd. The wrapper will notify the user if there is
not a real git installed.
2014-07-06 14:10:52 -05:00
Jack Nagel
2d83c08592 Make tap_ref match similar code in update 2014-07-06 13:12:01 -05:00
Jack Nagel
f8fb74ff76 Escape paths in regexps 2014-07-06 11:25:56 -05:00
Jack Nagel
f0e13ee97b Use multiple argument form of system 2014-06-20 18:37:24 -05:00
Jack Nagel
10a1952d2c Only "extend self" once on the Homebrew module 2014-06-19 13:10:36 -05:00
Jack Nagel
bf365fc23b Prefer Dir.glob when iterating over the result 2014-05-31 23:53:36 -05:00
Adam Vandenberg
8d44db6b40 pluralize formulae in tap/untap
Closes Homebrew/homebrew#28560.
2014-05-26 18:33:31 -07:00
Tsukasa OMOTO
d1f15e967b Taps: cleanup regexps around Taps
Closes Homebrew/homebrew#29139.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2014-05-14 11:12:51 -05:00
Jack Nagel
d8c15c8fbf The \w character class already includes underscore
Newer versions of Ruby issue a warning for repeated character classes.
2014-05-03 15:03:22 -05:00
Jack Nagel
bdee729a41 Yield absolute paths from find_formula 2014-04-25 18:58:16 -05:00
Jack Nagel
b40a3413e3 Pass around only absolute paths when dealing with taps 2014-04-25 18:36:31 -05:00
Jack Nagel
b0cd6b0376 Extract some boilerplate into an each_tap method 2014-04-25 11:25:38 -05:00
Jack Nagel
ccd31a2dd2 Pass arguments instead of reopening Pathname 2014-04-24 18:26:05 -05:00
Jack Nagel
dcb9ae1bcc Using existing method to make tap symlinks 2014-04-24 18:06:11 -05:00
Tsukasa OMOTO
54004a4759 Make the on-disk representation of taps unambiguous
This commit supports "-" and "_" in names of user and repository.

Closes Homebrew/homebrew#28203.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2014-04-24 17:10:41 -05:00
Mike McQuaid
d30b118631 Migrate apple-gcc42 back to homebrew/versions.
Closes Homebrew/homebrew#28418.
2014-04-23 12:27:24 +01:00
Jack Nagel
9cd95bc0b7 Remove unused variable 2014-02-23 23:04:44 -05:00
Jack Nagel
25c4e336f4 Use GitHub wrapper for private tap check 2014-02-08 20:41:11 -05:00
aereal
91524a384d Make brew tap error message more clear
Closes Homebrew/homebrew#25813.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2014-01-26 17:33:12 -06:00
Mike McQuaid
95e6a634b4 tap: never throw AlreadyTappedError.
Just make it a warning instead.

Closes Homebrew/homebrew#25511.
Closes Homebrew/homebrew#25617.
2014-01-03 21:56:57 +00:00
Mike McQuaid
2afa1c3b86 tap: change core formula tap naming. 2013-12-14 23:10:20 +00:00
Mike McQuaid
d9d2443d5d Cleanup use of some global constants. 2013-10-30 13:20:48 -07:00
Mike McQuaid
1cb7eca3a5 tap: use dedicated exception for already tapped. 2013-10-21 20:16:41 +01:00
Mike McQuaid
8b5b220d88 tap: don't print warning for apple-gcc42 failure.
This should be a temporary workaround until we get a grip on some
Mavericks/Xcode 5.0 issues with e.g. ghc and go (stuff in core
that currently needs GCC at runtime). These formulae both have
Clang fixes in development.

Things that needs GCC at compile-time should be booted from core.

References Homebrew/homebrew#22872.
References Homebrew/homebrew-dupes#229
2013-10-16 08:40:41 +01:00
Adam Vandenberg
4daf0de435 Only prune taps if taps exist.
Closes Homebrew/homebrew#19192.
2013-04-14 09:35:16 -07:00
Misty De Meo
22f2f6aed3 tap/untap: use Array#length, not #count
Array#count was apparently introduced in 1.8.7.
2013-04-02 16:28:46 -05:00
Mike McQuaid
c2e642f9c1 Revert "Update brew tap to work without 'homebrew-'"
This reverts commit d72901f92b7385d44d8c980976db6a4336572e7e.

References Homebrew/homebrew#18366.
Closes Homebrew/homebrew#18432.
2013-03-12 17:55:55 +00:00