On 16 Oct 06, at 2:34 PM 16 Oct 06, Jesse McConnell wrote:
I was going to try and wrap my head about what needed to get wrapped up for a 1.1 release of continuum this week when I got to talking to emmanuel this morning. I had been under the impression that we were getting near a point that we might want to polish things up and cut a 1.1 release but emm was thinking that we ought to have another big push for new features before we start polishing things up. So I told him I would mention our talk and see what kinda interest we got from people on new features and who might want to tackle what in the short term, or if we wanted to put some things out into the longer term bin.
One of the major things that I had been thinking we would push off to the 1.2 release was the profiles. Its a slightly overridden term as it has little to do with maven profiles, but in my mind at least the profiles were going to be 1/3 of a trinity by which builds could be setup to run.
You might want to hold off on profiles while the toolchain support is being developed in Maven. I think continuum profiles would benefit from incorporating any ideas we use for toolchains.
The trinity being: profile (maven instance, env vars, maven profiles, jdk instance, etc), temporal ( scheduled cron, when dependency changes, scm activity, etc) and the project group (bundle of projects). I was figuring that those three things taken together ought meet the requirements for building what, where and when. It would be a matter of setting up the permutations of those three components, for example: 2 profiles, 1 schedule, 1 project group would make 2 instances of schedulable FOO. Anyway, I digress...profiles would be one large feature that would be wonderful to have in continuum, sooner the better. But it would be pretty massive effects on the codebase. So massive that I would think we ought to consider splitting up the DefaultContinuum object into the workflows that have been kicked around, making things like 'Add Project To Project Group' extensible by users so they can trigger any other processes they might want running on those events. Trygve has some definite ideas in this area, perhaps using the plexus-spe code. The actions in continuum have been a first pass attempt at starting to break things out of the DC object which is pretty big atm.
I think focusing on getting the security in and preparing for real workflow would be enough for 1.1.
If we were going to rip the top off of the DefaultContinuum object and add/modify in the profile concepts into the store then we really ought to clean up the whole store api which is more painful to work with then it really should be. joakim and I had a lot of success with structuring things nicely in the plexus-security jdo stores and we could probably apply a ton of the concepts there in terms of api to the continuum-store and make it scads easier to work with.
Yah, I would agree that some refactoring in there before attempting to add profiles would be wise.
and on and on. I agree with Emmanuel that since 1.1 as it currently stands is not backwards compatible (I think) with the old database we ought to just add in what we need now...But doing this will definitely move out a 1.1 release into the new year...and is that something we want to do?
You have to make that compatible by whatever means necessary. There has to be a way to swizzle the information or has the schema changed so that data was removed? There's nothing we can do about this? That really sucks for users.
I dunno really, personally I would be cool with adding in profiles and refactoring the core chunks of continuum up now and get it over with, but does anyone else have anything to say on the matter? I know we have had a lot more interest recently by folks like rahul and christian on participating, would you guys be interested in taking on some of these challenges with us? Theres nothing like ripping through the guts of code to really get involved :) thoughts? should we open this out to the users list maybe?
I don't think there is any rush for the profiles. Decomposing the DC component for workflow is going to be a general plexus app thing and probably not trivial. I think getting security into 1.1 and improving the testing facilities would be a more prudent path. If you can not test continuum on all the platforms we claim to support then I would say nothing else is of a higher priority then getting that working before anything else happens. What's the state of the testing?
Jason.
jesse -- jesse mcconnell [EMAIL PROTECTED]