Stian

Thanks for being so patient with my pushback. :)

On Thu, Apr 14, 2016 at 12:53 AM, Stian Thorgersen <sthorger@redhat.com> wrote:
Adding list back

On 13 April 2016 at 21:27, Lance Ball <lball@redhat.com> wrote:

I'll take your word for it, but I honestly don't see how pushing a new release of _everything_ can possibly be easier than, for example `npm publish` for a single artifact.

Releasing everything is going to be a "single" button click. Having the ability to release micro releases of adapters may be something to consider in the future if it does indeed become a problem.

Obviously, I agree that micro releases would be good - but I understand your position. All of this is hypothetical at this point anyway, since the node adapter bits I care most about are not yet full citizens and we have a little time to get all of our ducks in a row. 

2) There is no change in the adapter between releases of Keycloak server. In this case, it's not necessarily a problem to release a new adapter version, but it seems noisy and pointless if the bits are exactly the same.

The plan is to have release notes that cover which adapters have changed and which are required to upgrade (either because backwards compatibility is broken with the server or due to a security fix)

But how is "Keycloak 2.7.0 works with foo-adapter 1.9.1 and greater" any better than "foo-adapter 1.9.1 works with Keycloak 1.9.1 and greater"? The first scenario is what will happen if adapters march in lockstep with Keycloak server, and the second is what will happen if they are released only when necessary. In either case, it is possible to be running different version numbers for foo-adapter and Keycloak server and still be functional.

Being able to grab same version of everything is nice. Being able to not have to upgrade everything is nice. 

Having to figure out what version belongs to what as a first time adapter or when adding a new adapter is not so nice.

Having to figure out what the version is going to be for each individual bit when we are doing a collective release is not so nice. Having different release cycles, etc, etc.. is not so nice. We are a small team with a large amount of work so we can afford to do this as it's additional time spent doing releases, which we will be doing every 6 weeks!! so we want to reduce the pain of doing a release as much as possible.

Absolutely - I understand. We went through a lot of this soul searching with WildFly Swarm recently, and ended up allowing for separate versioning between "core" and "non-core" pieces of the project. There's not a lot of data to go on yet, so we'll see how that turns out. But in this case, wouldn't the most recent Keycloak server always just use the latest version of a given adapter for any new release?

Lance