rebar3

Erlang build tool that makes it easy to compile and test Erlang applications and releases.

APACHE-2.0 License

Stars
1.7K
Committers
328

Bot releases are visible (Hide)

rebar3 - 3.22.1

Published by github-actions[bot] about 1 year ago

rebar3 - 3.22.0

Published by github-actions[bot] over 1 year ago

This release most importantly contains patches to fix blocking issues on Windows:


This release also contains an experimental and optional change that warrants a bit of explanation: Support rich compiler messages in errors and in warnings

Given the module:

-module(fake_mod).

-export([diagnostic/1]).

diagnostic(A) ->
    X = add(5 / 0),
    {X,X}.

add(X) -> X.

add(X, Y) -> X + Y.

Calling rebar3 compile can now yield:

...
===> Compiling apps/rebar/src/fake_mod.erl failed
   ┌─ apps/rebar/src/fake_mod.erl:
 5 │  diagnostic(A) ->
   │             ╰── variable 'A' is unused

   ┌─ apps/rebar/src/fake_mod.erl:
 6 │      X = add(5 / 0),
   │                ╰── evaluation of operator '/'/2 will fail with a 'badarith' exception

    ┌─ apps/rebar/src/fake_mod.erl:
 11 │  add(X, Y) -> X + Y.
    │  ╰── function add/2 is unused

and in a terminal supporting color output:

By default, this format is turned off, but can be turned on optionally by configuring values with

{compiler_error_format, rich}.

You can get this enabled. You may want to put it in your global rebar3 config file. That being said, this may break some tooling that could parse rebar3-specific output. The default value is {compiler_error_format, minimal}. and putting that value back in should fix any breakage. We're also expecting color output to have a few bugs related to a rather naive heuristic used to delimit language constructs, but we wanted to make the feature available for feedback and this bug-fixing release was a decent opportunity.

This functionality relies on an expanded compiler API exposed by Rebar3, but since we're not yet quite sure what form we want it to take, we'll keep the new API undocumented in the short term.

rebar3 - 3.21.0

Published by github-actions[bot] over 1 year ago

rebar3 - 3.20.0

Published by github-actions[bot] about 2 years ago

This release took a while to build; OTP-25.1 had incompatibilities with EUnit that interrupted the CI process, and which are corrected in later releases.

New features:

This new vendor structure should be of no impact to anyone using Rebar3 as a built artifact, but should make the life of corporate users and package managers much easier by having pre-bundled in all dependencies and allowing effective offline builds. It also simplifies our bootstrap code and reduces security issues by not having to download a certificate bundle without certificates, at least until our oldest supported version can use Erlang's new built-in on-host certificate lookup mechanisms.

If you do rely on Rebar3 source for your tooling or any other mechanisms, then you will want to cd apps/rebar before running other commands.

Other fixes:

rebar3 - 3.17.0

Published by github-actions[bot] about 3 years ago

This release is mostly bug fixes, and repairs prior broken builds of elixir dependencies, but also includes a couple of useful features.

New Features:

Bug fixes:

rebar3 - 3.13.3

Published by ferd over 3 years ago

rebar3 - 3.16.1

Published by github-actions[bot] over 3 years ago

rebar3 - 3.15.2

Published by github-actions[bot] over 3 years ago

Major security fix around TLS validation. See https://ferd.ca/you-ve-got-to-upgrade-rebar3.html

rebar3 - 3.16.0

Published by ferd over 3 years ago

This release drops multiple OTP versions as officially supported. We're aligning rebar3 development with the OTP team's compatibility guarantees, as some deprecations from OTP-21 were removed in OTP-24 and we just could not maintain compatible code bases. We're using the breakage opportunity to change just how much we support to something more sustainable.

The release also contains extra fixes that should prove useful.

rebar3 - 3.15.1

Published by github-actions[bot] over 3 years ago

rebar3 - 3.14.3

Published by github-actions[bot] almost 4 years ago

rebar3 - 3.14.2

Published by ferd almost 4 years ago

Here's all the changes that may impact some behaviour:

And some Internal Changes:

Contributions from 17 people are part of this release, and the project health is starting to look better; thanks to everyone involved!

rebar3 - 3.14.0

Published by tsloughter about 4 years ago

New Features (since 3.13.2):

Relx Changes (including more new features):

Compiler Changes:

Other Changes:

rebar3 - 3.14.0-rc2

Published by ferd over 4 years ago

New Features (since 3.13.2):

Relx Changes (including more new features):

Compiler Changes:

Other Changes: