3.3.0
New Features:
- lock file contains expected hash for pkg dependencies, which allows for safer dependency fetching and paves the way for multi-index support
- Escriptize provider made hookable
Fixes:
- Escriptize based on configured apps only
- Handle
escriptize
error when a specified app is missing - Fix filtering of system libraries in escriptize
- Avoid PLT rebuild when files deleted on new dialyzer
- Handle empty PLT or app when using dialyzer
- fix catching
not_valid
error on dialyzer - Upgrade relx to 3.21.0
- Bugfix on version resolution compatibility in OTP 17.x and earlier
- Fix Edoc cross-links in umbrella projects
- Print error on too many help arguments
- Fix configuration loading in CT
- template_dir option is documented and made recursive for templates
- Ignore IntelliJ IDEA files in templates
- ssl_verify_hostname was renamed to ssl_verify_fun
- Fix opts check when compiler called with dict opts by plugins
- Fixes for windows environment: 1) copy empty directories when cloning, 2) fix order of arguments in git deps fetching
- Let DEBUG="" and QUIET="" disable the options
The change to the lock file format is the biggest thing to note. It should be compatible with all formats going back to the beta-4
tag, but versions older than 3.3.0 will display warnings and lose the newly added information on the package hashes.
Any lock file generated by an older rebar3 version will be accepted by this one, and new information related to the package hashes will be added. This will allow a safer usage in case the same package is found on multiple indexes or mirrors, but actually has a different hash on there than what is expected by the existing project.