summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Merge pull request #1574 from djnym/shell-fix-for-rel-type-noneFred Hebert2017-06-151-1/+4
|\ \ \ | | | | | | | | Rebar3 shell supports booting applications with type 'none'
| * | | Application type of none was not working.Anthony Molinaro2017-06-151-1/+4
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I noticed this when trying to include entop in a release. Entop uses cecho which takes over the terminal, so you do not want it loaded or started. According to http://erlang.org/doc/man/rel.html, when you specify a Type of none it should not load or start, but the code for it's modules should be loaded. This patch ensures the code is not loaded or started, but doesn't do anything with the code paths. At the very least this allows me to start a shell in the case where I have an application of type none, and the application is neither loaded nor started.
* | | Merge pull request #1572 from ferd/fix-xref-undef-behaviourFred Hebert2017-06-133-4/+54
|\ \ \ | | | | | | | | Prevent xref crashes with undef behaviours
| * | | Prevent xref crashes with undef behavioursFred Hebert2017-06-133-4/+54
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | When a given behaviour module does not exist, rebar3 brutally crashes. This patch makes it so instead, there is a warning output menitoning the missing behaviour, and this one is omitted from the unused function calls check. This means that unused calls will instead be shown for the module implementing a non-existing behaviour, as if no behaviour were declared in the first place.
* | | Merge pull request #1571 from getong/add_path_should_be_headFred Hebert2017-06-131-1/+1
|\ \ \ | |/ / |/| | the new added PATH value should be in the first position, in case the…
| * | the new added PATH value should be in the first position, in case there be ↵getong2017-06-131-1/+1
|/ / | | | | | | other same name cmd
* | Merge pull request #1569 from ferd/fix-xref-circular-dep-crashFred Hebert2017-06-089-4/+187
|\ \ | | | | | | Fix xref compile hook on deps
| * | Fix xref compile hook on depsFred Hebert2017-06-079-4/+187
|/ / | | | | | | | | | | | | | | | | | | | | If xref analysis is being run by a dependency during its compilation phase, the xref provider will try to add that deps' parents to the check job while the ebin/ directories for them do not exist. This causes a crash. This patch makes it so directories are only added if they are existing, preventing failure on any compile hook for dependencies and allowing successful compilation as a best effort.
* | Merge pull request #1564 from tsloughter/reset_profile_hooksTristan Sloughter2017-06-022-11/+40
|\ \ | | | | | | reset hooks under profiles for application opts
| * | reset hooks under profiles for application optsTristan Sloughter2017-06-022-11/+40
| | |
* | | Merge pull request #1563 from djnym/relx-overlay-fixFred Hebert2017-06-012-1/+30
|\ \ \ | |/ / |/| | Avoid reversing relx overlays.
| * | Avoid reversing relx overlays.Anthony Molinaro2017-06-012-1/+30
|/ / | | | | | | | | This mostly moves a lists:reverse/1 which ensures that profile overlays are run first but keeps the order of overlays otherwise.
* | Back to git-based versioningFred Hebert2017-05-241-1/+1
| |
* | Bump to 3.4.1Fred Hebert2017-05-242-2/+2
| | | | | | | | | | | | Includes Relx fixes Signed-off-by: Fred Hebert <mononcqc@ferd.ca>
* | Merge pull request #1558 from tsloughter/masterFred Hebert2017-05-242-3/+3
|\ \ | | | | | | upgrade relx to 3.23.0
| * | upgrade relx to 3.23.0Tristan Sloughter2017-05-242-3/+3
|/ /
* | Back to git-based versioningFred Hebert2017-05-221-1/+1
| |
* | Bump to 3.4.0Fred Hebert2017-05-222-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patches: - Try to start epmd when distribution fails - Allow non-default profile deps upgrade - Switch default license in templates to Apache 2.0, and hook it up in the .app file - Fix git SHA comparisons for dep update - Let relx know about rebar-specified erl_opts - Use rm_rf instead of ec_file:delete, fixing some deps-related issues on Windows - Handle internal CT failures - Fix profile merging of erl_first_files options - Fix CT output in skipped test cases and failing end of function hooks - Officially drop R15 support, since its SSL libs can no longer talk to hex.pm - REBAR_COLOR supports all ec_cmd_log intensity options, allowing the none value to disable all colors without dropping termcap support - Bump relx to 3.22.4 The one new feature supported here is for the interactive shell: - Support commands in the shell such as r3:Command(), r3:Command("--args=as a string"), or r3:Command(Namespace, "--args=as a string"), instead of just r3:do(Command).
* | Merge pull request #1555 from ferd/autostart-epmdFred Hebert2017-05-211-6/+19
|\ \ | | | | | | Try to start epmd when distribution fails
| * | Try to start epmd when distribution failsFred Hebert2017-05-211-6/+19
|/ / | | | | | | | | We do it by calling os:cmd on a named shell so that the automated daemon rules work for rebar3 as well.
* | Merge pull request #1540 from ferd/allow-profile-deps-upgradeFred Hebert2017-05-192-9/+130
|\ \ | | | | | | Allow profile deps upgrade
| * | Cull default dep names in non-default upgradeFred Hebert2017-05-192-12/+54
| | | | | | | | | | | | | | | | | | Prevents showing false upgrade messages when upgrading in a non-default profile. Also shows an info message explaining default deps don't get updated in a non-default upgrade.
| * | Add test for upgrade of profile depsFred Hebert2017-05-071-2/+67
| | |
| * | Allow to upgrade profile-specific dependenciesFred Hebert2017-05-071-7/+21
| | | | | | | | | | | | | | | | | | Only happens when calling `rebar3 as <profiles> upgrade <dep>`, with the caveat that all profile deps get upgraded and lined up with the rebar config.
* | | Merge pull request #1548 from ferd/tpl-license-matches-defaultTristan Sloughter2017-05-193-31/+193
|\ \ \ | | | | | | | | Match template license app to default license, switch default to Apache 2.0
| * | | Switch default license to Apache 2.0Fred Hebert2017-05-193-31/+193
| | | |
| * | | Match template license app to default licenseFred Hebert2017-05-142-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The default license created with rebar3 templates is a BSD 3 clause license. However the .app.src file generated do not include the license there. This adds the license type, fixing #1447.
* | | | Merge pull request #1513 from alinpopa/masterTristan Sloughter2017-05-191-9/+7
|\ \ \ \ | | | | | | | | | | Fix git SHAs comparison for update.
| * | | | Fix git SHAs comparison for update.Alin Popa2017-03-121-9/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 86e883b8d8d1d16487e245fff02eba8c83da2cdd always returns the full length SHA, therefore when using a dependency having the short SHA, it'll always consider that the SHAs are different, hence it'll alway return true for .
* | | | | Merge pull request #1520 from lrascao/feature/relx_warnings_as_errorsTristan Sloughter2017-05-191-2/+4
|\ \ \ \ \ | | | | | | | | | | | | Let relx know about application erl opts
| * | | | | Let relx know about application erl optsLuis Rascao2017-05-151-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is so that some of them can be enforced (such as warnings_as_errors) on relx's task like generating a release or a release upgrade.
* | | | | | Merge pull request #1553 from filmor/patch-1Fred Hebert2017-05-171-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | Use rm_rf instead of ec_file:delete.
| * | | | | | Use rm_rf instead of ec_file:delete.Benedikt Reinartz2017-05-171-1/+1
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In contrast to `ec_file:delete`, `rebar_file_utils:rm_rf` will also delete write-protected files on Windows which is needed for git object files. Fixes #1483.
* | | | | | Merge pull request #1552 from lrascao/travis_otp19.3_buildFred Hebert2017-05-151-1/+1
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Run Travis tests on latest OTP19.3
| * | | | | Run Travis tests on latest OTP19.3Luis Rascao2017-05-151-1/+1
|/ / / / /
* | | | | Merge pull request #1546 from ferd/cth-end-per-tc-fixalisdair sullivan2017-05-143-4/+4
|\ \ \ \ \ | |_|/ / / |/| | | | Bump cth_readable to 1.2.6
| * | | | Bump cth_readable to 1.2.6Fred Hebert2017-05-123-4/+4
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Merge pull request #1545 from ferd/catch-ct-internal-errorsalisdair sullivan2017-05-111-2/+9
|\ \ \ \ | | | | | | | | | | Handle internal CT failures
| * | | | Handle internal CT failuresFred Hebert2017-05-111-2/+9
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is based on issue #1517 where out of nowhere, CT has returned a user's error code directly. This in turn caused a crashdump in rebar3 itself. This patch handles the unexpected cases by: a) not trying to format them b) converting them to an error whenever they happen The execution flow is still interrupted, but we should fail with a clearer error than a crashdump.
* | | | Merge pull request #1544 from ferd/tpodowd-issue1416Fred Hebert2017-05-112-2/+27
|\ \ \ \ | |_|/ / |/| | | Issue #1416: Merge erl_files_first separately and avoid sorting.
| * | | Add tests for the first_files profile mergesFred Hebert2017-05-111-2/+23
| | | |
| * | | Issue #1416: Merge erl_files_first separately and avoid sorting.Thomas O'Dowd2017-05-111-0/+4
|/ / / | | | | | | | | | | | | | | | The order of the files listed in "erl_files_first" option is important and should not be sorted. By handling the merge similarly to mib_files_first, the sort order is preserved.
* | | Merge pull request #1542 from ferd/bump-cth-readable-1.2.5Fred Hebert2017-05-072-3/+3
|\ \ \ | | | | | | | | Adds support for new ct hook callback
| * | | Adds support for new ct hook callbackFred Hebert2017-05-072-3/+3
|/ / /
* | | Merge pull request #1541 from erlang/drop-r15alisdair sullivan2017-05-042-5/+0
|\ \ \ | | | | | | | | Drop R15 support
| * | | Drop R15 supportFred Hebert2017-05-032-5/+0
|/ / / | | | | | | | | | | | | | | | It can't even fetch packages from Hex anymore because of old SSL/TLS libraries, and so it can't bootstrap anymore either. Plus R20 comes out soon, and 5 major versions is quite enough.
* | | Merge pull request #1536 from djnym/allow-color-noneFred Hebert2017-04-261-0/+2
|\ \ \ | | | | | | | | REBAR_COLOR supports all ec_cmd_log intensity options
| * | | REBAR_COLOR supports all ec_cmd_log intensity optionsAnthony Molinaro2017-04-261-0/+2
|/ / /
* | | Merge pull request #1534 from ferd/abuse-undef-functionsFred Hebert2017-04-252-7/+29
|\ \ \ | | | | | | | | Abuse error_handler to get free metacalls in r3
| * | | Abuse error_handler to get free metacalls in r3Fred Hebert2017-04-242-7/+29
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This uses the very risky '$handle_undefined_function'/2 export from the r3 and rebar_agent modules to allow meta-calls that can support plugins and all other rebar3 extensions. This is nasty but very tempting. Currently we only support: - r3:do(Command) - r3:do(Namespace, Command) There is currently no way to pass arguments to the function such that we can, for example, run cover analysis or tests on a subset of suites. With the new abuse of '$handle_undefined_function'/2, we can detect the unused commands (since they are not exported) and re-route them: - r3:Command() - r3:Command("--args=as a string") - r3:Command(Namespace, "--args=as a string") Of course, in doing so, we make it impossible to use the 'do' provider (as in 'rebar3 do ct -c, cover') since the 'do' function is already required for things to work. Since the previous function had very strict guards, we can, without conflict, add manual overrides that simulate the meta-calls fine. Sample run: https://gist.github.com/ferd/2c06d59c7083c146d25e4ee301de0073