Commit graph

57 commits

Author SHA1 Message Date
Tuncer Ayaz
09cd4e9be2 rebar_xref: regression fixes and updates for a5be40c96
- restore support for "rebar help xref"
- update rebar.config.sample
- update 'help xref' string
- simplify new/changed functions by breaking out code or
  using simpler syntax where applicable
2013-06-24 21:46:24 +02:00
Tuncer Ayaz
dc2f5c8c7b Update rebar repo urls 2013-03-02 14:16:33 +01:00
Tuncer Ayaz
4b8c81fb53 Implement 'rebar help CMD1 CMD2' and extend common 'rebar help' msg
* allow plugins to print help message for implemented commands
* append core rebar.config options to common 'rebar help' message
2012-12-31 20:45:11 +01:00
Tuncer Ayaz
51c577f5bf rebar.config.sample: fix escript_emu_args sample 2012-11-30 15:56:38 +01:00
Tuncer Ayaz
e86ec457b6 rebar.config.sample: remove non-existing option 2012-11-20 00:23:24 +01:00
Tuncer Ayaz
a6617bdaff rebar.config.sample: document escriptize options 2012-11-19 23:42:07 +01:00
Tuncer Ayaz
e74a0feb05 rebar.config: delete unused and unimplemented 'app_bin' option
app_bin option was used by the install command which has been
removed in 51ed787.
2012-11-19 00:16:34 +01:00
Tuncer Ayaz
39728242f0 rebar.config.sample: document leex and yecc options 2012-11-18 19:50:54 +01:00
Tuncer Ayaz
3ee2a4a6d0 rebar.config.sample: document require_*_vsn options 2012-11-18 19:36:01 +01:00
Tuncer Ayaz
e593a90a3c rebar.config.sample: fix erl_opts example 2012-11-15 01:31:53 +01:00
Tuncer Ayaz
9ac9d935c0 rebar.config.sample: fix raw dep example formatting 2012-11-15 01:28:48 +01:00
Tuncer Ayaz
e6ee469c4d rebar.config.sample: fix syntax error 2012-11-14 23:19:10 +01:00
Anton Lavrik
0b833391ed Add support for non-Erlang/OTP (raw) dependencies
Introduce a new 'raw' option for dependency specs in rebar.config file.
For example:

{deps,
    {dependency_name, "1.0.*",
	 {git, "<...>", {branch, "master"}},
	 [raw]
    }
]}.

When this option is specified, rebar does not require the dependency to
have a standard Erlang/OTP layout which assumes presence of either
"src/dependency_name.app.src" or "ebin/dependency_name.app" files.

'raw' dependencies can still contain 'rebar.config' and even can have
the proper OTP directory layout, but they won't be compiled.

Only a subset of rebar commands will be executed on the 'raw'
subdirectories:

	get-deps, update-deps, check-deps, list-deps and delete-deps.
2012-10-11 02:06:08 -05:00
Daniel White
f38c0b007c Document availability of rsync for fetching deps in rebar.config.sample 2012-09-20 15:02:24 +10:00
Tuncer Ayaz
99b645e4a3 Separate eunit and qc compile options 2012-08-09 14:04:53 +02:00
DeadZen
f1d35f9d06 Add ct_log_dir option, skip test dir with no SUITE
When rebar ct executes with its default common test directory of "test",
it will generate a hardcoded "logs" directory in every application with
a test directory present, causing an overlap with eunit's test framework
so even test directories with only eunit tests will be processed by ct.
2012-08-07 14:22:59 +02:00
David Åberg
43d5b6257e Enable export of cover data from eunit testrun 2012-08-07 13:44:40 +02:00
Tuncer Ayaz
228f39efa1 Rename old eunit compile options for consistency with test-compile 2012-07-26 17:15:01 +02:00
Tuncer Ayaz
e75a97ad33 Add 'qc' cmd and rename eunit-compile to test-compile 2012-07-23 16:22:06 +02:00
Tim Watson
bebd9d2ae6 Support ct_run using short name
Not every system under test can be run with long names, and this makes
rebar's common_test support useless in those environments, as it
currently uses long names (test@hostname.domain) by default, without
recourse to change them.

This patch adds support for a {ct_use_short_names, boolean()} config
variable, which allows the user to specify whether short or long names
are required.
2012-05-22 15:50:26 +01:00
Tuncer Ayaz
32ddef7158 Remove alt_url support in favor of new features 2012-05-13 19:30:38 +02:00
Tuncer Ayaz
7c418ed2b4 Add support for target-specific port options
{port_specs, [{".*", "priv/foo.so", ["c_src/foo.c"], [{env, []}]}]}.
2012-04-16 23:17:24 +02:00
Tuncer Ayaz
0b8ca933cc Fix whitespace error 2012-04-15 23:48:02 +02:00
Amit Kapoor
0191806f92 Add support for custom xref queries
The custom queries are configured in rebar.config via the tuple
{xref_queries, [{query(), query_result()},...]}.  The implementation
passes the query() string to xref:q and compares the return value with
query_result(). It will result in an error if they do not match.

The following configuration, for example, is the same as running the
xref check undefined_function_calls. It additionally filters
ejabberd_logger:*_msg/4 from the result as these functions are generated
on execution by ejabberd and not available at compile time.

{xref_queries, [{"(XC - UC) || (XU - X - B -
                 (\"ejabberd_logger\":\".*_msg\"/\"4\"))",[]}]}.

This patch also modifies the build process of this package by running a
custom query instead of doing a diff against a static xref_warning file.
2012-04-02 19:14:37 +02:00
Adam Schepis
03a026f38f Add support for alternate dependency urls
This change adds the ability to use alternate urls for downloading
dependencies. To make use of alternate urls run:
rebar get-deps alt_urls=true
2012-03-31 19:21:25 +02:00
Tuncer Ayaz
9d5557b16f Deprecate port_envs in favor of port_env 2012-03-09 20:21:26 +01:00
Tuncer Ayaz
6898eff2c7 Rework port compiler support
* consolidate options
 * add support for building executables
2012-02-03 16:26:14 +01:00
Tuncer Ayaz
d203ff17d7 Fix whitespace error in rebar.config.sample 2012-01-29 18:17:48 +01:00
Tuncer Ayaz
4d2d3c3af3 Remove port_first_files support 2012-01-09 13:05:23 +01:00
Tim Watson
286a2a88a4 Add support for customising common test directory
This patch allows users to specify the directory in which common_test
source files can be found. Most common_test suites are integration,
rather than unit tests and keeping the sources apart from test sources
for other frameworks such as eunit and PropEr is a useful feature.
2011-12-28 12:41:36 +01:00
Tuncer Ayaz
8f4e80b827 Update sample hooks config 2011-12-05 14:17:36 +01:00
Tuncer Ayaz
54259c5475 Document port_first_files 2011-11-30 19:50:24 +01:00
Tuncer Ayaz
b65d5904f5 Fix deps_dir sample config 2011-10-26 17:11:03 +02:00
Tim Watson
3b58935b86 Load plugins dynamically from source
This patch updates rebar_core to look for missing plugins (i.e. those
that aren't found on the code path at runtime) in a configurable
plugin directory, and dynamically compile and load them at runtime.

By default, the directory "plugins" is searched, although this can be
overriden by setting the plugin_dir in your rebar.config.
2011-08-29 17:27:45 +02:00
Uwe Dauernheim
f4817caa00 Fix typo: 'dependency' 2011-08-21 17:52:07 +02:00
joewilliams
7ac00a73e8 Remove rebar_dialyzer 2011-06-06 17:12:08 +02:00
Andrew Tunnell-Jones
aef6c70f59 Change arch-specific port_sources to take a list
Change the second parameter of a regex tagged port_source from being a
filename or wildcard to being a list of filenames or wildcards.

Previously: {"R14", "c_src/*.c"}
Now: {"R14", ["c_src/*.c"]}

Motivation for change is to avoid repeating regexes.
2011-05-28 15:31:51 +02:00
Tuncer Ayaz
8711d9517f Document so_specs 2011-04-30 15:09:46 +02:00
Tuncer Ayaz
67af251d52 Remove lfe_opts (suggested by Tim Dysinger) 2011-04-11 14:08:39 +02:00
Tim Watson
2d385970bf Pass extra params to ct (thanks Mickael Remond)
This patch adds a `ct_extra_params` option to rebar.config, the value
of which is appended to the shell command when executing common test.
2011-04-06 20:11:13 +02:00
Tuncer Ayaz
db706ab99c Document xref options 2011-04-06 19:04:52 +02:00
Tuncer Ayaz
be209f24ff Make debug_info default
Add no_debug_info option.
Remove debug_info=1 option.
2011-03-30 11:19:37 +02:00
Tuncer Ayaz
86753c4e5d Cleanup rebar.config.sample 2011-03-12 16:48:16 +01:00
Tuncer Ayaz
4ceb9e07a3 Deprecate old hooks 2011-03-12 16:48:16 +01:00
Tim Watson
e76770511a Add pre and post script support for all commands
This change makes it possible to assign pre/post scripts to all
rebar commands. This allows users fine grained control over
when scripts and/or shell commands should be executed, where such
extensions are absolutely needed.

Several examples have been added to the rebar.config.sample file.
2011-03-12 16:31:41 +01:00
Tuncer Ayaz
e407838bab Document eunit_first_files 2011-02-13 18:11:29 +01:00
Tuncer Ayaz
c466076ffb Clean up emacs file local variables 2011-01-31 17:55:36 +01:00
Joseph Wayne Norton
5b05e54cda Add otp_release to platform string 2011-01-09 16:06:51 +01:00
Andrew Thompson
2387a8e966 Document the pre and post script hooks 2010-11-21 21:58:57 +01:00
Tuncer Ayaz
b2e7e5b787 Fix dialyzer_opts documentation 2010-11-20 23:31:35 +01:00