This replaces all deprecated function usage by alternative ones based on
a version switch enacted at compile time, preventing all warnings.
This will likely introduce some possible runtime errors in using a
Rebar3 compiled on OTP-20 or OTP-21 back in versions 19 and earlier, but
we can't really work around that.
A bunch of dependencies have been updated to support OTP-21 without
warnings as well.
Get more up-to-date root certs. This was blocked for a while because
certifi wouldn't build on windows, but this is now fixed, with minimal
changes to the use case -- only a small change in the bootstrap script
is required.
The new certifi lib is also a few megabytes lighter than before, which
is good for rebar3.
This fixes the output of end_per_testcase crash notifications when the
test passes.
This also detect an issue of the kind with rebar_pkg_SUITE which is now
fixed.
Repeats some of the steps used in the bootstrap script for non-windows
systems so that 'rebar3 escriptize' can be used in development for
faster results:
- ./bootstrap 9.95s user 1.55s system 102% cpu 11.234 total
- rebar3 escriptize 0.49s user 0.14s system 101% cpu 0.623 total
Prior to this patch, the escriptize command flat out selected all
declared dependencies.
This patch instead looks at the app files and only includes the
dependencies of the top level app and the extra ones, avoiding to
package more apps than required.
This required a version bump on cth_readable as it mistakenly included
'syntax_lib' instead of 'syntax_tools' as a dependency.
this is slower than the compile time check but i guess packaging rebars with
repos is still a thing and i think only the eunit and ct providers call it
anyways