summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSerge Aleynikov <saleyn@gmail.com>2019-06-26 20:29:59 +0600
committerSerge Aleynikov <saleyn@gmail.com>2019-06-26 20:29:59 +0600
commit86bc08d164dfd84a1633597044fa64de81e18383 (patch)
tree02ad1a9e0fe2948d9f60525336d3656b8e77044e /src
parentd5188093519bc45433a6baf528438cc773307059 (diff)
Add format_error/1 to print errors nicely
Diffstat (limited to 'src')
-rw-r--r--src/rebar_compiler_erl.erl11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/rebar_compiler_erl.erl b/src/rebar_compiler_erl.erl
index 6266743..a39e906 100644
--- a/src/rebar_compiler_erl.erl
+++ b/src/rebar_compiler_erl.erl
@@ -6,9 +6,11 @@
needed_files/4,
dependencies/3,
compile/4,
- clean/2]).
+ clean/2,
+ format_error/1]).
-include("rebar.hrl").
+-include_lib("providers/include/providers.hrl").
context(AppInfo) ->
EbinDir = rebar_app_info:ebin_dir(AppInfo),
@@ -81,7 +83,7 @@ dependencies(Source, SourceDir, Dirs) ->
ok = file:close(Fd),
AbsIncls;
{error, Reason} ->
- throw({cannot_read_file, Source, file:format_error(Reason)})
+ throw(?PRV_ERROR({cannot_read_file, Source, file:format_error(Reason)}))
end.
compile(Source, [{_, OutDir}], Config, ErlOpts) ->
@@ -367,3 +369,8 @@ warn_and_find_path(File, Dir) ->
[]
end
end.
+
+format_error({cannot_read_file, Source, Reason}) ->
+ lists:flatten(io_lib:format("Cannot read file '~s': ~s", [Source, Reason]));
+format_error(Other) ->
+ io_lib:format("~p", [Other]).