# 2.6.4 * rebar/619: [Fix cdb processing when a file is skipped](https://github.com/rebar/rebar/pull/619) # 2.6.3 * rebar/610: [qc: lift experimental notice](https://github.com/rebar/rebar/pull/610) * rebar/611: [port_compiler: consistently format default_env/0](https://github.com/rebar/rebar/pull/611) * rebar/612: [Introduce and use compat random number module](https://github.com/rebar/rebar/pull/612) * rebar/614: [Add an additional check for the existence of a 'rebar.beam' file](https://github.com/rebar/rebar/pull/614) * rebar/615: [port_compiler: generate clang compilation db](https://github.com/rebar/rebar/pull/615) * rebar/616: [port_compiler: clean up compile_each()](https://github.com/rebar/rebar/pull/616) * rebar/617: [port_compiler: auto-select C++ specific link template](https://github.com/rebar/rebar/pull/617) # 2.6.2 * rebar/532: [Automatically clean neotoma-generated erl files, regression test](https://github.com/rebar/rebar/pull/532) * rebar/549: [Add Windows continuous integration through AppVeyor](https://github.com/rebar/rebar/pull/549) * rebar/551: [fprof: document Cachegrind support](https://github.com/rebar/rebar/pull/551) * rebar/556: [fprof: further document Cachegrind support](https://github.com/rebar/rebar/pull/556) * rebar/557: [Fix windows eunit tests](https://github.com/rebar/rebar/pull/557) * rebar/558: [Add qualified name tests docs (see pr #119)](https://github.com/rebar/rebar/pull/558) * rebar/560: [Lock retest dependency](https://github.com/rebar/rebar/pull/560) * rebar/562: [Add support for Windows integration testing](https://github.com/rebar/rebar/pull/562) * rebar/567: [Allow windows release to use etc conf dir](https://github.com/rebar/rebar/pull/567) * rebar/570: [xref: fix dialyzer warning introduced in 69802f63120](https://github.com/rebar/rebar/pull/570) * rebar/573: [Provide additional debug logging on relup generation](https://github.com/rebar/rebar/pull/573) * rebar/578: [Add the latest OTP 18 version to the Travis build](https://github.com/rebar/rebar/pull/578) * rebar/580: [Additional Common Test regression tests](https://github.com/rebar/rebar/pull/580) * rebar/581: [Update retest dependency url](https://github.com/rebar/rebar/pull/581) * rebar/586: [Ensure ebin created for dia compiler](https://github.com/rebar/rebar/pull/586) * rebar/587: [rebar_require_vsn: Update regexp to account for newer OTP versions](https://github.com/rebar/rebar/pull/587) * rebar/588: [Look for ct .spec files in the ct_dir that was specified](https://github.com/rebar/rebar/pull/588) * rebar/589: [Introduce REBAR_DEPS_PREFER_LIBS env variable to alter search behaviour](https://github.com/rebar/rebar/pull/589) * rebar/590: [Treat port env vars as expandable only if they self reference](https://github.com/rebar/rebar/pull/590) * rebar/591: [Fix/eunit tests surefire crash](https://github.com/rebar/rebar/pull/591) * rebar/594: [Introduce REBAR_VSN_CACHE_FILE env variable to load/save vsn cache](https://github.com/rebar/rebar/pull/594) * rebar/599: [Fix bug when running gcc in cross_sizeof](https://github.com/rebar/rebar/pull/599) * rebar/602: [Support full-source rebar3-style deps (deps without Version Regexes)](https://github.com/rebar/rebar/pull/602) * rebar/603: [add deprecated message](https://github.com/rebar/rebar/pull/603) * rebar/605: [Add necessary OSX flags for port driver linking](https://github.com/rebar/rebar/pull/605) * rebar/606: [Revert 'Treat port env vars as expandable only if they self reference'](https://github.com/rebar/rebar/pull/606) # 2.6.1 * rebar/514: [Add license to relnotes tool per reviewer request](https://github.com/rebar/rebar/pull/514) * rebar/518: [Generate reserved file for erlc regression test](https://github.com/rebar/rebar/pull/518) * rebar/520: [Fixed version of #451](https://github.com/rebar/rebar/pull/520) * rebar/521: [rebar_utils: fix comment](https://github.com/rebar/rebar/pull/521) * rebar/522: [Fixed version of #395](https://github.com/rebar/rebar/pull/522) * rebar/524: [completion: add libid= to bash and zsh scripts](https://github.com/rebar/rebar/pull/524) * rebar/530: [Allow behaviors defined inside xref_extra_path](https://github.com/rebar/rebar/pull/530) * rebar/535: [Add regression test for covered common test](https://github.com/rebar/rebar/pull/535) * rebar/537: [Fix eunit test on OTP18](https://github.com/rebar/rebar/pull/537) * rebar/538: [Fix #536](https://github.com/rebar/rebar/pull/538) * rebar/539: [Add erl_first_files in eunit_first_files and qc_first_files](https://github.com/rebar/rebar/pull/539) * rebar/540: [Complete port compiler help string](https://github.com/rebar/rebar/pull/540) * rebar/543: [rmemo: use a better R13 check (Reported-by: Stavros Aronis)](https://github.com/rebar/rebar/pull/543) * rebar/545: [Fix #544](https://github.com/rebar/rebar/pull/545) * rebar/546: [Added report and verbose options for LFE compile.](https://github.com/rebar/rebar/pull/546) # 2.6.0 * rebar/203: [Pluggable proto compilers gpb](https://github.com/rebar/rebar/pull/203) * rebar/273: [Use target_dir as source of new version in generate-appups](https://github.com/rebar/rebar/pull/273) * rebar/293: [Check C source dependencies in needs_compile](https://github.com/rebar/rebar/pull/293) * rebar/305: [Fix compiler invocation on multiarch Linux](https://github.com/rebar/rebar/pull/305) * rebar/322: [Treat vsn mismatch as warning if -k/--keep-going](https://github.com/rebar/rebar/pull/322) * rebar/336: [Add details on Dialyzer with "make check"](https://github.com/rebar/rebar/pull/336) * rebar/337: [Implement eflame -p/--profile support](https://github.com/rebar/rebar/pull/337) * rebar/338: [Processing .app.src.script expects a single value to be returned.](https://github.com/rebar/rebar/pull/338) * rebar/344: [Manually clean up paths.](https://github.com/rebar/rebar/pull/344) * rebar/351: [fish shell completions for rebar](https://github.com/rebar/rebar/pull/351) * rebar/352: [Add typer target (rebase of #309)](https://github.com/rebar/rebar/pull/352) * rebar/354: [compiler respects 'keep_going' flag](https://github.com/rebar/rebar/pull/354) * rebar/355: [Fix 'make build_plt'](https://github.com/rebar/rebar/pull/355) * rebar/356: [Fix minor typo in CONTRIBUTING.md](https://github.com/rebar/rebar/pull/356) * rebar/360: [Minor follow-up fixes for #293](https://github.com/rebar/rebar/pull/360) * rebar/368: [Escape more characters in path (fix #367)](https://github.com/rebar/rebar/pull/368) * rebar/371: [Fix cover print truncation when coverage is 100%](https://github.com/rebar/rebar/pull/371) * rebar/372: [Implement eval command via nodetool](https://github.com/rebar/rebar/pull/372) * rebar/376: [Remove check adding ebin to path for edoc target](https://github.com/rebar/rebar/pull/376) * rebar/378: [deps: fix delete-deps if deps_dir ends with dot](https://github.com/rebar/rebar/pull/378) * rebar/382: [Adapt dialyzer_reference to ba466e2d changes](https://github.com/rebar/rebar/pull/382) * rebar/385: [Fix Dialyzer warning introduced in 0caf047f](https://github.com/rebar/rebar/pull/385) * rebar/386: [Recompile .proto files with gpb also with prefix/suffix](https://github.com/rebar/rebar/pull/386) * rebar/386: [Recompile .proto files with gpb also with prefix/suffix](https://github.com/rebar/rebar/pull/386) * rebar/386: [Recompile .proto files with gpb also with prefix/suffix](https://github.com/rebar/rebar/pull/386) * rebar/399: [Increase the timeout for the inttest/proto_gpb](https://github.com/rebar/rebar/pull/399) * rebar/400: [add Emacs/vi header to non-dummy test modules](https://github.com/rebar/rebar/pull/400) * rebar/403: [Update reference to installation notes](https://github.com/rebar/rebar/pull/403) * rebar/404: [Consistently format export attributes](https://github.com/rebar/rebar/pull/404) * rebar/405: [Generate cachegrind file if erlgrind is available](https://github.com/rebar/rebar/pull/405) * rebar/406: [Fix deps path check in rebar_ct:collect_glob/3](https://github.com/rebar/rebar/pull/406) * rebar/408: [Fix/remove duplicate console message](https://github.com/rebar/rebar/pull/408) * rebar/411: [Fix app.config argument passing when using ct_run (take 2)](https://github.com/rebar/rebar/pull/411) * rebar/413: [Revert "Merge pull request #386 ... gpb-recompilation...detection"](https://github.com/rebar/rebar/pull/413) * rebar/418: [Fix #415 (reltool vsn check)](https://github.com/rebar/rebar/pull/418) * rebar/420: [Mock gpb and protobuffs, in inttest, replacing external dependencies](https://github.com/rebar/rebar/pull/420) * rebar/421: [inttest/ct3: fix travis-ci breakage](https://github.com/rebar/rebar/pull/421) * rebar/424: [Gpb recompilation detection (using base compiler)](https://github.com/rebar/rebar/pull/424) * rebar/425: [Copy instead of rsync gpb and protobuffs inttest mocks](https://github.com/rebar/rebar/pull/425) * rebar/426: [Fixed #133. Release upgrade now handle long and short names properly.](https://github.com/rebar/rebar/pull/426) * rebar/428: [Remove a git url in gpb and protobuffs inttest configs](https://github.com/rebar/rebar/pull/428) * rebar/430: [Exit with proper status code if 'eval' fails](https://github.com/rebar/rebar/pull/430) * rebar/432: [Document recursive_cmds in -r help string as well](https://github.com/rebar/rebar/pull/432) * rebar/433: [inttest/ct3: fix overlong line](https://github.com/rebar/rebar/pull/433) * rebar/437: [Fix .app.src.script bug introduced in b44b4f4](https://github.com/rebar/rebar/pull/437) * rebar/440: [Delete obsolete file](https://github.com/rebar/rebar/pull/440) * rebar/442: [.travis.yml: print information before running script](https://github.com/rebar/rebar/pull/442) * rebar/444: [Fix incorrect "not an app dir" warning](https://github.com/rebar/rebar/pull/444) * rebar/445: [rebar doesn't respect the order of erl_first_files given in the rebar.conf file](https://github.com/rebar/rebar/pull/445) * rebar/447: [Support custom protobuf directory](https://github.com/rebar/rebar/pull/447) * rebar/449: [Support .appup.src files](https://github.com/rebar/rebar/pull/449) * rebar/452: [added 'shell' command to bash-completion](https://github.com/rebar/rebar/pull/452) * rebar/456: [Generate json output from cover](https://github.com/rebar/rebar/pull/456) * rebar/458: [Change env var delimiter to match non-word](https://github.com/rebar/rebar/pull/458) * rebar/459: [Remove -m64 flag.](https://github.com/rebar/rebar/pull/459) * rebar/460: [Add Dialyzer plugin](https://github.com/rebar/rebar/pull/460) * rebar/461: [Fix OTP .appup.src processing on empty lists](https://github.com/rebar/rebar/pull/461) * rebar/463: [Print more info when profiling](https://github.com/rebar/rebar/pull/463) * rebar/466: [Improve test targets in Makefile](https://github.com/rebar/rebar/pull/466) * rebar/467: [Refactor logic and optimizations in rebar_erlc_compiler:doterl_compile/4](https://github.com/rebar/rebar/pull/467) * rebar/469: [Fix dialyzer warnings](https://github.com/rebar/rebar/pull/469) * rebar/470: [Fix whitespace errors](https://github.com/rebar/rebar/pull/470) * rebar/471: [Fix whitespace errors](https://github.com/rebar/rebar/pull/471) * rebar/475: [Adapt to 18.x time api changes](https://github.com/rebar/rebar/pull/475) * rebar/477: [Enable parse transformations in rebar config](https://github.com/rebar/rebar/pull/477) * rebar/478: [bootstrap: better warning fix (Thanks James Fish)](https://github.com/rebar/rebar/pull/478) * rebar/482: [Windows runner - CD to node root](https://github.com/rebar/rebar/pull/482) * rebar/484: [/me added to THANKS](https://github.com/rebar/rebar/pull/484) * rebar/485: [avoid pre-compile time errors in expand_include_lib_path](https://github.com/rebar/rebar/pull/485) * rebar/487: [erlc: fix recently introduced whitespace errors](https://github.com/rebar/rebar/pull/487) * rebar/489: [Fix crash on failed build console output](https://github.com/rebar/rebar/pull/489) * rebar/494: [Update line number of allowed dialyzer error](https://github.com/rebar/rebar/pull/494) * rebar/496: [Update PLT detail for make build_plt](https://github.com/rebar/rebar/pull/496) * rebar/499: [Try one more location for the OTP_VERSION file](https://github.com/rebar/rebar/pull/499) * rebar/500: [Makefile: clean only .rebar/erlcinfo](https://github.com/rebar/rebar/pull/500) * rebar/502: [Don't crash if missing OTP_VERSION file (fix #350)](https://github.com/rebar/rebar/pull/502) * rebar/504: [Drop `shared` PLTs support and change PLT name to .plt](https://github.com/rebar/rebar/pull/504) * rebar/505: [rebar_utils: explain pdict use](https://github.com/rebar/rebar/pull/505) * rebar/508: [rebar_core: add missing newline in log msg](https://github.com/rebar/rebar/pull/508) * rebar/509: [erlc: do not crash if dep file cannot be found](https://github.com/rebar/rebar/pull/509) * rebar/510: [Fix 'make deps'](https://github.com/rebar/rebar/pull/510) * rebar/511: [Add and use memoization server](https://github.com/rebar/rebar/pull/511) * rebar/512: [rmemo: properly handle unsupported call](https://github.com/rebar/rebar/pull/512) # Rebar 2.5.1 * rebar/299: [Fix OS X resource fork handling (Reported-by: Richard O'Keefe)](https://github.com/rebar/rebar/pull/299) * rebar/307: [bootstrap now accepts --help usage flag](https://github.com/rebar/rebar/pull/307) * rebar/316: [fix for #314 (rebar shell somehow blocks using io:format in gen_server handle_call)](https://github.com/rebar/rebar/pull/316) * rebar/327: [Adapt arch string to versioning scheme changes (>= 17.x)](https://github.com/rebar/rebar/pull/327) * rebar/328: [Follow-up typo fixes for #327](https://github.com/rebar/rebar/pull/328) * rebar/330: [Remove experimental label from 'eunit tests='](https://github.com/rebar/rebar/pull/330) * rebar/332: [Update dialyzer_reference](https://github.com/rebar/rebar/pull/332) # Rebar 2.5.0 * Reverted rebar/281: [Move include/rebar.hrl to src/rebar.hrl](https://github.com/rebar/rebar/pull/281) as it broke backwards compatibility # Rebar 2.4.0 * rebar/52: [Slim release support](https://github.com/rebar/rebar/pull/52) * rebar/112: [Add code coverage analysis functionality to `qc'](https://github.com/rebar/rebar/pull/112) * rebar/119: [Add qualified name tests specification (see #118)](https://github.com/rebar/rebar/pull/119) * rebar/130: [ct fixes](https://github.com/rebar/rebar/pull/130) * rebar/136: [Add support for the Perforce VCS client via the "p4" tool](https://github.com/rebar/rebar/pull/136) * rebar/195: [Switch template instructions](https://github.com/rebar/rebar/pull/195) * rebar/229: [Add REBAR to environment before executing hooks](https://github.com/rebar/rebar/pull/229) * rebar/260: [Quote include/lib paths to handle spaces in Erlang installs (fixes build on windows)](https://github.com/rebar/rebar/pull/260) * rebar/280: [improve output when using `rebar shell`](https://github.com/rebar/rebar/pull/280) * rebar/281: [Move include/rebar.hrl to src/rebar.hrl](https://github.com/rebar/rebar/pull/281) * rebar/284: [Error 'Command not found' when sname is used](https://github.com/rebar/rebar/pull/284) * rebar/285: [Fix #249 (erlc regression)](https://github.com/rebar/rebar/pull/285) * rebar/288: [Extend and document contributing rules](https://github.com/rebar/rebar/pull/288) * rebar/289: [erlc: fix typo in update_erlcinfo/3 clause that would make the function fail](https://github.com/rebar/rebar/pull/289) * rebar/290: [erlc: replace if expression with case of](https://github.com/rebar/rebar/pull/290) * rebar/292: [Namespaced types: fix build for 17.0](https://github.com/rebar/rebar/pull/292) * rebar/296: [Add gen_event template](https://github.com/rebar/rebar/pull/296) # Rebar 2.3.1 ## PR's Merged * rebar/242: [Extra commits for #129](https://github.com/rebar/rebar/pull/242) * rebar/244: [Document skip_apps=, apps=, and require_*_vsn](https://github.com/rebar/rebar/pull/244) * rebar/251: [Make sure that eunit/qc_compile_opts works](https://github.com/rebar/rebar/pull/251) * rebar/255: [rebar.app: remove superfluous quoting](https://github.com/rebar/rebar/pull/255) * rebar/274: [Use lowercase for Windows drive name to resolve issue #250](https://github.com/rebar/rebar/pull/274) # Rebar 2.3.0 ## PR's Merged * rebar/98: [Repetition of environment variable definitions in child processes (ports)](https://github.com/rebar/rebar/pull/98) * rebar/115: [Incorrect REMSH args when sname is used.](https://github.com/rebar/rebar/pull/115) * rebar/129: [Speed up the compilation process v5](https://github.com/rebar/rebar/pull/129) * rebar/139: [Allow specification of module dependencies for appups](https://github.com/rebar/rebar/pull/139) * rebar/175: [CWD plugins regression](https://github.com/rebar/rebar/pull/175) * rebar/188: [Xref extra path](https://github.com/rebar/rebar/pull/188) * rebar/208: [Fix typo in rebar_erlydtl_compiler](https://github.com/rebar/rebar/pull/208) * rebar/219: [Added R16B01 and R16B02 to travis config.](https://github.com/rebar/rebar/pull/219) * rebar/221: [Adapt erlydtl compiler plugin to latest version of erlydtl](https://github.com/rebar/rebar/pull/221) * rebar/223: [Add random_suite_order option to eunit command](https://github.com/rebar/rebar/pull/223) * rebar/224: [allow suites or tests as options for eunit and ct](https://github.com/rebar/rebar/pull/224) * rebar/230: [eunit: fix dialyzer warnings introduced in 03da5e0b](https://github.com/rebar/rebar/pull/230) * rebar/232: [Document support for abbreviated commands](https://github.com/rebar/rebar/pull/232) * rebar/233: [docs: fix #228](https://github.com/rebar/rebar/pull/233) * rebar/234: [Fix #220 (Reported-by: Joseph Norton)](https://github.com/rebar/rebar/pull/234) * rebar/237: [Add partial support for Erlang/OTP 17](https://github.com/rebar/rebar/pull/237) * rebar/252: [file_utils: properly report errors (fix #95)](https://github.com/rebar/rebar/pull/252) * rebar/254: [Fix 'rebar generate' regression (#253)](https://github.com/rebar/rebar/pull/254) * rebar/265: [Fix 'rebar help clean' function_clause error](https://github.com/rebar/rebar/pull/265) * rebar/268: [Fix #267 (code path regression)](https://github.com/rebar/rebar/pull/268) * rebar/269: [Update THANKS](https://github.com/rebar/rebar/pull/269) # Rebar 2.2.0 ## PR's Merged * rebar/152: [Fix erl_opts use](https://github.com/rebar/rebar/pull/152) * rebar/154: [Fix update-deps with certain forms of the {tag, ...} type](https://github.com/rebar/rebar/pull/154) * rebar/155: [Fixes for #137 and #142](https://github.com/rebar/rebar/pull/155) * rebar/157: [Don't over-aggressively clean the code path in the presence of lib_dir directives](https://github.com/rebar/rebar/pull/157) * rebar/172: [Add missing dep examples and fix existing ones](https://github.com/rebar/rebar/pull/172) * rebar/173: [Fix false reporting of (plain) vsn strings](https://github.com/rebar/rebar/pull/173) * rebar/174: [rebar_core: fix Dialyzer warning introduced in aa46d85 (#157)](https://github.com/rebar/rebar/pull/174) * rebar/177: [Delete unused inttest/retest binary](https://github.com/rebar/rebar/pull/177) * rebar/179: [Make list of commands (for unabbreviation) easier to maintain](https://github.com/rebar/rebar/pull/179) * rebar/183: [generate-upgrade can now take target_dir argument](https://github.com/rebar/rebar/pull/183) * rebar/184: [Fix log levels](https://github.com/rebar/rebar/pull/184) * rebar/185: [Switch retest dep to upstream (dizzyd/retest.git)](https://github.com/rebar/rebar/pull/185) * rebar/189: [inttest/rgen1: increase retest timeout (30s -> 60s)](https://github.com/rebar/rebar/pull/189) * rebar/190: [inttest/rgen_1: double the timeout a second time](https://github.com/rebar/rebar/pull/190) * rebar/191: [Fix #187 (rename getopt and mustache)](https://github.com/rebar/rebar/pull/191) * rebar/196: [Print a more appropriate message on 'rebar info'](https://github.com/rebar/rebar/pull/196) * rebar/198: [Clean up rebar.config.script](https://github.com/rebar/rebar/pull/198) * rebar/199: [rebar_dia_compiler: fix Dialyzer warnings](https://github.com/rebar/rebar/pull/199) * rebar/200: [bootstrap: avoid trying to run 'debug' command](https://github.com/rebar/rebar/pull/200) * rebar/201: [Added a library template.](https://github.com/rebar/rebar/pull/201) * rebar/210: [Fix #205 (erlydtl:compile/3 returns warnings)](https://github.com/rebar/rebar/pull/210) * rebar/212: [Fix basho/rebar#388](https://github.com/rebar/rebar/pull/212) * rebar/214: [Document compile_only=true](https://github.com/rebar/rebar/pull/214) * rebar/215: [Remove experimental flags](https://github.com/rebar/rebar/pull/215)