summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* 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.
* Drop R15 supportFred Hebert2017-05-031-3/+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.
* REBAR_COLOR supports all ec_cmd_log intensity optionsAnthony Molinaro2017-04-261-0/+2
|
* 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
* Fix typo, occured -> occurredLuis Rascao2017-04-122-2/+2
|
* Typo: seperate -> separateMichiel Beijen2017-03-274-39/+39
|
* Back to git-based versioningFred Hebert2017-03-231-1/+1
|
* Bump to 3.3.6Fred Hebert2017-03-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - [OSX tests added to CI](https://github.com/erlang/rebar3/pull/1471), joining linux and windows 10 - [upgrade relx to 3.22.3](https://github.com/erlang/rebar3/pull/1518), [fixing multiple issues](https://github.com/erlware/relx/releases/tag/v3.22.3) - [Fixing eunit errors in 19.3 when `init_per_*` isn't paired with `end_per_*`](https://github.com/erlang/rebar3/pull/1516) - [Allow single test spec in ct_opts](https://github.com/erlang/rebar3/pull/1506) - [Properly warn when missing inets at runtime](https://github.com/erlang/rebar3/pull/1505) - [rebar_utils:escape_chars handles quotes in paths](https://github.com/erlang/rebar3/pull/1504) - [Fix typo in help text for upgrade command](https://github.com/erlang/rebar3/pull/1503) - [change package version warnings to debug level](https://github.com/erlang/rebar3/pull/1502) - [Path-type sensitive .cmd creation for escripts](https://github.com/erlang/rebar3/pull/1500) - [Windows escripts get cmd autogenerated](https://github.com/erlang/rebar3/pull/1494) - [REBAR_CONFIG impacts config file for project root only](https://github.com/erlang/rebar3/pull/1497) - [Fix wildcard usage in rebar3 clean](https://github.com/erlang/rebar3/pull/1498) - [Bump cth_readable to 1.2.4](https://github.com/erlang/rebar3/pull/1496) (fixing some erroneous reports when suites get skipped) - [Add respect for src_dirs option in app_discover and app_info](https://github.com/erlang/rebar3/pull/1486) - [Add support for global plugin-defined templates](https://github.com/erlang/rebar3/pull/1473) - [catch badarg exception from eunit in `rebar_prv_eunit`](https://github.com/erlang/rebar3/pull/1472)
* fix "apps" nameVlad Dumitrescu2017-03-061-1/+1
|
* minor fix: name of internal functionVlad Dumitrescu2017-03-061-3/+3
|
* Allow single test spec in ct_optsSiri Hansen2017-03-061-12/+15
| | | | | | The option {spec,Specs} is allowed in ct_opts, but rebar_prv_common_test:test_dirs did not take into account that Specs could also be a string only, i.e. not a list of strings.
* Properly warn on missing rebar3 deps: add inetsCarlo Carraro2017-03-051-1/+1
|
* rebar_utils:escape_chars handles quotesVlad Dumitrescu2017-03-041-1/+1
| | | | | rebar_file_utils:cp_r uses rebar_utils:escape_chars to ensure that the file names are safe to use, but it doesn't escape double and single quotes. If the file name includes those characters, they disappear when the shell processes them and we get "file not found" errors. The main culprit here is eunit, that creates reports whose names are `TEST-file_"myfile.app".xml`, and I wish it didn't but I think escape_chars should still do its job all the way.
* Fix typo in help text for upgrade commandJuan Facorro2017-03-031-1/+1
|
* change package version warning to debugTristan Sloughter2017-03-021-2/+2
|
* Path-type sensitive .cmd creationFred Hebert2017-02-281-1/+4
|
* Merge pull request #1494 from ferd/escript-generate-cmd-win32alisdair sullivan2017-02-271-3/+17
|\ | | | | Windows escripts get cmd autogenerated
| * WIP windows escripts get cmd autogeneratedFred Hebert2017-02-241-3/+17
| |
* | Merge pull request #1499 from ferd/avoid-clean-wildcard-appsFred Hebert2017-02-261-3/+3
|\ \ | | | | | | More fixes for bad calls to find_apps
| * | More fixes for bad calls to find_appsFred Hebert2017-02-261-3/+3
| | |
* | | Merge pull request #1497 from ferd/rebar-config-override-rootalisdair sullivan2017-02-262-6/+6
|\ \ \ | |/ / |/| | REBAR_CONFIG impacts file project root only
| * | REBAR_CONFIG impacts file project root onlyFred Hebert2017-02-242-6/+6
| | |
* | | Fix wildcard usage in rebar3 cleanFred Hebert2017-02-261-1/+2
|/ / | | | | | | | | The wildcard usage could fail on some OSes by being passed directly and just not finding libs and erroring out
* | Fix default .app.src file for rebar_app_infoFred Hebert2017-02-241-7/+6
| | | | | | | | | | | | | | The finding of the file was done based on an assumed 'src' path which may not be correct. This patch instead replaces the value with a lookup in configured paths and returns the first that matches to an existing file.
* | Fix detection of src_dirs in unknown apps/depsFred Hebert2017-02-231-11/+49
| | | | | | | | | | First find the rebar.config file, and if any data is found, check for src_dirs config. If nothing is there or no app is found, default to src/
* | Fix plugins usage to support src_dirs optionsFred Hebert2017-02-191-2/+5
| |
* | For convenience add appinfo default src_dir lookupFred Hebert2017-02-191-1/+5
| | | | | | | | This makes rebar_prv_install_deps able to support more src_dir configs
* | Add respect for src_dirs option in app_discoverFred Hebert2017-02-191-29/+52
|/ | | | | This lets people who use custom directories layout without leaving the .app.src in src/ to still see their app build.
* Merge pull request #1473 from ferd/global-plugin-tpl-supportFred Hebert2017-02-061-0/+11
|\ | | | | Add support for global plugin-defined templates
| * Add support for global plugin-defined templatesFred Hebert2017-02-061-0/+11
| | | | | | | | | | Did not really know how to automate the testing for this, did it by hand.
* | catch badarg exception from eunit in `rebar_prv_eunit`alisdair sullivan2017-02-051-7/+10
|/ | | | fixes #1469
* Go back to git-generated versionFred Hebert2017-02-031-1/+1
|
* Bump to 3.3.5Fred Hebert2017-02-031-1/+1
|
* Fix printing path with unicode names in prv_updateFred Hebert2017-02-031-2/+2
|
* Merge pull request #1463 from varnerac/cover_exclude_appsFred Hebert2017-01-301-8/+9
|\ | | | | Allow exclusion of apps in cover
| * Allow exclusion of apps in coverDrew Varner2017-01-301-8/+9
| | | | | | | | | | Adds a new option `{cover_excl_apps, Apps}` to exclude apps from coverage analysis by name.
* | consider `ERL_COMPILER_OPTIONS` when recompilingalisdair sullivan2017-01-281-3/+13
| | | | | | | | | | | | on 19.x forward the compiler should now take into consideration the value of the environment variable `ERL_COMPILER_OPTIONS` when deciding whether or not to recompile a module
* | Survive EDoc crashesFred Hebert2017-01-271-9/+27
| | | | | | | | | | | | | | | | | | | | | | Instead of a hard crash, display an error message indicating which app failed. We can't report the exact failure; only EDoc does it to stdout itself and we can't capture it. Pre/Post hooks are run properly despite the failure, as per escript and compile providers.
* | Merge pull request #1449 from ferd/fix-localinstall-tpl-pathalisdair sullivan2017-01-272-7/+16
|\ \ | | | | | | See template local install same builtin as escript
| * | See template local install same builtin as escriptFred Hebert2017-01-212-7/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the `new` command is run from a locally installed rebar3 (`rebar3 local install`), the builtin templates would be labelled as custom because of directories. This patch fixes it by splitting off the rebar3 priv dir from the user's configured plugin path for custom ones, and introducing a new internal label for builtins (since handling must remain different from escripts) This fixes issue #819
* | | Re-fix the windows file movementFred Hebert2017-01-271-33/+45
| | | | | | | | | | | | and clean up a bit
* | | Fix mv command on windowsFred Hebert2017-01-271-18/+87
| |/ |/| | | | | | | | | | | Requires changing a bunch of arguments for xerocopy since it does not allow to rename while copying. Lots of tests added
* | Enable path reformatting for DialyzerFred Hebert2017-01-212-10/+13
| | | | | | | | | | | | | | | | Fixes issue #880 May break backwards compat with projects that manually called the dialyzer formatter, but we never documented or expected this to be exposed.
* | Extract code path formatting out of compilerFred Hebert2017-01-213-24/+40
|/ | | | | | | | This allows to reuse the code for any provider that formats source files out to the user. The option to configure it does remain compiler-centric for backwards compatibility
* add option to pass args to user_drv for custom shellsTristan Sloughter2016-12-311-6/+16
|
* Back to git-based versionsFred Hebert2016-12-231-1/+1
|
* Bumping to 3.3.4Fred Hebert2016-12-231-1/+1
|
* Merge pull request #1391 from ferd/doc-and-typesFred Hebert2016-12-2317-97/+792
|\ | | | | Type specifications and edocs improvements
| * Fix Alisdair's review, add more types and docsFred Hebert2016-12-165-25/+109
| |