Просмотр исходного кода

Only lint app files when compiling

This allows to reduce the number of noise to only checking deps' app
files when they're built, rather than on every run.

Since main apps and checkouts are still compiled every time, the linting
takes place there and then with a higher frequency.
pull/2100/head
Fred Hebert 6 лет назад
Родитель
Сommit
5c89f25d10
3 измененных файлов: 7 добавлений и 2 удалений
  1. +6
    -1
      src/rebar_app_utils.erl
  2. +1
    -0
      src/rebar_prv_compile.erl
  3. +0
    -1
      test/rebar_compile_SUITE.erl

+ 6
- 1
src/rebar_app_utils.erl Просмотреть файл

@ -37,6 +37,7 @@
parse_dep/6,
expand_deps_sources/2,
dep_to_app/7,
lint_app_info/1,
format_error/1]).
-include("rebar.hrl").
@ -101,7 +102,6 @@ validate_application_info(AppInfo, AppDetail) ->
undefined ->
false;
AppFile ->
lint_detail(AppDetail, AppFile),
case proplists:get_value(modules, AppDetail) of
undefined ->
?PRV_ERROR({module_list, AppFile});
@ -110,6 +110,11 @@ validate_application_info(AppInfo, AppDetail) ->
end
end.
lint_app_info(AppInfo) ->
AppDetails = rebar_app_info:app_details(AppInfo),
AppFile = rebar_app_info:app_file(AppInfo),
lint_detail(AppDetails, AppFile).
-spec lint_detail(list(), file:filename_all()) -> ok.
lint_detail(AppDetail, AppFile) ->
lint_description(AppDetail, AppFile),

+ 1
- 0
src/rebar_prv_compile.erl Просмотреть файл

@ -247,6 +247,7 @@ has_all_artifacts(AppInfo1) ->
{false, File} ->
throw(?PRV_ERROR({missing_artifact, File}));
true ->
rebar_app_utils:lint_app_info(AppInfo1),
true
end.

+ 0
- 1
test/rebar_compile_SUITE.erl Просмотреть файл

@ -41,7 +41,6 @@ all() ->
dont_recompile_when_erl_compiler_options_env_does_not_change,
recompile_when_erl_compiler_options_env_changes,
rebar_config_os_var,
app_file_linting].
groups() ->

Загрузка…
Отмена
Сохранить