Commit graph

1399 commits

Author SHA1 Message Date
Tuncer Ayaz
b6908421b7 erlc: clean-up, enhance, and regression fix fd17693
* update files
* fix Dialyzer warning
* unconditionally enable info fil
* clean-up inconsistencies
* use term_to_binary compression
* use try...catch instead of case...catch...of
* do not write build info file if the graph is unmodified
* store info file as <base_dir>/.rebarinfo
* properly support list of compile directives
* fix regressions:
 - Fix a bug in handling of files to compile first.
 - If a file that is depended upon itself depends on other files, make sure
   those are compiled first. While at it, rename variables for correctness.
   Reported-by: David Robakowski
 - Make sure that FirstFiles has no dupes and preserves the proper order.
 - headers referenced via -include_lib() were not properly resolved to absolute
   filenames
 - .erl files found in sub dirs of src_dirs were not properly resolved to
   absolute filenames
2014-03-05 15:44:38 +01:00
Anthony Ramine
7742d70ee2 erlc: add support for detecting core transforms 2014-03-05 15:33:22 +01:00
Evgeniy Khramtsov
fd17693b7c Speed up the compilation process
* Do not parse source files twice while checking for relationship.
* Keep files relationships in a graph.
* The option 'keep_build_info' is introduced. When set to 'true'
  the graph will be kept in ebin/.rebar.build.info and will be
  used by further compiler calls. The default is 'false'.
2014-03-05 15:20:36 +01:00
Jared Morrow
6e24cd6ac7 Merge pull request #233 from tuncer/commands
docs: fix #228
2014-02-25 14:56:13 -07:00
Tuncer Ayaz
2576031163 docs: fix #228 2014-02-25 19:46:49 +01:00
Jared Morrow
dcc75b144c Merge pull request #230 from tuncer/fix-dialyzer-warnings
eunit: fix dialyzer warnings introduced in 03da5e0b
2014-02-25 08:14:47 -07:00
Jared Morrow
3b08e93ef9 Merge pull request #232 from tuncer/doc-abbrev-cmd
Document support for abbreviated commands
2014-02-25 07:50:09 -07:00
Tuncer Ayaz
a554744fc0 Mention rebar -c/--commands 2014-02-24 22:36:31 +01:00
Tuncer Ayaz
c29f8b45ae Document support for abbreviated commands 2014-02-24 22:36:31 +01:00
Jared Morrow
289a71e208 Merge pull request #221 from kaos/erlydtl
Adapt erlydtl compiler plugin to latest version of erlydtl
2014-02-24 06:47:52 -07:00
Tuncer Ayaz
589afc0173 eunit: fix dialyzer warnings introduced in 03da5e0b 2014-02-20 19:10:47 +01:00
David N. Welton
60d106055b {ok, Module} is an acceptable return value from do_compile. 2014-02-14 13:35:51 +01:00
David N. Welton
f7d62dee68 Use proplists:unfold to make sure we feed a proplist to keymerge. 2014-02-14 13:35:51 +01:00
Andreas Stenius
33110267ba Adapt erlydtl compiler plugin to latest version of erlydtl 2014-02-14 13:35:51 +01:00
Jared Morrow
ec448c0894 Merge pull request #223 from rebar/adt-random-suite-order
Add random_suite_order option to eunit command
2014-02-07 11:32:06 -07:00
Andrew Thompson
2f6991cbd7 Add documentation 2014-02-07 13:08:14 -05:00
Andrew Thompson
03da5e0be0 Add random_suite_order option to eunit command
Option takes either 'true' or a numeric seed value. If true is passed, a
random seed is generated and used. The numeric seed value is for
repeatability.

The idea here is to root out test suites that are order dependant, or
that fail in the presence of certain orderings.
2014-02-07 13:05:33 -05:00
Jared Morrow
fa679b4343 Merge pull request #224 from andrewjstone/allow-test
allow suite[s] or test[s] as options for eunit and ct
2014-02-07 10:53:08 -07:00
Andrew Thompson
184edc2331 Merge pull request #188 from massemanet/xref_extra_path
Xref extra path
2014-02-06 01:04:35 -05:00
Andrew Thompson
daf1428f95 Merge pull request #219 from h4cc/patch-1
Added R16B01 and R16B02 to travis config.
2014-02-06 01:02:07 -05:00
Jared Morrow
cf3f2098e4 Bump rebar to 2.2.0 and add proper release notes 2014-02-05 15:01:51 -07:00
Andrew J. Stone
cc72cd8fce allow suite[s] or test[s] as options for eunit and ct 2014-02-05 16:56:44 -05:00
Julius Beckmann
1017ba2849 Added R16B01 and R16B02 to travis config. 2014-01-26 20:58:20 +01:00
Jared Morrow
af91604053 Merge pull request #212 from tuncer/hrl-error
Fix basho/rebar#388
2014-01-16 15:11:45 -08:00
Jared Morrow
b2c2adb7c0 Merge pull request #215 from tuncer/experimental
Remove experimental flags
2014-01-16 15:09:50 -08:00
Jared Morrow
c5e48b4a8b Merge pull request #214 from tuncer/compile_only
Document compile_only=true
2014-01-16 15:07:47 -08:00
Jared Morrow
477fbabfa8 Merge pull request #210 from tuncer/erlydtl-warnings
Fix #205 (erlydtl:compile/3 returns warnings)
2014-01-16 14:09:43 -08:00
Tuncer Ayaz
2f2e7c4889 rebar_base_compiler: replace fixed size list with a tuple 2014-01-15 19:29:00 +01:00
Tuncer Ayaz
97c9fdf31a Fix basho/rebar#388
If the syntax error is in a .hrl file, then the reported error message
is not as useful because it's not clear which .erl file was being
compiled. We can fix that easily by first printing what source file was
being processed. We don't change the actual error message, so this will
still work with your editor of choice for jumping to the right line.

Before
------

Success:
Compiled src/foo.erl

Failure:
include/foo.hrl:10: syntax error [...]

After
-----

Success:
Compiled src/foo.erl

Failure:
Compiling src/foo.erl failed:
include/foo.hrl:10: syntax error [...]
2014-01-15 19:28:41 +01:00
Jared Morrow
5d2b9ba23f Merge pull request #191 from tuncer/rename-modules
Fix #187 (rename getopt and mustache)
2014-01-14 13:38:30 -08:00
Jared Morrow
cf3a24e5c7 Merge pull request #196 from tuncer/rebar-run-info
Print a more appropriate message on 'rebar info'
2014-01-14 12:49:42 -08:00
Jared Morrow
d75af5266d Merge pull request #183 from EchoTeam/generate-upgrade-and-target-dir
generate-upgrade can now take target_dir argument
2014-01-14 12:48:48 -08:00
Tuncer Ayaz
3c1b819369 erlydtl: add missing clause (Reported-by: goofansu)
erlydtl implemented 'binary' option. Add new clause for {binary, false}.
2014-01-14 18:38:53 +01:00
Tuncer Ayaz
5fa6671511 Remove experimental flags
Remove experimental flag from:
* qc compile_only=true
* eunit compile_only=true
* src/foo.app.src.script
* eunit tests=
2014-01-14 12:44:53 +01:00
Tuncer Ayaz
8a94a41ef0 Document compile_only=true 2014-01-14 12:44:09 +01:00
mats cronqvist
4ca7c84179 introduce xref_extra_paths 2014-01-13 15:11:12 +01:00
Tuncer Ayaz
03e7993402 Fix #205 (erlydtl:compile/3 returns warnings)
Adapt rebar_erlydtl_compiler to handle warnings emitted by
erlydtl:compile/3.
2014-01-11 20:26:10 +01:00
Tuncer Ayaz
34ead92c83 Fix #187 (rename mustache to rebar_mustache) 2014-01-01 10:59:34 +01:00
Tuncer Ayaz
777fefe181 Fix #187 (rename getopt to rebar_getopt)
While at it, update getopt.erl to git rev 78eda3b.
2014-01-01 10:59:34 +01:00
Tuncer Ayaz
4af177bd06 Print a more appropriate message on 'rebar info'
To avoid treating plugins' info/2 functions as commands, we catch calls
to 'rebar info'. Previously (4b8c81fb) we simply printed the help
string, but it's much more informative to print the following:
Command 'info' not understood or not applicable
2014-01-01 10:58:32 +01:00
Jared Morrow
df42410cf2 Merge pull request #190 from tuncer/quadruple-timeout
inttest/rgen_1: double the timeout a second time
2013-12-31 08:58:01 -08:00
Jared Morrow
3e573baee6 Merge pull request #198 from tuncer/clean-up-rebar-config-script
Clean up rebar.config.script
2013-12-31 08:55:29 -08:00
Jared Morrow
81b9ed0606 Merge pull request #201 from fenollp/create-lib
Added a library template.
2013-12-20 08:20:39 -08:00
Pierre Fenoll
70cdb37942 Add command to rebar:command_names/0 2013-12-19 23:05:49 +00:00
Pierre Fenoll
c83d037404 Add a library template 2013-12-19 22:01:25 +00:00
Jared Morrow
b97677c2c2 Merge pull request #200 from tuncer/fix-debug-bootstrap
bootstrap: avoid trying to run 'debug' command
2013-12-17 06:46:10 -08:00
Jared Morrow
e73098afea Merge pull request #199 from tuncer/dia-dialyzer-warnings
rebar_dia_compiler: fix Dialyzer warnings
2013-12-17 05:50:14 -08:00
Tuncer Ayaz
af305f2425 bootstrap: avoid trying to run 'debug' command
If you invoke 'make debug', then bootstrap executes rebar:main/1 with
the extra argument "debug" and rebar treats that as a command. There is
no such command.

Without this patch you will see the following on bootstrap:
Command 'debug' not understood or not applicable
2013-12-17 14:28:58 +01:00
Tuncer Ayaz
031e7c5fc5 rebar_dia_compiler: fix Dialyzer warnings 2013-12-17 14:27:35 +01:00
Tuncer Ayaz
7d70dfbe6f Clean up rebar.config.script 2013-12-17 14:27:24 +01:00