6354 Commits

Author SHA1 Message Date
Jack Nagel
cf8f8dec1f Fix up phrasing of case-sensitive volume warning 2014-07-09 17:04:52 -05:00
Jack Nagel
82ce0be6fd Clean up /bin/df regexp
- remove unnecessary captures
 - '%' is not a metacharacter so it doesn't need to be escaped
 - match using '+' instead of '*'
2014-07-09 17:04:52 -05:00
Jack Nagel
5ab16295e5 Fix getting filesystem mounts 2014-07-09 17:04:52 -05:00
Jack Nagel
7ee49db51e Remove proc handling from BuildEnvironment 2014-07-07 22:02:32 -05:00
Jack Nagel
d4602b1711 Eliminate some indirection in evaluating requirement env blocks 2014-07-07 22:01:52 -05:00
Jack Nagel
dff74d9c67 Don't set @env on instances 2014-07-07 21:32:35 -05:00
Jack Nagel
9822faa56a Simplify BuildEnvironmentDSL test setup 2014-07-07 21:00:38 -05:00
Jack Nagel
a13a4f4704 Keep DSL related code in one place 2014-07-07 20:20:29 -05:00
Jack Nagel
6664ec23dc Merge should return self 2014-07-07 20:03:41 -05:00
Jack Nagel
23b4da18c2 Only call proc if it is set
Fixes Homebrew/homebrew#30723.
Fixes Homebrew/homebrew#30724.
Fixes Homebrew/homebrew#30727.
2014-07-07 19:47:11 -05:00
Jack Nagel
3e326b79fe Dependency initializer takes an array 2014-07-07 19:21:39 -05:00
Jack Nagel
5ba06ff614 Define 1.8 marshal hooks in terms of 1.9+ marshal hooks 2014-07-07 18:12:24 -05:00
Jack Nagel
cbdb46887a Remove knowledge of serialization details by marshaling twice 2014-07-07 18:12:24 -05:00
Jack Nagel
8c4569b7c2 Fix BuildEnvironment initializer 2014-07-07 18:12:24 -05:00
Jack Nagel
48c14ee736 Fix BuildEnvironment marshalling test 2014-07-07 17:48:01 -05:00
Jack Nagel
0f54f7f072 Don't need mocks here 2014-07-07 17:36:20 -05:00
Jack Nagel
879ec96743 Only store one proc per BuildEnvironment instance 2014-07-07 17:36:20 -05:00
Jack Nagel
9e7f5dc261 Merge instead of calling << in a loop 2014-07-07 09:15:56 -05:00
Jack Nagel
aeccba8dbe Fix brew-aspell-dictionaries 2014-07-06 22:46:34 -05:00
Jack Nagel
3952a4acc6 Give the cache the same permissions as the installer does 2014-07-06 22:06:09 -05:00
Jack Nagel
d5a01de8e3 Extend with a module instead of aliasing on the singleton class 2014-07-06 22:05:53 -05:00
Jack Nagel
dd3446ded1 Remove inaccurate comment 2014-07-06 21:59:58 -05:00
Jack Nagel
a5a2141a15 Hide the cxxstdlib data structure better 2014-07-06 15:51:43 -05:00
Jack Nagel
0deedabbaf nostdout doesn't need to capture output 2014-07-06 15:03:42 -05:00
Jack Nagel
b4fd54ae92 Close duped output streams before returning 2014-07-06 15:03:38 -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
dae83fc895 Drop pointless string split 2014-07-06 13:52:44 -05:00
Jack Nagel
2d505754e7 Use Formula tap methods instead of matching the path 2014-07-06 13:52:04 -05:00
Jack Nagel
6e60b1d8c3 Let File.expand_path also do the join 2014-07-06 13:36:58 -05:00
Jack Nagel
7bd4f76b8c Check File.file? first to avoid second stat() 2014-07-06 13:35:44 -05:00
Jack Nagel
6a0720071e Use Formula tap methods 2014-07-06 13:16:57 -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
7e268670ed Just use each since we're returning from inside the block 2014-07-06 11:16:10 -05:00
Jack Nagel
c7ac8ce454 Expand ~ in PATH entries 2014-07-06 11:15:14 -05:00
Jack Nagel
32d8574d8c brew-pull: fix --install 2014-07-05 19:36:25 -05:00
Jack Nagel
9c757d6ee2 Remove remaining references to "--fresh"
This option was removed in 8cdf4d8ebf439eb9a9ffcaa0e455ced9459e1e41
because it did not do anything.
2014-07-05 19:28:50 -05:00
Jack Nagel
94c083dc2b brew-pull: combine conditionals 2014-07-05 19:16:14 -05:00
Jack Nagel
4ab696e4f2 brew-pull: avoid the "var = ... rescue nil" dance 2014-07-05 17:44:32 -05:00
Jack Nagel
01dc9c4900 brew-pull: rescue a specific exception 2014-07-05 17:30:41 -05:00
Jack Nagel
9a9328eef4 brew-pull: use diff-tree and simplify diff parsing 2014-07-05 17:26:07 -05:00
Jack Nagel
6c91c0806f brew-pull: let git-am attempt three-way merge if patch doesn't apply 2014-07-05 16:35:43 -05:00
Jack Nagel
cf4080a9e0 Remove a RUBY_VERSION check, add a FIXME comment 2014-07-05 16:01:09 -05:00
Jack Nagel
2d8a3ac35a Use popen wrapper
Closes Homebrew/homebrew#30678.
2014-07-05 15:41:22 -05:00
Jack Nagel
ad27b21cd1 Add popen wrapper that does not invoke the shell 2014-07-05 13:50:54 -05:00
Jack Nagel
84372e570e Use a regular conditional instead of next unless ... 2014-07-04 19:40:18 -05:00
Jack Nagel
810b5838b2 Simpler "use the correct symlink" checks
When determining whether to remove a symlink during unlinking, we check
three things:

  (a) Is the destination a symlink?
  (b) Does the destination exist?
  (c) Does the destination resolve to the source path?

However, since we know that the source path exists, (b) is guaranteed if
(a) and (c) are true. Thus checking (b) is unnecessary.

Similarly, when creating a new symlink during linking, we first check to
see if the link already exists by checking the same three criteria.
Again, checking (b) is unnecessary here.

See also the expanded test coverage in b52b579b.

Addendum: although we know that the source path exists during unlinking,
it doesn't matter. If the source path does not exist, then we still know
we have a broken symlink pointing into the keg we are unlinking, and
removing that symlink is still safe.
2014-07-04 17:46:52 -05:00
Jack Nagel
f666b76c39 Add more tests documenting linking behavior 2014-07-03 23:27:54 -05:00
Jack Nagel
60fc7eb0ed Avoid chdir just to make a symlink 2014-07-03 23:27:54 -05:00
Jack Nagel
083448d55d Move repeated pathname into setup 2014-07-03 23:27:54 -05:00