3482 Commits

Author SHA1 Message Date
Jack Nagel
445a512379 Drop unnecessary to_a calls in options tests 2014-08-13 00:33:18 -05:00
Jack Nagel
25395c6de6 Replace Options.coerce with an alternate constructor 2014-08-12 23:55:28 -05:00
Jack Nagel
0a2be32d80 Remove unused branches from Options.coerce 2014-08-12 23:55:28 -05:00
Jack Nagel
28bd10551f Options is no longer used directly by BuildOptions 2014-08-12 20:23:02 -05:00
Jack Nagel
ecaf1592a0 Always pass an Options instance to the BuildOptions constructor 2014-08-12 20:09:35 -05:00
Jack Nagel
15162911e3 Deep copies of the build object are no longer needed 2014-08-11 17:48:30 -05:00
Jack Nagel
161778f0f4 Stop exposing defined options from the build object 2014-08-10 22:55:28 -05:00
Jack Nagel
f306e56d21 Add a test for legacy options 2014-08-10 16:47:34 -05:00
Jack Nagel
ca3c727267 Stop exposing combined options from the tab 2014-08-09 16:27:57 -05:00
Jack Nagel
f0b75b2869 Stop duping options when duping the build object
The options collection cannot be mutated from the build object, so it
can be shared among copies safely.
2014-08-09 10:30:43 -05:00
Jack Nagel
618bb9b413 Better assertions in tab test 2014-08-08 23:31:58 -05:00
Jack Nagel
472a2cec1e Avoid using setters in tab tests 2014-08-07 17:39:55 -05:00
Jack Nagel
0c51cf1245 Use predefined options for universal, cxx11, and 32-bit options
:universal and :cxx11 are now handled directly, so we don't need to
always convert symbols to strings in this method. Symbols should be
reserved for future use.
2014-08-07 10:45:32 -05:00
Jack Nagel
acc1c35f35 Raise ArgumentError for argument errors 2014-08-07 00:48:13 -05:00
Jack Nagel
20452f3edc Add more test coverage for option descriptions 2014-08-07 00:48:13 -05:00
Jack Nagel
fa88b9697c Add a test for cxx11 option special case 2014-08-07 00:03:32 -05:00
Jack Nagel
fccfddb510 Partially revert e1f97e2 to pass new test cases 2014-08-02 20:03:42 -05:00
Jack Nagel
142beddd7a Use polymorphism to simplify stdlib compatibility check 2014-08-02 19:29:59 -05:00
Jack Nagel
f4ae1c9e1b Hide the options data structure better 2014-07-31 19:59:09 -05:00
Jack Nagel
abdff27cd7 Make options available on the spec objects 2014-07-31 19:37:39 -05:00
Jack Nagel
b160cc9bb6 Handle tap file renames that remove a file from the formula directory 2014-07-31 15:58:03 -05:00
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