summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #2155 from g-andrade/feature/profile-string-overlay-varFred Hebert2019-10-042-12/+34
|\ | | | | Support `profile_string` overlay var in releases
| * Fix function overspec.Guilherme Andrade2019-09-021-1/+1
| |
| * Add missing function spec.Guilherme Andrade2019-09-021-0/+1
| |
| * Don't export internal function definitionGuilherme Andrade2019-09-011-6/+7
| |
| * Support `profile_string` overlay variable in releasesGuilherme Andrade2019-08-312-11/+31
| |
| * Fix formatting of literal expression within commentGuilherme Andrade2019-08-311-1/+1
| |
* | Reload logger config in CT suitesFred Hebert2019-10-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #2159; this is done by force-reloading the handlers to match the config. This can create a bit of a funny effect if sys.config specifies an INFO log level (or lower) is specified. While apps are booted for config changes before the cth_failonly hook is enabled, supervision and other application log messages can start being output. They will start being suppressed once the CT run begins. This is not a bug, it's a race in instantiation of control and enabling of log levels. Nothing we can do about that. It might however surprise people a good bit. If non-default stdout handlers are added, they are similarly likely to become noisy; specifying a test-specific sys.config file may be necessary then. Also includes a bump of cth_readable version, which now checks for updates to the log formatter on every test output.
* | Merge pull request #2149 from dmitrivereshchagin/fix-logger-resetFred Hebert2019-09-011-5/+16
|\ \ | | | | | | Disable the default logger handler in shell if required
| * | Disable the default logger handler in shell if requiredDmitri Vereshchagin2019-08-281-5/+16
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To avoid a conflict the Kernel's default handler have to be disabled before the new default handler is added {kernel, [{logger, [{handler, default, undefined} ]} ]}, {my_app, [{logger, [{handler, default, my_handler, #{}} ]} ]} To support this behavior in shell it's necessary to process the handler-default-undefined tuple. It's not clear what to do with the simple handler (logger_simple_h) however. It's added at the start and removed if a default handler was added. Should it be added in reread_logger_config/1 if there's no default handler?
* | Fix case clause which used wrong element orderTino Breddin2019-08-301-2/+2
|/ | | | See http://erlang.org/doc/man/ct_hooks.html#Module:on_tc_fail-4
* back to git-based versioningTristan Sloughter2019-08-211-1/+1
|
* Bump to 3.12.0Tristan Sloughter2019-08-211-1/+1
|
* format error from provider init and print as warningTristan Sloughter2019-08-141-1/+4
|
* support REBAR_BASE_DIR for setting the base_dirTristan Sloughter2019-08-111-2/+6
|
* Merge pull request #2133 from ferd/fix-duplicate-edoc-macrosFred Hebert2019-08-061-1/+25
|\ | | | | Fixing duplicate macro definition in umbrella edoc
| * Fixing duplicate macro definition in umbrella edocFred Hebert2019-07-301-1/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When in umbrella mode (or through multiple profiles), users can specify macros for EDocs based on either the {def, ...} or the {macros, ...} arguments. This patch replaces the prior options merging for umbrellas to use the rebar3 tup_umerge utils to remove identical duplicates while preserving correct ordering, and manually merges the {macros, ...} definitions while ke eping the correct precedence rules since these appear (given their behaviour) to be all individually extracted and passed as `{d, ...}` to the compiler so that epp expands them. This compiler function freaks out on any re-defined macros and explodes. Do note that the macros with `{def, ...}` are edoc macros and do not suffer from that issue, safely deduplicating multiple definitions.
* | Update vendored in hex_core to version 0.5.1Bryan Paxton2019-07-3021-23/+25
|/ | | | | | | | version 0.5.1 is a maintenance release of hex_core specifically for rebar3 which contains a configuration update. Prior to v0.5.1 if no repo_organization key was set this could result in a function clause error. The behavior is to now set repo_organization to undefined in this case.
* Repair edoc functionality on rebar3 itselfFred Hebert2019-07-251-2/+2
|
* Stick the usort in our termination clauseRob Ashton2019-07-241-15/+14
|
* De-dup inside parse_attr function itselfRob Ashton2019-07-231-15/+16
|
* Dedup dep listRob Ashton2019-07-161-1/+1
|
* Fix reloading logger_levelJan Chochol2019-07-161-1/+1
| | | | | | | | | | OTP kernel application use "logger_level" configuration for configuring level in primary configuration. rebar3 uses "logger_info" for this purpose - ths is little bit confusing and probably mistake. This commit will unify behavior between kernel and rebar3o Fixes: 0303567d95f0 ("Reload logger config in shell")
* Merge pull request #2111 from jkakar/dialyzer-warn-without-debug-infoFred Hebert2019-07-091-0/+13
|\ | | | | rebar3 dialyzer: Warn when debug_info is disabled
| * Apply patch from ferd.Jamu Kakar2019-07-081-8/+10
| |
| * Use better warning message.Jamu Kakar2019-06-281-2/+2
| |
| * rebar3 dialyzer: Warn when debug_info is disableJamu Kakar2019-06-261-0/+11
| |
* | Merge pull request #2121 from tsloughter/plug-upgradesTristan Sloughter2019-07-081-1/+2
|\ \ | | | | | | keep resources in new state used in plugins upgrade
| * | keep resources in new state used in plugins upgradeTristan Sloughter2019-07-071-1/+2
| | |
* | | Merge pull request #2117 from ferd/saleyn-masterFred Hebert2019-07-072-19/+33
|\ \ \ | |/ / |/| | Fix crash when a dependency is missing app.src file
| * | Fix crash when a dependency is missing app fileFred Hebert2019-07-042-3/+10
| | | | | | | | | | | | Patch up and add tests on #2112
| * | Merge branch 'master' of https://github.com/saleyn/rebar3 into saleyn-masterFred Hebert2019-07-041-19/+26
| |\ \
| | * | Refine the error causeSerge Aleynikov2019-07-021-3/+3
| | | |
| | * | Fix 'rebar3 compile' crash when a dependency is missing app fileSerge Aleynikov2019-07-011-19/+26
| | |/
* | | Merge pull request #2118 from ferd/fix-internal-compiler-typeFred Hebert2019-07-041-5/+17
|\ \ \ | | | | | | | | Fix custom compiler mods typespecs, add edoc
| * | | Fix custom compiler mods typespecs, add edocFred Hebert2019-07-041-5/+17
| |/ /
* | | Ensure EDoc opts in umbrella apps are respectedFred Hebert2019-07-041-1/+4
|/ / | | | | | | | | | | | | | | | | | | | | | | | | This adds an additional loading and merging of options for EDoc using the values from the top-level along with those specified in the rebar.config of an umbrella application. The app-specific config values are prepended to the global ones; this can likely cause some problems with manual path handling, but is unlikely to happen in practice and the rest seems to work fine based on order Fixes the issue in #2114
* | Support rebar config dir env varBryan Paxton2019-06-301-2/+9
|/
* Add format_error/1 to print errors nicelySerge Aleynikov2019-06-261-2/+9
|
* Make missing file report more comprehensiveSerge Aleynikov2019-06-261-5/+9
|
* Warn when there's mismatch between rebar.lock & original package checksumKuba Odias2019-06-081-5/+15
|
* Merge pull request #2099 from ferd/gracious-shell-reloadingFred Hebert2019-06-071-5/+25
|\ | | | | Gracious loading of unloaded but blacklisted mods
| * Gracious loading of unloaded but blacklisted modsFred Hebert2019-06-021-5/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rebar3's shell allows people to set applications as blacklisted to prevent them from being reloaded because that can cause crashes. However, as part of its normal operations, rebar_paths unloads all modules that are currently not "owned" by at least one process, considering them safe to do so. These two behaviours, put together, lead to an odd thing where some modules are suddenly unloaded and not in path, and that can be confusing. This calls for a unification of both features. We could decide to be pushing the complexity of rebar3's shell into rebar_path so it knows of blacklists, but this would be a bad idea because rebar_agent already owns all the damn hack. So instead this fix adds an optional call within rebar_agent's blacklisted applications handling that calls `code:ensure_loaded/1` on their modules. This avoids forcing any code change that would cause a crash, but reinstates unloaded paths that could be confusing. Addresses some comments in #2013
* | Only lint app files when compilingFred Hebert2019-06-022-1/+7
|/ | | | | | | | This allows to reduce the number of noise to only checking deps' app files when they're built, rather than on every run. Since main apps and checkouts are still compiled every time, the linting takes place there and then with a higher frequency.
* back to git-based versioningTristan Sloughter2019-06-011-1/+1
|
* Bump to 3.11.1Tristan Sloughter2019-06-011-1/+1
|
* Merge pull request #2075 from tsloughter/tmpl-usageFred Hebert2019-05-311-1/+11
|\ | | | | add support for usage message after template is done
| * add support for usage message after template is doneTristan Sloughter2019-05-131-1/+11
| |
* | back to git-based versioningTristan Sloughter2019-05-301-1/+1
| |
* | Bump to 3.11.0Tristan Sloughter2019-05-301-1/+1
| |
* | bug when reread_config from OTP 17Anders Wei2019-05-281-1/+1
| |