hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stack <st...@duboce.net>
Subject Re: Consesus on removing a public method from IA.Private class whose instance is returned from IA.public class.
Date Thu, 03 Dec 2015 00:36:46 GMT
Appy makes a pretty good argument.

What in particular are we discussing Ashish?

Thanks,
St.Ack

On Wed, Dec 2, 2015 at 3:49 PM, Apekshit Sharma <appy@cloudera.com> wrote:

> I think it should be okay to remove them. When I imagine myself on other
> side, a dev using client api of Foo project, and I see a class returning
> reference to an internal class, I would not trust that function. If I
> really need something from returned ref, I'd probably use it, and if it
> goes away tomorrow, i'd probably curse it too, but I can't complain since
> it's not anything I trusted to being with.
>
> Now thinking as dev:
> Given that documentation explicitly states that functions can disappear
> from private class, and nothing about transitiveness, I believe we can
> remove functions from private class A.
>
>
> On Thu, Nov 26, 2015 at 7:10 AM, Ted Yu <yuzhihong@gmail.com> wrote:
>
> > bq. we should not remove it directly
> >
> > My understanding is the same.
> >
> > Cheers
> >
> > On Wed, Nov 25, 2015 at 10:22 PM, ashish singhi <
> ashish.singhi@huawei.com>
> > wrote:
> >
> > > 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.
> > >
> > > Regards,
> > > Ashish Singhi
> > >
> >
>
>
>
> --
>
> Regards
>
> Apekshit Sharma | Software Engineer, Cloudera | Palo Alto, California |
> 650-963-6311
>

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