[ https://issues.apache.org/jira/browse/HBASE-12808?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14274075#comment-14274075 ]
Dima Spivak commented on HBASE-12808: ------------------------------------- [~enis], what if we just had a weekly (or nightly) Jenkins job for each branch that ran this script between the first release of that branch and the tip? That way, we get away from needing a unit test that needs to be maintained (and which would only add to how long the CI tests already go), but still have better granularity when something breaks compatibility than just checking at release time. Unfortunately, at the moment, the tool only supports class annotations (if InterfaceAudience.Public is in the whitelist of annotations to analyze, it will skip any classes that aren't annotated with that); no exclude list to speak of yet. As for individual methods, my understanding is that particular methods could be more restrictive than their classes, right? In that case, we might get false positives (i.e. for methods that are actually InterfaceAudience.Private within an InterfaceAudience.Public class), but we could filter those out with our own ignore list in automation. Does that address your concern? > Use Java API Compliance Checker for binary/source compatibility > --------------------------------------------------------------- > > Key: HBASE-12808 > URL: https://issues.apache.org/jira/browse/HBASE-12808 > Project: HBase > Issue Type: Improvement > Components: test > Reporter: Dima Spivak > Assignee: Dima Spivak > Attachments: HBASE-12808_v1.patch, HBASE-12808_v2.patch, > HBASE-12808_v3.patch > > > Following [~busbey]'s suggestion in HBASE-12556, I've spent some time playing > with the [Java API Compliance > Checker|http://ispras.linuxbase.org/index.php/Java_API_Compliance_Checker] > and think it would be a great addition to /dev-support. I propose that we use > it to replace the JDiff wrappers we currently have there (since it does what > JDiff does and more), and look into putting up automation at > builds.apache.org to run the tool regularly (e.g. latest release of a > particular branch vs. latest commit of that same branch). -- This message was sent by Atlassian JIRA (v6.3.4#6332)