Commit graph

72 commits

Author SHA1 Message Date
Tomas Abrahamsson
0caf047fc3 Introduce pluggable protocol buffer compilers
Make it possible for plug in alternative protocol buffer compilers.
The compilers are picked up based on if they export all of the
functions key/0, proto_compile/3, proto_clean/3 and proto_info/2.
The set of compiler modules to choose from, is fetched from the rebar
application environment, from the app_dir modules.

A new config option, {proto_compiler,Compiler}, specifies which of
the available protocol buffer compilers to use. The 'protobuffs'
compiler is now one such compiler (the only one), and it is also the
default, for backwards compatibility.
2014-10-29 23:45:35 +01:00
tsloughter
e9f62c4580 Bump to 2.5.1 2014-07-30 17:37:49 +00:00
Fred Hebert
0d1ae7a468 Bump to 2.5.0 2014-06-23 14:50:38 -04:00
Fred Hebert
24ce11c381 Bump Rebar to 2.4.0 2014-06-18 11:52:56 -04:00
Andras Horvath
4a6dc223b7 Add code coverage analysis functionality to `qc'
- Use `cover' with QuickCheck testing
- Reuse the `cover_*' rebar.config options
- Refactor cover-related code to separate module (`qc_cover_utils')
  for use with both `eunit' and `qc'
2014-06-14 19:23:45 +02:00
Jared Morrow
16eb428d6c Bump rebar version to 2.3.1 2014-05-21 14:36:12 -06:00
Jared Morrow
4f38f9dd76 Merge pull request #255 from tuncer/superfluous-quoting
rebar.app: remove superfluous quoting
2014-05-19 09:11:24 -06:00
Jared Morrow
0fa0ff4f17 Roll rebar version 2.3.0 2014-05-13 09:01:26 -06:00
Tuncer Ayaz
09dee54ce7 rebar.app: remove superfluous quoting 2014-03-30 20:29:25 +02:00
Jared Morrow
415d872730 Keep compile recursive and update the tests to not pass -r to compile 2014-03-11 21:24:19 +00:00
Tuncer Ayaz
77a0eb6fe4 Fix #56 (always-on recursion)
Always-on recursive application of all rebar commands causes too many
issues. Recursive application is required for:
1. dealing with dependencies: get-deps, update-deps, and compile of deps
   right after get-deps or update-deps
2. projects with a riak-like apps/ project structure and dev process

The vast majority of projects are not structured like riak. Therefore,
moving forward it's best to (by default) restrict recursive behavior to
dealing with deps. This commit does that and also adds command line and
rebar.config options for controlling or configuring recursion. Also, we
introduce two meta commands: prepare-deps (equivalent to rebar -r
get-deps compile) and refresh-deps (equivalent to rebar -r update-deps
compile). riak-like projects can extend the list of recursive commands
(to include 'eunit' and 'compile') by adding
{recursive_cmds, [eunit, compile]} to rebar.config.
2014-03-11 21:11:36 +00:00
Jared Morrow
cf3f2098e4 Bump rebar to 2.2.0 and add proper release notes 2014-02-05 15:01:51 -07: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
6de94e8a16 Change default log level to 'warn' and introduce -q/--quiet 2013-12-06 19:05:45 +01:00
Jared Morrow
8b7f5442a9 Roll rebar version 2.1.0 2013-11-22 07:54:28 -07:00
Dave Smith
bf35ec9392 Merge branch 'ates-diameter' 2012-11-12 21:40:57 -07:00
Dave Smith
ebb474b759 Bumping to 2.1.0-pre 2012-11-12 08:19:44 -07:00
Artem Teslenko
4c25718492 Add support to compile the Diameter dictionary files 2012-11-12 15:03:43 +02:00
Tuncer Ayaz
87904ceef2 Fix version string 2012-08-09 13:04:08 +02:00
Tuncer Ayaz
b540c002e7 Fix vsn string 2012-08-06 17:33:45 +02:00
Tuncer Ayaz
1fe2b7aac4 Bump major version to prepare for next release 2012-07-23 16:25:59 +02:00
Tuncer Ayaz
e75a97ad33 Add 'qc' cmd and rename eunit-compile to test-compile 2012-07-23 16:22:06 +02:00
Tuncer Ayaz
252757c753 Do not use application:set_env 2012-07-23 13:17:11 +02:00
Tuncer Ayaz
8cae8b3430 Re-sort modules in rebar.app 2012-07-11 09:51:22 -06:00
Kresten Krab Thorup
5b765e028f Initial version of "rebar shell" command
For now, this is just a proof of concept; would make sense to add a lot
of things, such as quick access to invoking rebar itself (with approproate 
code reloading), as well as an eunit-aware version so that tests could be 
run interactively.
2012-07-11 08:42:47 -06:00
Tuncer Ayaz
e7e2bc17b2 Sort rebar_* modules in rebar.app 2012-06-17 17:03:38 +02:00
Dave Smith
9d6f7d480a Merge pull request #220 from talentdeficit/patch-1
add crypto, syntax_tools and tools to applications key as dependencies
2012-06-06 19:48:45 -07:00
Dave Smith
0f24d93256 Move to major.minor.patch release version; add OTP build version
version info
2012-06-04 08:46:17 -06:00
alisdair sullivan
79d173c49d should also include compiler in list of application dependencies for rebar 2012-04-30 23:08:22 -07:00
alisdair sullivan
80f91af2d2 add crypto, syntax_tools and tools to applications key as dependencies 2012-04-30 22:54:00 -07:00
Tuncer Ayaz
0f08e768a7 Remove duplicate entry (Reported-by: Siri Hansen) 2011-07-08 13:08:07 +02:00
joewilliams
7ac00a73e8 Remove rebar_dialyzer 2011-06-06 17:12:08 +02:00
Tuncer Ayaz
3a8b4d5e8f Cleanup deprecations now that R14B03 is released 2011-05-31 11:15:18 +02:00
Tuncer Ayaz
eba2f097bf Fix formatting (thanks Piotr Usewicz) 2011-04-15 17:22:55 +02:00
Piotr Usewicz
df4e836c4e Add file local variables where appropriate 2011-04-15 17:22:49 +02:00
joewilliams
11bf6b4aab Add 'generate-appups' command
To further support OTP releases I have added support for generating
application appup files. These include instructions that systools uses
to generate a relup file which contains the low level instructions
needed to perform a hot code upgrade. My goal with this module is to
produce "good enough" appup files or at least a skeleton to help one get
started with something more complex. If an appup file already exists for
an application this command will not attempt to create a new one.

Usage:
$ rebar generate-appups previous_release=/path/to/old/version

Generally this command will be run just before 'generate-upgrade'.
2011-02-15 18:33:18 +01:00
joewilliams
5298e93a18 Add 'generate-upgrade' command
To support OTP release upgrades I have added support for building
upgrade packages. Support for this is included in the
rebar_upgrade module, specifically generate_upgrade/2. It requires
one variable to be set on the command line 'previous_release' which
is the absolute path or relative path from 'rel/' to the previous
release one is upgrading from. Running an upgrade will create the
needed files, including a relup and result in a tarball containing
the upgrade being written to 'rel/'. When done it cleans up the
temporary files systools created.

Usage:
$ rebar generate-upgrade previous_release=/path/to/old/version

This also includes a dummy application that can be used to test
upgrades as well as an example.

Special thanks to Daniel Reverri, Jesper Louis Andersen and
Richard Jones for comments and patches.
2011-01-27 18:37:39 +01:00
Anthony Ramine
008dcb8542 Add abnfc support
abnfc is an ABNF parser generator.
Options are:
	- doc_root (defaults to "src")
	- out_dir (defaults to "src")
	- source_ext (defaults to ".abnf")
	- module_ext (defaults to "")
2010-12-22 17:57:21 +01:00
Tuncer Ayaz
448e1ea20b Put rebar_pre_script in correct app_dir module position
Erroneously put rebar_pre_script at the end of the app_dir modules
list in the previous commit.
2010-07-24 05:13:16 +02:00
Tuncer Ayaz
34647928b2 Add rebar_pre_script courtesy of Geoff Cant 2010-07-24 01:53:17 +02:00
Cliff Moon
55c1e44ba5 Added a compiler plugin for neotoma grammars 2010-05-03 22:59:43 -07:00
Dave Smith
deaabbe9a7 Adding support for compile/clean post scripts, per suggestion from Kevin Smith 2010-06-14 05:59:14 -06:00
Dave Smith
e66585789d Process deps prior to subdirs so that top-level dependencies work as expected 2010-06-09 14:06:48 -06:00
Dave Smith
91fe9d14a4 Add edoc module to .app file 2010-06-08 07:56:41 -06:00
Dave Smith
902e00fb93 Add support for requiring a specific ERTS or OTP version via a regex 2010-05-03 19:47:07 -06:00
Dave Smith
fcf4507a80 Add stub for xref support; not yet done 2010-04-09 09:25:00 -06:00
Tuncer Ayaz
5f98b6b65a Add ASN.1 support (via Ruslan Babayev)
Add support for compiling ASN.1 files with asn1ct.
Patch from Ruslan Babayev.
2010-03-22 18:31:01 +01:00
Dave Smith
872076be3f Adding cleaner module to permit users to specify their own set of files to delete 2010-02-21 05:39:12 -07:00
Dave Smith
2d9af6cf48 Sketching out templating system 2010-01-07 22:18:55 -07:00