hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ashish singhi <ashish.sin...@huawei.com>
Subject Consesus on removing a public method from IA.Private class whose instance is returned from IA.public class.
Date Thu, 26 Nov 2015 06:22:24 GMT
Hello to all.

I know that we can safely remove any APIs from a InterfaceAudience.Private class and the same
is described in the HBase book.

Now consider a case (I did not find this mentioned in our semvar),
There is a class 'A' with InterfaceAudience.Private and class 'B' with InterfaceAudience.Public
and then there is a public API in class 'B' which returns an instance of class 'A'. (We missed
to mark the public method in class 'B' as deprecated when we marked the class 'A' as InterfaceAudience.Private).

Now the question is, can we remove the public APIs from class 'A' without marking them deprecated

I think we should not remove it directly, it will break the users using these(removed) public
methods from class 'A'.
P.S: This point came up  in HBASE-14769.

Ashish Singhi

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message