rebar3
rebar3 copied to clipboard
src_tests option for Relx could be very slow but enabled by default
Description
rebar3 release
runs 30 seconds faster for MongooseIM after setting src_tests
option to false
in relx.
Detailed explanation https://github.com/esl/MongooseIM/pull/4099
{relx, [{release, { mongooseim, {cmd, "cat VERSION | tr -d '\r\n'"} }, []},
%% Disable some warnings in systools:make_script/2 which are extremely slow (saves 30 seconds)
{src_tests, false}
...
Expected behaviour
src_tests could be disabled by default. Or we can write in docs that it is very slow. We could alternatively add a warning suggesting that the option could be disabled, if making script file takes more than 5 seconds.
Maybe relx repo is the better place for this issue.
@tsloughter do you recall what that function plays? Validating source paths?
eeeek 30 seconds!?
Maybe rebar3 should set it to false by default and relx not?
My thinking there is that since rebar3 already does the compilation step its job is to ensure source and object files are up to date and not relx's, so it can be skipped in relx.
That's a good call out yeah, under that mechanism we could switch the default since we track it all.