summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml2
-rwxr-xr-xbootstrap2
-rw-r--r--rebar.config4
-rw-r--r--rebar.lock8
-rw-r--r--src/rebar.app.src2
-rw-r--r--src/rebar_erlc_compiler.erl21
-rw-r--r--src/rebar_prv_local_install.erl8
7 files changed, 31 insertions, 16 deletions
diff --git a/.travis.yml b/.travis.yml
index 1cca5c5..c6c685a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -9,6 +9,8 @@ matrix:
otp_release: 19.3
- os: linux
otp_release: 20.0
+ - os: linux
+ otp_release: 21.0
- os: osx
language: generic
before_script:
diff --git a/bootstrap b/bootstrap
index c4d0abf..5dedd71 100755
--- a/bootstrap
+++ b/bootstrap
@@ -24,7 +24,7 @@ main(_) ->
bootstrap_rebar3(),
%% Build rebar.app from rebar.app.src
- {ok, App} = rebar_app_info:new(rebar, "3.6.0", filename:absname("_build/default/lib/rebar/")),
+ {ok, App} = rebar_app_info:new(rebar, "3.6.1", filename:absname("_build/default/lib/rebar/")),
rebar_otp_app:compile(rebar_state:new(), App),
%% Because we are compiling files that are loaded already we want to silence
diff --git a/rebar.config b/rebar.config
index 5bd4fab..8572ff3 100644
--- a/rebar.config
+++ b/rebar.config
@@ -1,13 +1,13 @@
%% -*- mode: erlang;erlang-indent-level: 4;indent-tabs-mode: nil -*-
%% ex: ts=4 sw=4 ft=erlang et
-{deps, [{erlware_commons, "1.1.0"},
+{deps, [{erlware_commons, "1.2.0"},
{ssl_verify_fun, "1.1.3"},
{certifi, "2.0.0"},
{providers, "1.7.0"},
{getopt, "1.0.1"},
{bbmustache, "1.5.0"},
- {relx, "3.25.0"},
+ {relx, "3.26.0"},
{cf, "0.2.2"},
{cth_readable, "1.4.2"},
{eunit_formatters, "0.5.0"}]}.
diff --git a/rebar.lock b/rebar.lock
index 981cfd6..0ed952f 100644
--- a/rebar.lock
+++ b/rebar.lock
@@ -3,11 +3,11 @@
{<<"certifi">>,{pkg,<<"certifi">>,<<"2.0.0">>},0},
{<<"cf">>,{pkg,<<"cf">>,<<"0.2.2">>},0},
{<<"cth_readable">>,{pkg,<<"cth_readable">>,<<"1.4.2">>},0},
- {<<"erlware_commons">>,{pkg,<<"erlware_commons">>,<<"1.1.0">>},0},
+ {<<"erlware_commons">>,{pkg,<<"erlware_commons">>,<<"1.2.0">>},0},
{<<"eunit_formatters">>,{pkg,<<"eunit_formatters">>,<<"0.5.0">>},0},
{<<"getopt">>,{pkg,<<"getopt">>,<<"1.0.1">>},0},
{<<"providers">>,{pkg,<<"providers">>,<<"1.7.0">>},0},
- {<<"relx">>,{pkg,<<"relx">>,<<"3.25.0">>},0},
+ {<<"relx">>,{pkg,<<"relx">>,<<"3.26.0">>},0},
{<<"ssl_verify_fun">>,{pkg,<<"ssl_verify_fun">>,<<"1.1.3">>},0}]}.
[
{pkg_hash,[
@@ -15,10 +15,10 @@
{<<"certifi">>, <<"A0C0E475107135F76B8C1D5BC7EFB33CD3815CB3CF3DEA7AEFDD174DABEAD064">>},
{<<"cf">>, <<"7F2913FFF90ABCABD0F489896CFEB0B0674F6C8DF6C10B17A83175448029896C">>},
{<<"cth_readable">>, <<"0F57B4EB7DA7F5438F422312245F9143A1B3118C11B6BAE5C3D1391C9EE88322">>},
- {<<"erlware_commons">>, <<"F69F3D96044C2A9E735CCD76F469FEC5FC851797E5FE23115698B4EDC072191B">>},
+ {<<"erlware_commons">>, <<"2BAB99CF88941145767A502F1209886F1F0D31695EEF21978A30F15E645721E0">>},
{<<"eunit_formatters">>, <<"6A9133943D36A465D804C1C5B6E6839030434B8879C5600D7DDB5B3BAD4CCB59">>},
{<<"getopt">>, <<"C73A9FA687B217F2FF79F68A3B637711BB1936E712B521D8CE466B29CBF7808A">>},
{<<"providers">>, <<"BBF730563914328EC2511D205E6477A94831DB7297DE313B3872A2B26C562EAB">>},
- {<<"relx">>, <<"460A336514DC209F0FA243A6F2D4ECB33B3652A1588CAF9FCE3C1FA170FACAEC">>},
+ {<<"relx">>, <<"DD645ECAA1AB1647DB80D3E9BCAE0B39ED0A536EF37245F6A74B114C6D0F4E87">>},
{<<"ssl_verify_fun">>, <<"6C49665D4326E26CD4A5B7BD54AA442B33DADFB7C5D59A0D0CD0BF5534BBFBD7">>}]}
].
diff --git a/src/rebar.app.src b/src/rebar.app.src
index 5c76f59..c96f65c 100644
--- a/src/rebar.app.src
+++ b/src/rebar.app.src
@@ -3,7 +3,7 @@
{application, rebar,
[{description, "Rebar: Erlang Build Tool"},
- {vsn, "3.6.0"},
+ {vsn, "git"},
{modules, []},
{registered, []},
{applications, [kernel,
diff --git a/src/rebar_erlc_compiler.erl b/src/rebar_erlc_compiler.erl
index ebdd9dd..920c3b4 100644
--- a/src/rebar_erlc_compiler.erl
+++ b/src/rebar_erlc_compiler.erl
@@ -799,8 +799,27 @@ dir_recursive(Opts, Dir, CompileOpts) when is_list(CompileOpts) ->
end.
valid_erl_first_conf(FileList) ->
- case rebar_utils:is_list_of_strings(FileList) of
+ Strs = filter_file_list(FileList),
+ case rebar_utils:is_list_of_strings(Strs) of
true -> true;
false -> ?ABORT("An invalid file list (~p) was provided as part of your erl_files_first directive",
[FileList])
end.
+
+filter_file_list(FileList) ->
+ Atoms = lists:filter( fun(X) -> is_atom(X) end, FileList),
+ case Atoms of
+ [] ->
+ FileList;
+ _ ->
+ atoms_in_erl_first_files_warning(Atoms),
+ lists:filter( fun(X) -> not(is_atom(X)) end, FileList)
+ end.
+
+atoms_in_erl_first_files_warning(Atoms) ->
+ W = "You have provided atoms as file entries in erl_first_files; "
+ "erl_first_files only expects lists of filenames as strings. "
+ "The following modules (~p) may not work as expected and it is advised "
+ "that you change these entires to string format "
+ "(e.g., \"src/module.erl\") ",
+ ?WARN(W, [Atoms]).
diff --git a/src/rebar_prv_local_install.erl b/src/rebar_prv_local_install.erl
index c41812f..cd6a204 100644
--- a/src/rebar_prv_local_install.erl
+++ b/src/rebar_prv_local_install.erl
@@ -89,15 +89,9 @@ extract_escript(State, ScriptPath) ->
BinFile = filename:join(BinDir, "rebar3"),
filelib:ensure_dir(BinFile),
- {ok, #file_info{mode = _,
- uid = Uid,
- gid = Gid}} = file:read_file_info(ScriptPath),
-
?INFO("Writing rebar3 run script ~ts...", [BinFile]),
file:write_file(BinFile, bin_contents(OutputDir)),
- ok = file:write_file_info(BinFile, #file_info{mode=33277,
- uid=Uid,
- gid=Gid}),
+ ok = file:write_file_info(BinFile, #file_info{mode=33277}),
?INFO("Add to $PATH for use: export PATH=~ts:$PATH", [BinDir]),