45712 Commits

Author SHA1 Message Date
Max Howell
ab9f59f227 More ARGV tests 2009-08-11 01:30:39 +01:00
Max Howell
d275ba9976 FIX formulae and kegs didn't always work
Strange that they did often enough for my tests to work.
2009-08-11 00:36:47 +01:00
Max Howell
bd86ab508a rmdir_if_possible should ignore EACCES
It was raising an exception, which stopped prune in its tracks when
something was installed root, eg. Fuse.
2009-08-11 00:27:43 +01:00
Max Howell
3b262d0b23 Raise if ARGV.named and no named arguments 2009-08-11 00:27:18 +01:00
Max Howell
8c7b6a947c FIX if dst cannot be deleted, it's an error 2009-08-10 23:41:47 +01:00
Max Howell
0f0f775ea9 Escape / in before inreplace too 2009-08-10 23:32:13 +01:00
Max Howell
480bfa3793 CTRL-C for a child process should interrupt brew too 2009-08-10 18:17:11 +01:00
Max Howell
dd7bdce89c Abort debug install if exit is not zero 2009-08-10 18:16:47 +01:00
Max Howell
e24e46c793 TEST Zip'd archives can be extracted 2009-08-10 18:16:12 +01:00
Max Howell
6661f78618 Allow skip_clean? to skip entire directories
Speeds up Python formula plenty in clean phase
2009-08-10 18:12:16 +01:00
Max Howell
bae67c110f Fix inreplace and yajl formula 2009-08-10 18:12:16 +01:00
Max Howell
7653d48443 ENV.libpng
libpng and that are in the X11 formula
2009-08-10 18:12:16 +01:00
Max Howell
0ea078e1ae Install README.txt etc. as README 2009-08-10 18:11:23 +01:00
Max Howell
dae260561e Support github tagged download versions
eg. http://github.com/lloyd/yajl/tarball/1.0.5
2009-08-10 18:11:23 +01:00
Max Howell
f724f5ed52 Ensure ENV is pristine for each installation
Because we modified the ENV global each install this propagated to consecutive
formulae. So exec a new brew process each install. This is the safest way
although Ruby exceptions don't propagate to the parent process so I worry
about it somewhat.
2009-08-10 18:11:23 +01:00
Max Howell
69c076e741 ohai takes multiple parameters
Will not show any of the block if the 1st additional parameter is nil
2009-08-10 18:11:23 +01:00
Max Howell
a6577e5117 When safe, correct common install issues
Eg. man can be moved into share without consequences
2009-08-10 18:11:23 +01:00
Max Howell
a84bf77515 Delete installed documentation after install
Documentation is all online nowadays, and is more current there.

Documentation often takes up more space than the rest of the package.

Package listings are now more relevent.

We'll make it optional as soon as one person complains.
2009-08-10 18:11:23 +01:00
Max Howell
6dbdc9ab0c Remove duplicates from ARGV.named
Includes test
2009-08-10 18:11:23 +01:00
Max Howell
dccc2b1923 Apply new ENV capabilities to all existing Formulae 2009-08-10 18:11:22 +01:00
Max Howell
760c083c0c Refactor
Large refactor to Formula, mostly improving reliability and error handling but
also layout and readability.

General improvements so testing can be more complete.

Patches are automatically downloaded and applied for Formula that return a
list of urls from Formula::patches.

Split out the brew command logic to facilitate testing.

Facility from Adam Vandenberg to allow selective cleaning of files, added
because Python doesn't work when stripped.
0.4
2009-08-10 18:11:17 +01:00
Max Howell
5a396fd8b4 Extend ENV to make tweaking the build environment easier
eg. ENV.libpng or ENV.deparallelize
2009-08-10 16:48:21 +01:00
Max Howell
4355182529 Return the installed path(s) from install 2009-08-10 16:34:04 +01:00
Max Howell
3cf869385e FIX Pathname.rename
Rename relative to self.dirname
2009-08-10 16:33:15 +01:00
Max Howell
b32d2044c5 ARGV+yeast
Extensions to ARGV that are convenient or improve our robustness
2009-08-10 16:27:24 +01:00
Adam Vandenberg
cae0e78e60 Pull USERAGENT used by curl into constant 2009-08-10 16:15:24 +01:00
Adam Vandenberg
fea89daae6 Extract 'verify_download_integrity' method
In order to support more than just MD5 verification, extract 'verify_download'
into a separate method.
2009-08-10 16:14:43 +01:00
Max Howell
182ce1eff6 Formula::std_cmake_parameters
Because cmake syntax is batshit-insane, this stops people having to memorize
which parameters to supply, and thus prevents error.

I didn't do the same for Autotools deliberately as I have found that
which parameters are supported is somewhat inconsistent. Plenty don't even
support --disable-debug, thus I want the parameters getting used in the
contributors face so they can easily diagnose what is going on.
2009-08-06 20:25:59 +01:00
Max Howell
e9dbdadcac Remove all testing temporaries when done 2009-08-04 01:31:32 +01:00
Max Howell
a1d5450f0c The unittest now emulates a fresh install better
In future, this will hopefully prevent regressions like issue Homebrew/homebrew#7.
2009-08-04 01:07:36 +01:00
Adam Vandenberg
9e98e3cf71 Sample for brew --cache.
Signed-off-by: Max Howell <max@methylblue.com>
2009-08-04 07:48:29 +08:00
Adam Vandenberg
eda0dc1741 Fix brew --cache
Signed-off-by: Max Howell <max@methylblue.com>
2009-08-04 07:48:27 +08:00
Adam Vandenberg
bfa17cc16c Homepage takes any formula, installed or not.
Signed-off-by: Max Howell <max@methylblue.com>
2009-08-04 07:48:26 +08:00
Max Howell
33b90794e1 HOMEBREW_CACHE is now a Pathname object
This is consistent with the other HOMEBREW_* path constants
2009-08-04 00:40:12 +01:00
Max Howell
8ce4e5923f FIX Github gist formulae 2009-08-04 00:36:48 +01:00
Max Howell
69d7e2a797 FIX brew install before Cache has yet been created
Closes Homebrew/homebrew#7

Cache directory is created when downloading tarballs, but the new
hw.model stuff compiles the hw.model.c file there.
2009-08-04 00:35:27 +01:00
Adam Vandenberg
a734b30a68 Add home(page) to completion.
Signed-off-by: Max Howell <max@methylblue.com>
2009-08-03 08:13:30 +08:00
Max Howell
d327b7e7e2 FIX brew home
Somehow I didn't test before the commit, dumbo.
2009-08-03 01:07:37 +01:00
Max Howell
5aae0ce18b FIX brew info when keg installed
I keep breaking this stuff, need more tests, and well I think it's due to
developing on multiple machines and having different states of checkouts. So
apologies, I'll FIX myself too :)
2009-08-02 13:02:15 +01:00
Max Howell
d10192e077 Add Contributions to brew edit listing 2009-08-02 01:36:41 +01:00
Adam Vandenberg
14da66fb77 brew home foo open's foo's homepage in default web-browser 2009-08-02 01:30:29 +01:00
Adam Vandenberg
db15b323bb Create /usr/local/bin if it doesn't already exist. 2009-08-02 01:25:02 +01:00
Adam Vandenberg
fe71812af6 Add all commands to the bash completion script. 2009-08-02 01:25:02 +01:00
Adam Vandenberg
fdc091ed42 Info also takes installed brews 2009-08-02 01:25:02 +01:00
Adam Vandenberg
7478ff7804 Ensure that the Cellar exists when symlinking
Only remove brew symlinks w/ selflink.
2009-08-02 01:25:01 +01:00
Adam Vandenberg
58ba5f9df6 Bash completion script for the brew command 2009-08-02 01:25:01 +01:00
Adam Vandenberg
1333e910cf A script to symlink Homebrew into /usr/local
This is a developer utility, to allow you to keep your git clone in
eg. your home directory, but still have Homebrew installed to
/usr/local.

It is an optional utility having the whole checkout at /usr/local
is the default and recommended solution.
2009-08-02 01:25:01 +01:00
Adam Vandenberg
58fe4cc2bf Use cleanpath instead of realpath to keep symlinks intact. 2009-08-02 01:25:01 +01:00
Max Howell
e5fd9be0dc Raise if extract_named_args finds no named args
This errors out correctly for all existing and future usage.
2009-08-02 01:21:01 +01:00
Max Howell
9b1cc903a2 FIX missing keg argument error message. Closes Homebrew/homebrew#6 2009-08-02 00:04:15 +01:00