Adding a tool to JDiff the Public API of Two HBase Versions in 0.94
Review Request #10361 - Created April 9, 2013 and updated
To see what public APIs changed between two arbitrary versions of HBase (versions 0.92 and 0.94 only), a developer can specify two git branches and run this script. It will output a report in .html that the developer can analyze for incompatibilities. I see this being used as part of Jenkins job, the results of which anyone can examine. The next step is to make this work for HBase 0.95 and above. The reason it does not work for it now is because the directory structures are different between 0.94 and earlier and 0.95 and later. Directories created: A working directory called ./jdiff is created. The report is placed into ./jdiff/hbase_jdiff_report/changes.html. changes.html is pictured in the screenshot. It also pulls down a template file, called hbase_template.xml from my personal git repo. It should probably reside elsewhere and I'm open to suggestions. https://github.com/AleksandrShulman/hbase_jdiff/blob/master/hbase_template.xml
I ran this script in-house as part of a Jenkins job. I also ran it from the command-line between HBase Version 0.92 and Version 0.94. I've attached a screenshot of the output.
|This is a bit funky -- sed'ing xml -- but it is fine for now||Michael Stack||April 9, 2013, 6:48 p.m.||Open|
|This could take a while. v2 of this script should allow pointing at an existing git repo... but this is ...||Michael Stack||April 9, 2013, 6:48 p.m.||Open|