Jack Nagel
fd86e6d636
Remove confusing implicit options handling
...
This code is supposed to allow
depends_on "foo" => "with-bar"
to work when foo has only a "without-bar" option.
The options system was not designed to support this. Unfortunately, it
was bolted on anyway. The implementation is extremely difficult to
understand, and it only works for certain types of options, which is
confusing from a user's point of view. Luckily, no formulae in core or
the official taps rely on the behavior in order to function.
It is hindering progress in improving this code, so I am removing it.
2014-07-30 21:46:22 -05:00
Jack Nagel
0a605cbf8b
Simplify BuildOptions copy tests
2014-07-30 20:15:18 -05:00
Jack Nagel
bc937f56e7
Rename resource? to resource_defined?
2014-07-30 18:56:37 -05:00
Jack Nagel
a55e196f5f
Simplify internal representation of patches
...
- remove support for IO objects, since we no longer access ::DATA
directly
- since we don't need to support IO objects, use a separate class for
string patches and stop wrapping strings in StringIO ojects
2014-07-29 16:22:06 -05:00
Jack Nagel
3f12ddbccd
Decouple DATA patches from the executing script
2014-07-29 16:22:06 -05:00
Jack Nagel
e0c9717717
Store test patches in constants
2014-07-29 16:06:06 -05:00
Mike McQuaid
2013d153e5
Add test 1x1 images for formula test fixtures.
...
images
2014-07-28 19:36:08 +02:00
Jack Nagel
5b8e564d70
Add test for reporting tap updates
2014-07-26 20:11:53 -05:00
Jack Nagel
908d7bdecf
Clean up updater tests
2014-07-26 20:11:53 -05:00
Jack Nagel
2b90995c3e
Only populate the report with formula paths
2014-07-26 20:11:53 -05:00
Jack Nagel
802775078c
Separate reading and parsing the diff
2014-07-26 20:11:53 -05:00
Jack Nagel
6baf357f8c
update: remove unused rename detection
...
Right now this code only produces false positives. When we have real
support for renames, we can implement it more carefully.
Closes Homebrew/homebrew#31126 .
2014-07-25 12:28:05 -05:00
Jack Nagel
2cf116464d
update: simplify diff parsing
2014-07-25 12:25:58 -05:00
Jack Nagel
6f02314cba
Add a factory method that accepts a formula object
2014-07-18 15:15:12 -05:00
Jack Nagel
49a97c280a
Ask the filename object for the prefix
2014-07-18 15:15:12 -05:00
Jack Nagel
a87d2108ea
Move bottle filename construction to a class
2014-07-18 15:14:57 -05:00
Jack Nagel
4295e76d3f
Remove more dead code
2014-07-16 23:22:04 -05:00
Jack Nagel
28f0e5c4fd
Don't raise when converting the tag to a version fails
2014-07-16 21:11:48 -05:00
Jack Nagel
596f3ba0a0
Raise ArgumentError when a symbol can't be mapped to a version
...
The fact that this is implemented as a hash lookup is an implementation
detail, so don't let the KeyError bubble up.
2014-07-16 21:11:48 -05:00
Jack Nagel
a554b5c9b7
Rename test
2014-07-16 21:11:48 -05:00
Jack Nagel
197dbe5601
Remove dead code
...
Formula objects are always constructed with an explicit name, so we no
longer need to special case an empty name or the name "__UNKNOWN__".
2014-07-16 18:30:52 -05:00
Jack Nagel
33eed80ccc
Rename fetch_bottle_for to fetch_checksum_for
2014-07-16 14:52:18 -05:00
Jack Nagel
68326805ae
Implement []= on BottleCollector
2014-07-15 21:55:14 -05:00
Jack Nagel
26f4a78825
No need to set the URL for dependency test
2014-07-15 20:18:25 -05:00
Jack Nagel
771bc2978c
Eagerly set the download strategy
2014-07-15 13:42:03 -05:00
Jack Nagel
74ae43c690
Use accessor method in test
2014-07-13 13:07:36 -05:00
Jack Nagel
1eafe3bc35
Handle conflicts where links point at symlinks
...
Fixes Homebrew/homebrew#30664 .
2014-07-12 19:56:58 -05:00
Jack Nagel
7b26c885bd
Always link symlinks directly
2014-07-12 19:56:58 -05:00
Jack Nagel
3b7c5af431
Add test for InstallRenamed module
2014-07-11 19:01:55 -05:00
Jack Nagel
c259866517
Raise Errno::ENOENT instead of RuntimeError from Pathname#install
2014-07-10 22:00:43 -05:00
Jack Nagel
126d2133ab
Fix method signature
2014-07-10 12:42:54 -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
9822faa56a
Simplify BuildEnvironmentDSL test setup
2014-07-07 21:00:38 -05:00
Jack Nagel
6664ec23dc
Merge should return self
2014-07-07 20:03:41 -05:00
Jack Nagel
3e326b79fe
Dependency initializer takes an array
2014-07-07 19:21:39 -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
b4fd54ae92
Close duped output streams before returning
2014-07-06 15:03:38 -05:00
Jack Nagel
ad27b21cd1
Add popen wrapper that does not invoke the shell
2014-07-05 13:50:54 -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
Jack Nagel
9e19db0dd6
Don't assign @keg twice in setup
2014-07-03 23:27:53 -05:00
Jack Nagel
4acf25a2b9
No need to silence output from Keg#link anymore
2014-07-03 23:27:53 -05:00
Jack Nagel
aad09a5a63
Option does not need to be Comparable
2014-07-03 19:29:18 -05:00
Jack Nagel
7d8a901f7a
Add assert_eql to provide better failure messages for eql? tests
2014-07-03 16:55:13 -05:00
Jack Nagel
1ee4cd94ba
Fix PkgVersion#<=>
2014-07-03 16:37:43 -05:00
Jack Nagel
b78308d2d5
Fix Formula#<=> on trunk Ruby
...
Arguably this method shouldn't exist and sort_by(&:name) used instead.
2014-07-03 15:00:41 -05:00