Tristan Sloughter
ee0f4dcd60
merge_locks crashed if a config didn't have a deps entry
10 lat temu
Tristan Sloughter
4374999d95
real bootstrapping
10 lat temu
Tristan Sloughter
d317869a3e
clean ups from Fred's comments
10 lat temu
Tristan Sloughter
ef22eeb387
error on dep name that isn't an atom
10 lat temu
Tristan Sloughter
d75ba02671
support single atoms for pkg deps, fetch highest version available
10 lat temu
Fred Hebert
d6dc56da03
Fix lock merging for nonexistant lock files.
10 lat temu
alisdair sullivan
04235f1a63
don't attempt to merge locks when there are no dependencies
fixes #172
10 lat temu
Tristan Sloughter
8f03afded4
consolidate app validation and exist checks
10 lat temu
Tristan Sloughter
02e33a265b
check for newly added deps in config file that aren't level 0 in the lock
10 lat temu
Tristan Sloughter
1ff904f39a
handle throw by relx
10 lat temu
Tristan Sloughter
b20680304d
split options up by task
10 lat temu
Tristan Sloughter
e1b1152b21
slowly widdling away at dialyzer errors
10 lat temu
Tristan Sloughter
629792f36b
start of moving to splitting state from config parsing
10 lat temu
Tristan Sloughter
5735c538b9
add rebar update provider
10 lat temu
Tristan Sloughter
a602cfc593
replace logging with ec_cmd_log from erlware_commons
10 lat temu
Tristan Sloughter
eb8fa02df7
large refactoring
Removed separate compilers
Resolves apps to build
Finds avail deps before pulling/building
Includes relx
Simplifies build commands
10 lat temu
Tuncer Ayaz
c22370a2cb
Use correct types for OTP >=17.x
11 lat temu
Tuncer Ayaz
5f995bfdc0
Fix a few minor formatting inconsistencies
* fix overlong lines
* where appropriate use %% instead of %
11 lat temu
Matwey V. Kornilov
a7e05f57d1
Fix build for 17.0 using the solutiong proposed by @tsloughter
We use namespaced_types option to choose between dict() and dict:dict() types.
11 lat temu
Tuncer Ayaz
77a0eb6fe4
Fix #56 (always-on recursion)
Always-on recursive application of all rebar commands causes too many
issues. Recursive application is required for:
1. dealing with dependencies: get-deps, update-deps, and compile of deps
right after get-deps or update-deps
2. projects with a riak-like apps/ project structure and dev process
The vast majority of projects are not structured like riak. Therefore,
moving forward it's best to (by default) restrict recursive behavior to
dealing with deps. This commit does that and also adds command line and
rebar.config options for controlling or configuring recursion. Also, we
introduce two meta commands: prepare-deps (equivalent to rebar -r
get-deps compile) and refresh-deps (equivalent to rebar -r update-deps
compile). riak-like projects can extend the list of recursive commands
(to include 'eunit' and 'compile') by adding
{recursive_cmds, [eunit, compile]} to rebar.config.
12 lat temu
Tuncer Ayaz
277a10cd3b
Fix is_verbose/1 helper function
11 lat temu
Tuncer Ayaz
2f636236bf
rebar_config:is_verbose/0: fix variable name
11 lat temu
Tuncer Ayaz
4f19572ff9
Remove two comments
12 lat temu
Tuncer Ayaz
392adcf967
Refactor setup_env rebar_config funs
12 lat temu
Tuncer Ayaz
252757c753
Do not use application:set_env
12 lat temu
Tuncer Ayaz
4fe3306d99
Document rebar_config TODOs
13 lat temu
Tuncer Ayaz
db78956295
Make sure cached setup_envs are reset
13 lat temu
Tuncer Ayaz
e185e86bff
Remove shared state
13 lat temu
Tuncer Ayaz
b2fdce8879
Use dict() instead of proplist() for shared env
13 lat temu
Ulf Wiger
afffb4895a
Use correct value for file:script SCRIPT binding
13 lat temu
Tuncer Ayaz
9c1a877bbe
Remove gratuitous blank line
13 lat temu
Ulf Wiger
c3c64c1d70
Fix file:script support
13 lat temu
Tuncer Ayaz
7c418ed2b4
Add support for target-specific port options
{port_specs, [{".*", "priv/foo.so", ["c_src/foo.c"], [{env, []}]}]}.
13 lat temu
Ulf Wiger
b3e9e76f57
Use file:script if a .config.script file present
13 lat temu
Tuncer Ayaz
015e58201c
Support different log levels
13 lat temu
Tim Watson
5bb536f839
Respect the --config switch when given
Currently the --config switch does not work because when loading
a new rebar config the global setting is ignored for all paths.
This patch provides a check when loading new rebar config to see
whether or not the current config path matches the `base_dir` set in
global conf, which produces the expected behaviour.
13 lat temu
Tuncer Ayaz
a9a7d7c02b
Apply Tidier suggestions
14 lat temu
Tuncer Ayaz
8263f12594
Add support for $HOME/.rebar/config
14 lat temu
Tuncer Ayaz
6d75bfbeb0
Clean up specs
14 lat temu
Tuncer Ayaz
c466076ffb
Clean up emacs file local variables
14 lat temu
Tuncer Ayaz
a8870807fc
Fix code clarity
14 lat temu
Anders
513ae33c5c
Add possibility to specify rebar config for the "main" application
14 lat temu
Kostis Sagonas
7dc76d578e
Tidier improvements
14 lat temu
iw
39907904e8
Include support for dialyzer
15 lat temu
Tuncer Ayaz
fb0cee2afb
Implemented option to specify number of concurrent workers a command may use
15 lat temu
Dave Smith
bd090f0db2
Refactor of rebar_config to facilitate identification of "local" config settings
15 lat temu
Tuncer Ayaz
0817dec7ca
Rolled back getopt to restore custom variables
15 lat temu
Tuncer Ayaz
9a8015f2d7
Added vi modeline/emacs local variables to file headers
15 lat temu
Tuncer Ayaz
940f9c232b
Enhanced option parsing with new getopt and made rebar more user friendly
15 lat temu
Tuncer Ayaz
8c85021c1e
Deleted trailing whitespace
15 lat temu