Is it ok to add methods to public interfaces in patch releases?
Needs to be clarified. See http://hbase.apache.org/book.html#hbase.versioning
"new APIs may be added which will not be available in earlier patch versions"
"Client code written to APIs available in a given patch release might not run against the old jars from an earlier patch version."
"A patch upgrade is a drop-in replacement. Any change that is not Java binary compatible would not be allowed.. Downgrading versions within patch releases may not be compatible."
The above would seem to allow the Table API change under discussion here, because it is binary compatible per the Java binary compat specification. Yet
"A minor upgrade requires no application/client code modification."
implies source compatibility even on minor releases, which is not the intent I think.
The compatibility matrix also suggests Evolving interfaces cannot be changed on patch releases, which I can see as intended.
The guidelines do not address source compatibility specifically.