summaryrefslogtreecommitdiff
path: root/src/rebar_state.erl
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge pull request #283 from fishcakez/dial_warnsFred Hebert2015-03-251-1/+1
|\ | | | | Fix some dialyzer warnings
| * Fix dialyzer warningsJames Fish2015-03-181-1/+1
| |
* | Fix property mergingFred Hebert2015-03-241-30/+38
| | | | | | | | | | | | | | | | | | | | | | Much clearer semantics now. All lists are treated as proplists, meaning we want to: 1) allow duplicates (providers have to avoid them if they must) 2) preserve order of elements that compare equal (`a == {a, val}`) through a stable sort (so if `{a, b}` comes before `a`, we keep `{a, b}` first in the list 3) In two lists of attributes requiring a merge, we always give the 'new' profile a priority to override the default one.
* | Preserve profile order on mergeable tuple/optsFred Hebert2015-03-221-1/+57
|/ | | | | | | | | | | 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.
* merge rebar config opts for parent like done for profilesTristan Sloughter2015-03-111-20/+29
|
* store base opts after initialization of providersTristan Sloughter2015-03-061-0/+1
|
* apply profiles and overrides for an app's opts to the base optsTristan Sloughter2015-03-051-2/+4
|
* `add_to_profile/3` function added to `rebar_state`alisdair sullivan2015-03-021-2/+8
|
* Merge pull request #187 from tsloughter/profiles_dirTristan Sloughter2015-03-021-7/+9
|\ | | | | make base_dir for a run include the profiles in path, link to shared dep
| * copy project apps to deps output dir for compilationTristan Sloughter2015-02-281-7/+9
| |
* | don't replace non-string list with empty list in profile mergeTristan Sloughter2015-03-021-0/+7
|/
* profiles: combine lists of values for conflicting config optionsTristan Sloughter2015-02-241-3/+1
|
* WIPFred Hebert2015-02-111-2/+6
| | | | | | Test that all the correct locks are set for an upgrade run. Now to actually re-run the install deps and prove it works
* clean up create_logic_providers functionTristan Sloughter2015-02-021-9/+9
|
* support for provider_hooks in configTristan Sloughter2015-01-311-19/+37
|
* change `rebar_app_into` to `rebar_app_info` in typespecsalisdair sullivan2015-01-081-3/+3
|
* don't allow locked transitive dep to override higher level depTristan Sloughter2015-01-041-2/+2
|
* overrides working with lock except in case of adding to config after lockTristan Sloughter2015-01-011-1/+2
|
* overrides working except for transitive dep inheritance with lock fileTristan Sloughter2014-12-301-0/+39
|
* Dynamic 'do' provider for namespacesFred Hebert2014-12-211-0/+8
| | | | | | | | | | | Using a namespace such as 'rebar3 lfe new' will look for the 'new' command in 'lfe' namespace without the need for a 'do' provider to be registered in that namespace. Manually checked that 'rebar3 as <profile> <namespace> command' works, as well with 'default' and 'do'. Test suite still needed.
* rewrite profilesTristan Sloughter2014-12-161-38/+35
|
* don't lose defualt deps when creating current profileTristan Sloughter2014-12-061-0/+5
|
* don't use lock file for non-defualt profile depsTristan Sloughter2014-12-061-3/+1
|
* don't store global state variables in opts dictTristan Sloughter2014-12-061-13/+29
|
* move dir functions from utils to new module rebar_dirTristan Sloughter2014-12-011-4/+4
|
* move deps_to_build out of config dict of stateTristan Sloughter2014-12-011-0/+10
|
* do not erase deps from optsTristan Sloughter2014-12-011-1/+1
|
* add use of REBAR_PROFILE os var to set default profileTristan Sloughter2014-11-301-8/+19
|
* only apply profiles to defaultTristan Sloughter2014-11-301-7/+14
|
* global plugins install to global config directoryTristan Sloughter2014-11-291-1/+6
|
* fix lock provider to work anytime it is runTristan Sloughter2014-11-291-36/+19
|
* wip: profilesTristan Sloughter2014-11-291-22/+70
|
* replace rlx_depsolver types with new package typesTristan Sloughter2014-11-221-2/+2
|
* replace rlx_depsolver use with new rebar_digraphTristan Sloughter2014-11-221-2/+2
|
* output error on bad provider attempting to be addedTristan Sloughter2014-10-221-2/+7
|
* dialyzer fixesTristan Sloughter2014-10-181-1/+2
|
* support compile jobs optionTristan Sloughter2014-10-101-2/+2
|
* split options up by taskTristan Sloughter2014-10-101-3/+9
|
* move providers to separate appTristan Sloughter2014-10-031-11/+22
|
* refactor bc supporting source deps from central repo nowTristan Sloughter2014-09-301-8/+8
|
* return error messages from providersTristan Sloughter2014-09-271-2/+6
|
* more dialyzer fun. no likey opaque typesTristan Sloughter2014-09-211-44/+11
|
* slowly widdling away at dialyzer errorsTristan Sloughter2014-09-201-3/+4
|
* wip: updating handling of src deps to include level in lockTristan Sloughter2014-09-201-2/+12
|
* add support for plugins as pre and post hooksTristan Sloughter2014-09-181-0/+13
|
* add first testTristan Sloughter2014-09-011-0/+7
|
* replace deps list with ordsetTristan Sloughter2014-08-311-3/+2
|
* refactor install_deps again and rename app_builder to compileTristan Sloughter2014-08-311-16/+26
|
* wip: reworking deps fetching/sortingTristan Sloughter2014-08-291-2/+22
|
* use locks if existsTristan Sloughter2014-08-281-1/+1
|