Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix recursive profile merging in umbrella apps | Fred Hebert | 2017-08-11 | 1 | -1/+32 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a config file exists at the root of a project, defines a given configuration value for a given profile, and that a sub-application (umbrella app) also has the same profile defined with the same key (but different values), the configuration values of the sub-application's profile would get silently dropped. The problem being that when the function to merge profiles is applied recursively, it is applied to each profile (so it will merge on the keys test, prod, etc.) rather than to each of the values of each profile. This patch reworks the profile merging so that the current behaviour is respected overall (a profile cannot be cancelled by a subdep's non-existant profile since its value should have been ignored), but ensures that sub-deps' profiles are otherwise applied recursively with the proper rules: - dependencies favor prior values - plugins favor new values - erl_first_files combine the lists - relx uses the tuple merge algorithm - erl_opts has its own custom merge as well - otherwise the new value takes precedence A test has also been added. There is a risk of breakage in some applications that may have relied on the buggy behaviour to work, though at this time we are aware of none of them. | ||||
* | Add tests for the first_files profile merges | Fred Hebert | 2017-05-11 | 1 | -2/+23 |
| | |||||
* | Added regression tests for PR 1398 | Ted Burghart | 2016-12-05 | 1 | -2/+102 |
| | |||||
* | Revert "define the 'EUNIT' macro in the test profile" | alisdair sullivan | 2016-03-03 | 1 | -10/+4 |
| | | | | This reverts commit 4c32c52b557c66ac6e6764efb1ed9135c00a3c20. | ||||
* | define the 'EUNIT' macro in the test profile | alisdair sullivan | 2016-03-03 | 1 | -4/+10 |
| | |||||
* | inject `eunit_compile_opts`, `eunit_first_files` and `TEST` macro | alisdair sullivan | 2015-09-29 | 1 | -2/+2 |
| | | | | prior to running compile and compile prehooks | ||||
* | remove state record from app_info record | Tristan Sloughter | 2015-08-31 | 1 | -2/+1 |
| | |||||
* | Add tests for mixed deps installs | Fred Hebert | 2015-08-16 | 1 | -5/+10 |
| | | | | | Requires a rework of other test suites using the same dep-handling mechanism. | ||||
* | Adding directory path test for deduplication | Fred Hebert | 2015-05-04 | 1 | -0/+18 |
| | |||||
* | Merge branch 'master' into app-discover-profile-duplication | Viacheslav V. Kovalev | 2015-05-01 | 1 | -3/+42 |
|\ | | | | | | | | | Conflicts: test/rebar_profiles_SUITE.erl | ||||
| * | R15 support, replace unsetenv with putenv empty string | Tristan Sloughter | 2015-04-22 | 1 | -1/+1 |
| | | |||||
| * | fix tracking of all profiles dep paths | Tristan Sloughter | 2015-04-22 | 1 | -2/+37 |
| | | |||||
| * | real bootstrapping | Tristan Sloughter | 2015-04-22 | 1 | -1/+1 |
| | | |||||
| * | track and cleanup code paths for different contexts | Tristan Sloughter | 2015-04-21 | 1 | -3/+8 |
| | | |||||
* | | Implement opts umerge deduplication | Viacheslav Kovalev | 2015-04-22 | 1 | -6/+48 |
| | | |||||
* | | Implement some test on profiles deduplication | Viacheslav V. Kovalev | 2015-04-22 | 1 | -0/+91 |
|/ | |||||
* | add a more direct way to generate an `eunitized` test app to | alisdair sullivan | 2015-03-24 | 1 | -4/+4 |
| | | | | test utils and add better eunit tests | ||||
* | Preserve profile order on mergeable tuple/opts | Fred Hebert | 2015-03-22 | 1 | -2/+9 |
| | | | | | | | | | | | Rather than using the stdlib lists:umerge, we expand it to allow fuzzy matching on tuples vs. vals (`key` vs. `{key,val}`) with an overriden sort order so that two tuples or values comparing equal get a priority on the newest profile. This is a partial fix for #287 -- this current patch should be followed by a relx update to take options in order (as if they were a proplist) to complete it. | ||||
* | store base opts after initialization of providers | Tristan Sloughter | 2015-03-06 | 1 | -4/+16 |
| | |||||
* | add test for test profile applied to project apps | alisdair sullivan | 2015-03-05 | 1 | -2/+24 |
| | |||||
* | two failing tests and one passing test to attempt to isolate where | alisdair sullivan | 2015-03-05 | 1 | -2/+48 |
| | | | | | | profiles are failing to be applied relevant to #224 and #233 | ||||
* | fix for profiles_remain_applied_with_config_present | Tristan Sloughter | 2015-03-04 | 1 | -3/+25 |
| | |||||
* | `add_to_profile/3` function added to `rebar_state` | alisdair sullivan | 2015-03-02 | 1 | -2/+25 |
| | |||||
* | don't replace non-string list with empty list in profile merge | Tristan Sloughter | 2015-03-02 | 1 | -2/+10 |
| | |||||
* | profiles: combine lists of values for conflicting config options | Tristan Sloughter | 2015-02-24 | 1 | -2/+20 |
| | |||||
* | basic profile deps tests | Tristan Sloughter | 2015-02-22 | 1 | -0/+82 |