Re: [osgi-dev] @ConsumerType vs @ProviderType

2019-10-16 Thread Raymond Auge via osgi-dev
On Wed, Oct 16, 2019 at 7:53 PM Greg Amerson via osgi-dev < osgi-dev@mail.osgi.org> wrote: > And with regards to version increases, if a new method added to > `DataHandler` that would break API and cause a major version increase for > the package, however, if a new method was added to

Re: [osgi-dev] @ConsumerType vs @ProviderType

2019-10-16 Thread Greg Amerson via osgi-dev
And with regards to version increases, if a new method added to `DataHandler` that would break API and cause a major version increase for the package, however, if a new method was added to `DataContext` since that API is marked `@ProviderType` the package version increase would only have to be

Re: [osgi-dev] @ConsumerType vs @ProviderType

2019-10-16 Thread BJ Hargrave via osgi-dev
Nailed it! --BJ HargraveSenior Technical Staff Member, IBM // office: +1 386 848 1781OSGi Fellow and CTO of the OSGi Alliance // mobile: +1 386 848 3788hargr...@us.ibm.com     - Original message -From: Raymond Auge via osgi-dev Sent by: osgi-dev-boun...@mail.osgi.orgTo: Milen Dyankov via

Re: [osgi-dev] @ConsumerType vs @ProviderType

2019-10-16 Thread Raymond Auge via osgi-dev
Let me see if I can take a crack at it! Though I'm often told I also don't understand when I try to explain it. :D Suppose you have an API like so: interface DataHandler { void processData(DataContext context); } This API has 2 interfaces `DataHandler` and `DataContext` Now you happen to

Re: [osgi-dev] @ConsumerType vs @ProviderType

2019-10-16 Thread Raymond Auge via osgi-dev
Let me see if I can take a crack at it! Though I'm often told I also don't understand when I try to explain it. :D Suppose you have an API like so: interface DataHandler { void processData(DataContext context); } This API has 2 interfaces `DataHandler` and `DataContext` Now you happen to

Re: [osgi-dev] @ConsumerType vs @ProviderType

2019-10-16 Thread Milen Dyankov via osgi-dev
Welcome to the club ;) I struggled with that myself for a long time. I think I finally got to understand it couple of years ago. Here is how I explained it during one of my talks: https://www.youtube.com/watch?v=hGNrZmr0zz8=youtu.be=1569 I hope this helps better than me trying to write it all

[osgi-dev] @ConsumerType vs @ProviderType

2019-10-16 Thread Leschke, Scott via osgi-dev
I'm trying to wrap my head around these two annotations and I'm struggling a bit. Is the perspective of the provider and consumer roles from a bundle perspective or an application perspective? I've read the Semantic Versioning whitepaper a number of times and it doesn't really clear things up