CHANGELOG.md in viiite-0.1.0 vs CHANGELOG.md in viiite-0.2.0
- old
+ new
@@ -1,69 +1,139 @@
+# 0.2.0
+
+## Awesome new features
+
+* Viiite is now able to work on complete benchmark suites (located in
+ './benchmarks' and looking for '**/*.rb' files by default). Subcommands
+ automatically resolve benchmark names passed as arguments. For example:
+
+ ./benchmarks/
+ bench_iteration.rb -> viiite run bench_iteration
+ Array/
+ bench_sort.rb -> viiite run Array/bench_sort
+
+* Default behavior remains compatible with 0.1.0:
+ * 'run', 'plot' and 'report' accept a benchmark file as first argument and
+ bypass the benchmark suite in this case.
+ * when invoked without any argument, 'plot' and 'report' assume a .rash stream
+ on standard input
+
+* For each benchmark, the results of the last run are saved in a cache. 'plot'
+ and 'report' will use data in the cache if available or automatically run the
+ benchmark.
+
+* The default behavior may be controlled through the following main options:
+ --suite=[FOLDER], --pattern=[GLOB], --[no-]cache=[FOLDER], --append, --write. Example:
+
+ # Run all benchmarks on all rubies, 10 times each, appending all results
+ # in cache
+ rvm exec viiite --append run --runs=10
+
+## Enhancements to individual commands
+
+* 'viiite run'
+
+ * Added a --runs=NB option to run the same benchmark NB times. This allows
+ keeping benchmarks clean; no NB.times{ ... } or range_over(1..NB, :run)
+ for obtaining a representative sample are needed in the benchmark itself.
+ * The previous option comes hand-in-hand with --run-key=KEY that allows
+ specifying the attribute name for the run number (defaults to :run)
+ * Without argument, runs all the benchmarks of the suite
+
+* 'viiite plot'
+
+ * Added --highcharts options; outputs a json array containing one hash for
+ each chart, to be used as options Highcharts.Chart(...) (cfr. highcharts.js)
+ * Added -d option, to debug; outputs the query result that would be used by
+ the concrete --xxx formatter.
+
+* 'viiite report'
+
+ * output has been improved: user, system, total and real time are explicitely
+ shown (different attributes/columns instead of one tms measure).
+ * added a '--ff=FORMAT' option for float format of the different measures
+ (defaults to %.6f)
+ * added a '--stddev=[MEASURE]' option for displaying standard deviation over
+ all regrouped runs (on a specific measure defaulting to tms.total)
+
+## Other improvements
+
+ * The garbage collector is started before running report{ ... } blocks
+ * Viiite does not depend on benchmark (stdlib) anymore
+ * Improved Viiite.which_ruby; it should always output something like
+ '#{rubyname} #{version}#{patchlevel}' from now on
+
+## Bug fixes
+
+* Fixed a bug when using 'viiite report --regroup=x,y,z --hierarchy' with more
+ than 2 regrouping attributes.
+
+
# 0.1.0 / 2011-08-20
* Enhancements
* Birthday!