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