summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Merge pull request #1018 from talentdeficit/cover_what_are_you_doooooingFred Hebert2016-01-161-4/+3
|\ \ \ | | | | | | | | change detection of valid modules for `eunit`
| * | | change detection of valid modules for `eunit`alisdair sullivan2016-01-131-4/+3
| |/ / | | | | | | | | | | | | | | | | | | `beam_lib:chunks(..)` needs a path to object code which, frustratingly, `code:which/1` won't return for cover compiled modules. instead just assume that if `code:which/1` doesn't return `non_existing` a module is something we can run tests on
* | | Merge pull request #1021 from tsloughter/masterTristan Sloughter2016-01-151-1/+2
|\ \ \ | |/ / |/| | convert 'app' to 'application' in eunit_opts to match cmdline args
| * | convert 'app' to 'application' in eunit_opts to match cmdline argsTristan Sloughter2016-01-151-1/+2
| | |
* | | Merge pull request #1016 from talentdeficit/eunit_translation_fixTristan Sloughter2016-01-121-9/+20
|\ \ \ | | | | | | | | when using the `--file' argument to `eunit' paths were being converted
| * | | when using the `--file' argument to `eunit' paths were being convertedalisdair sullivan2016-01-121-9/+20
|/ / / | | | | | | | | | into directory test arguments
* | | Merge pull request #1013 from tsloughter/masterFred Hebert2016-01-122-2/+2
|\ \ \ | |/ / | | | upgrade bbmustache and relx
| * | upgrade relxTristan Sloughter2016-01-122-2/+2
|/ /
* | Merge pull request #1012 from ferd/fix-triple-brackets-tplsTristan Sloughter2016-01-113-3/+3
|\ \ | | | | | | Remove triple brackets in bbmustache templates
| * | Remove triple brackets in bbmustache templatesFred Hebert2016-01-113-3/+3
|/ / | | | | | | | | | | Issues formerly were avoided by quoting atoms. Unquoting them created unbalanced tags (`{{{name}}`) which were mistakes. This patch inserts spaces to unconfused bbmustache.
* | Merge pull request #1010 from tsloughter/masterFred Hebert2016-01-102-2/+2
|\ \ | | | | | | upgrade relx to 3.12.0
| * | upgrade relx to 3.12.0Tristan Sloughter2016-01-102-2/+2
| | |
* | | Merge pull request #995 from ferd/fix-old-shellTristan Sloughter2016-01-102-3/+790
|\ \ \ | | | | | | | | Support old-style shell for rebar3 shell
| * | | Correct TTY type detectionFred Hebert2016-01-061-17/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reuses the trick used within OTP to pick within old and new shell. The 'user' structure is the same for all cases (escript, escript + dumb TERM, unstable install, unstable install + dumb TERM), so we take it down first. Then we boot the TTY driver, which fails if TERM=dumb, in which case we boot the retro-style usr. If it worked, we shut down the driver again, and boot a modern shell structure. This avoids all warnings and seems to work in all cases.
| * | | Support old-style shell for rebar3 shellFred Hebert2016-01-062-0/+781
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is quite the hack. This requires to detect the current shell running; if it's the new shell, business as usual. However, if it's the old shell, we have to find a way to take over it and drive IO. This requires a few steps because: - the old shell does not let you be supervised intelligently (it uses supervisor_bridge, so killing the child is not a supported operation from the supervisor) - the old shell ignores all trappable exit signals except those coming from the Port in charge of stdio ({fd, 0, 1}) - the old shell shuts down on all exit signals from the stdio Port except for badsig, and replicates the shutdown reason otherwise - An escript does not tolerate the `user` process dying (old shell) for any non-normal reason without also taking the whole escript down - Booting in an escript has an implicit 'noshell' argument interpreted by the old shell as a way to boot the stdio Port with only stdout taken care of Because of all these points, we have to kill the old `user` process by sending it a message pretending to be the Stdio port dying of reason `normal`, which lets it die without triggering the ire of its supervision tree and keeping the escript alive. This, in turn, kills the old stdio port since its parent (user.erl) has died. Then we have to boot our copy of user.erl (rebar_user.erl) which conveniently ignores the possibility of running the stdio port on stdout only -- always using stdin *and* stdout, giving us a bona fide old-style shell. A known issue introduced is that running r3:do(ct) seems to then kill the shell, and r3:do(dialyzer) appears to have an odd failure, but otherwise most other commands appear to work fine.
* | | | Merge pull request #1009 from tsloughter/masterFred Hebert2016-01-102-2/+34
|\ \ \ \ | | |/ / | |/| | merge overlay entries into a single {overlay, list()} for relx
| * | | merge overlay entries into a single {overlay, list()} for relxTristan Sloughter2016-01-102-2/+34
| | | |
* | | | Merge pull request #996 from ferd/bump-cth_readable-dumbtermTristan Sloughter2016-01-102-2/+2
|\ \ \ \ | | | | | | | | | | Updates cth_readable so it supports dumb terminals
| * | | | Updates cth_readable so it supports dumb terminalsFred Hebert2016-01-062-2/+2
| | |/ / | |/| | | | | | | | | | | | | | cth_readable 1.2.0 uses cf 0.2.1 to output colors, which makes it support dumb terminals without issue.
* | | | Merge pull request #1008 from ferd/unquote-templatesTristan Sloughter2016-01-1013-23/+44
|\ \ \ \ | | | | | | | | | | Unquote templates, add a warning instead.
| * | | | Unquote templates, add a warning instead.Fred Hebert2016-01-1013-23/+44
|/ / / /
* | | | Merge pull request #1007 from tsloughter/masterFred Hebert2016-01-104-6/+47
|\ \ \ \ | | |/ / | |/| | install project app plugins after discovering them not before
| * | | install project app plugins after discovering them not beforeTristan Sloughter2016-01-104-6/+47
|/ / /
* | | Merge pull request #1006 from tsloughter/masterFred Hebert2016-01-093-9/+40
|\ \ \ | | | | | | | | only apply default and prod profile to dependencies
| * | | only apply default and prod profile to dependenciesTristan Sloughter2016-01-093-9/+40
| | | |
* | | | Merge pull request #999 from ferd/fix-windows-stuffTristan Sloughter2016-01-083-17/+29
|\ \ \ \ | | | | | | | | | | Fix windows stuff
| * | | | fix dirs robocopy and canonical paths in windowsFred Hebert2016-01-072-11/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - robocopying a directory into another directory recursively expects the directory name to be properly mapped onto the destination, otherwise all the files are copied into the given path. This patches things so a directory-to-directory robocopy works as expected in a linux mindset so tests pass - the test for canonical paths didn't expect a windows environment at all; the test (and library) is modified to be consistent in that environment: always with a native format and with proper support of drive letters.
| * | | | Avoid changing directories in test suiteFred Hebert2016-01-071-6/+3
| | |/ / | |/| |
* | | | Merge pull request #1005 from tsloughter/masterFred Hebert2016-01-081-2/+2
|\ \ \ \ | | |/ / | |/| | only need to compare ref and not ref+url in git resource
| * | | only need to compare ref and not ref+url in git resourceTristan Sloughter2016-01-081-2/+2
|/ / /
* | | Merge pull request #994 from talentdeficit/REBAR-950Fred Hebert2016-01-071-2/+17
|\ \ \ | |/ / |/| | warn if the directories `eunit' or `ct' show up in `src_dirs'
| * | warn if the directories `eunit' or `ct' show up in `src_dirs'alisdair sullivan2016-01-051-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | if these directories actually exist they'll be added to the path ahead of the release/standard distribution directories and they'll break eunit and/or ct execution fixes #950
* | | Merge pull request #993 from ferd/fix-maintainers-app-fileTristan Sloughter2016-01-052-2/+2
|\ \ \ | |/ / |/| | contributors -> maintaiers in template app data
| * | contributors -> maintaiers in template app dataFred Hebert2016-01-052-2/+2
|/ / | | | | | | | | hex.pm is now using maintainers instead of contributors in metadata. Templates should be updated to reflect it.
* | Merge pull request #982 from gleber/masterFred Hebert2016-01-051-12/+28
|\ \ | | | | | | Allow bootstrap to pick up existing Hex cache and deps
| * | Skip update and compilation if possible.Gleb Peregud2016-01-031-12/+28
| | | | | | | | | | | | | | | | | | | | | This detects existence of Hex registry at $HOME/.cache/rebar3/hex/default/registry and skips "rebar3 update" step. It also detect presence of bootstrap dependencies in _build/default/lib/ and skips fetching them.
* | | Merge pull request #966 from talentdeficit/ct_root_suitesFred Hebert2016-01-053-4/+127
|\ \ \ | | | | | | | | allow ct suites to be specified at root of project (or root of app)
| * | | add test for foo_SUITE_data filesalisdair sullivan2015-12-201-2/+8
| | | |
| * | | put `extra' ct test suites in `extras/apps/APPNAME' rather than `extras'alisdair sullivan2015-12-202-2/+46
| | | | | | | | | | | | | | | | this allows repeated test suite names across apps without conflicts
| * | | allow ct suites to be specified at the root of a project (or root of app)alisdair sullivan2015-12-203-3/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | previously rebar3 dropped suites declared at the root of the project (via `--suite=whatever_SUITE' probably) and warned. this was because the compiler would recursively copy and compile everything in the directory indicated by the test suite. this changes the copy mechanism to only copy erl source files and directories that end with `_SUITE_data' into the `extras' dir in `_build'
| * | | whitespace cleanupalisdair sullivan2015-12-201-1/+1
| | | |
* | | | Merge pull request #989 from tsloughter/fuzzy_matchTristan Sloughter2016-01-052-27/+36
|\ \ \ \ | | | | | | | | | | convert ~> versions to highest matching
| * | | | convert ~> versions to highest matchingTristan Sloughter2015-12-262-27/+36
| | | | |
* | | | | Merge pull request #992 from ferd/update-cth_readableTristan Sloughter2016-01-052-2/+2
|\ \ \ \ \ | | | | | | | | | | | | Bump cth_readable to 1.1.1
| * | | | | Bump cth_readable to 1.1.1Fred Hebert2016-01-052-2/+2
|/ / / / / | | | | | | | | | | | | | | | This fixes a typo that could cause failure in some test runs.
* | | | | Merge pull request #991 from sdebnath/console_modeTristan Sloughter2016-01-052-2/+2
|\ \ \ \ \ | |/ / / / |/| | | | Upgrade relx to v3.11.0
| * | | | Upgrade relx to v3.11.0Shawn Debnath2016-01-052-2/+2
|/ / / /
* | | | Merge pull request #987 from ferd/plugin-templatesTristan Sloughter2015-12-2114-8/+181
|\ \ \ \ | |/ / / |/| | | Plugin templates
| * | | Plugin templates enabledFred Hebert2015-12-1914-8/+181
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This lets a plugin define templates to be loaded: $ rebar3 new ... proper (plugin): A basic PropEr suite for an OTP application ... $ rebar3 new help proper proper: plugin template (...) Description: A basic PropEr suite for an OTP application Variables: name="suite" (...) ... → rebar3 new proper fakesuite ===> Writing test/prop_fakesuite.erl In this case, proper is a fake template file I've put by hand in _build/default/plugins/rebar3_proper/priv/<somename>/, meaning it will only work as far as it's called from the project's root. The priority order of plugins is now .config > plugin > built-in, such that someone could ensure plugins do not crush their own private templates, but also that custom or plugin templates do overtake built-in ones. It used to be Built-in > .config only. Templates are searched for recursively in the priv/ directory of plugins.
* | | | Merge pull request #923 from tsloughter/hex_cdnFred Hebert2015-12-199-52/+96
|\ \ \ \ | |/ / / |/| | | support temporary cdn change with HEX_CDN os var