Re: Releases in the future
On Tue, May 12, 2009 at 10:34 PM, Roy T. Fielding field...@gbiv.com wrote: On May 12, 2009, at 12:40 AM, Bertrand Delacretaz wrote: On Mon, May 11, 2009 at 10:29 PM, Roy T. Fielding field...@gbiv.com wrote: On May 11, 2009, at 12:03 PM, Felix Meschberger wrote: Carsten and I have been reasoning about the releases in the future, mainly the ones for end-users who just want to grab a binary and fire it off Apache only releases source code packages. Those other things you build are not releases -- they are binaries that individuals build and upload. How about naming those things binary packages instead of releases? A rose is still a rose ... We can still use the same process for releasing them, and include a disclaimer that they're not official releases and provided without warranty etc.. I don't see how we can use the same process for releasing them when part of that process requires comparison of the source code with what is in subversion. An ASF release is a group decision based on peer review, and I don't think anyone giving +1s on the binaries are actually doing JVM decompiles and source-level comparisons to verify the contents don't include some extra trojan horse. Running the tests is not sufficient. That's why the ASF does not vote on binaries. I'd rather not make it look like we are. Ok, I see your point. I suggest that we clarify how we do that next time we have a concrete case. -Bertrand
Re: Releases in the future
As one of those users of sling the launchpad structures are working well for us. At the moment we take launchpad/bundles as is, and package with something close to lauchpad/app. As Ian describes, a custom launchpad, including Sling and some other bundles, is a typical enterprise-ready package for Sling solutions. We are intending to give our UI developers an executable Jar to work with because when ever I say you just have to download it and build it they give me a really weird look like, like I have escaped from somewhere. Many of them are used to a pre configured lamp binary for getting up and going on development fast, building from source doesnt appear to be in their vocab. IMHO, there is not an easy way to package a Sling based software solution now. Along these, I see in Apache Felix Karaf [1] (a.k.a. Apache ServiceMix Kernel) a better approach in order to have enterprise-ready solutions over OSGi environments. WDYT? BR, Juanjo. [1] http://felix.apache.org/site/apache-felix-karaf.html
Re: Releases in the future
Hi, On Mon, May 11, 2009 at 9:03 PM, Felix Meschberger fmesc...@gmail.com wrote: ...Basically, we will start releasing single bundles using the regular ASF release process. This should enable us to release much quicker than with big release we have done until now... +1, and if we could graduate soon that would make the release process faster ;-) ...For the consumer releases we are talking about 4 projects mainly: * launchpad/base - contains the launcher code, Felix framework and the OSGi core and compendium libraries. * launchpad/bundles - a very simple project to just pack together existing bundles * launchpad/app, launchpad/webapp - projects to create final app and web app from the base and bundles projects So to release a consumer product we update the launchpad/bundles project with all the bundles we want to include and prepare the releases of the launchpad/bundles, launchpad/app and launchpad/webapp projects Sounds good, and once we have a bundle repository in place, I could imagine changing the launchpad to be a minimal launcher shell, using a structured text file to define a list of bundles to load and maybe some configuration parameters. The empty shell would rarely or never change, maybe it wouldn't even contain the OSGi framework, but load it from URLs specified in the text file. That text file is maybe simply a script for the Felix shell or for Karaf (haven't looked at that closely yet). Future music...for now, I agree with what you suggest above - except maybe we shouldn't name those packages releases, I'll reply to Roy's comment about that. -Bertrand
Re: Releases in the future
On Mon, May 11, 2009 at 10:29 PM, Roy T. Fielding field...@gbiv.com wrote: On May 11, 2009, at 12:03 PM, Felix Meschberger wrote: Carsten and I have been reasoning about the releases in the future, mainly the ones for end-users who just want to grab a binary and fire it off Apache only releases source code packages. Those other things you build are not releases -- they are binaries that individuals build and upload. How about naming those things binary packages instead of releases? We can still use the same process for releasing them, and include a disclaimer that they're not official releases and provided without warranty etc.. That would help clarify things. -Bertrand
Re: Releases in the future
Hi, Juan José Vázquez Delgado schrieb: Many of them are used to a pre configured lamp binary for getting up and going on development fast, building from source doesnt appear to be in their vocab. IMHO, there is not an easy way to package a Sling based software solution now. Along these, I see in Apache Felix Karaf [1] (a.k.a. Apache ServiceMix Kernel) a better approach in order to have enterprise-ready solutions over OSGi environments. WDYT? I have to admit, that I did not look into Karaf yet. But lets resume what we currently have in Sling: * A very small launcher which is a web app or a standalone java application. (attached artifacts of the launchpad/base project) * A common jar file (we call it the launcher jar file) containing the actual launch code to kick of the framework (and to the initial installations if any) (from the launchpad/base) * A packaging which just packs a list of bundles into a single jar file (the launchpad/bundles project) * A final build creating the distributable Java application or web application from the the small launcher (web) app, the launcher jar and the bundles to be included. * We have a patch ready to also run the initial installation from the filesystem. Now, I understand that the biggest problem is creating the inital set of bundles. Currently we just include them as explained above. We could also: * create OSGi Deployment Packages for use with the Deployment Admin service * create Karaf features (requiring respective Karaf support) * create a list of dependencies to grab from and OBR at first startup What is important to me, is that we will be able to produce simple applications (or web applications if required) which end-users can grab and run without requiring them to launch a maven (or ant or whatever tool you like) process. Regards Felix
Re: Releases in the future
* create OSGi Deployment Packages for use with the Deployment Admin service * create Karaf features (requiring respective Karaf support) * create a list of dependencies to grab from and OBR at first startup What is important to me, is that we will be able to produce simple applications (or web applications if required) which end-users can grab and run without requiring them to launch a maven (or ant or whatever tool you like) process. Absolutely agree. +1. Juanjo.
Re: Releases in the future
On 12 May 2009, at 08:55, Felix Meschberger wrote: What is important to me, is that we will be able to produce simple applications (or web applications if required) which end-users can grab and run without requiring them to launch a maven (or ant or whatever tool you like) process. If I gave my anti java UI guys this, they would stop giving me weird looks. IMHO it would remove a big barrier to the adoption of Sling by a far wider community. So big +1 on this aim. Ian Regards Felix
Re: Releases in the future
Hi, Bertrand Delacretaz schrieb: Hi, On Mon, May 11, 2009 at 9:03 PM, Felix Meschberger fmesc...@gmail.com wrote: ...Basically, we will start releasing single bundles using the regular ASF release process. This should enable us to release much quicker than with big release we have done until now... +1, and if we could graduate soon that would make the release process faster ;-) Yes, I plan to launch this discussion, once the release has been approved by the IMPC. Regards Felix
Re: Releases in the future
2009/5/12 Juan José Vázquez Delgado juanjo.vazq...@gmail.com: As Ian describes, a custom launchpad, including Sling and some other bundles, is a typical enterprise-ready package for Sling solutions. Agreed. IMHO, there is not an easy way to package a Sling based software solution now. Along these, I see in Apache Felix Karaf [1] (a.k.a. Apache ServiceMix Kernel) a better approach in order to have enterprise-ready solutions over OSGi environments. WDYT? Karaf looks very useful. For us, developing a bunch of our own jars and scripts, it would greatly simplify deploying and packaging of our own application. [1] http://felix.apache.org/site/apache-felix-karaf.html -- Vidar S. Ramdal vi...@idium.no - http://www.idium.no Akersgata 16, N-0158 Oslo, Norway +47 21 531941, ext 2070
Re: Releases in the future
On May 12, 2009, at 12:40 AM, Bertrand Delacretaz wrote: On Mon, May 11, 2009 at 10:29 PM, Roy T. Fielding field...@gbiv.com wrote: On May 11, 2009, at 12:03 PM, Felix Meschberger wrote: Carsten and I have been reasoning about the releases in the future, mainly the ones for end-users who just want to grab a binary and fire it off Apache only releases source code packages. Those other things you build are not releases -- they are binaries that individuals build and upload. How about naming those things binary packages instead of releases? A rose is still a rose ... We can still use the same process for releasing them, and include a disclaimer that they're not official releases and provided without warranty etc.. I don't see how we can use the same process for releasing them when part of that process requires comparison of the source code with what is in subversion. An ASF release is a group decision based on peer review, and I don't think anyone giving +1s on the binaries are actually doing JVM decompiles and source-level comparisons to verify the contents don't include some extra trojan horse. Running the tests is not sufficient. That's why the ASF does not vote on binaries. I'd rather not make it look like we are. Roy
Releases in the future
Hi all, Carsten and I have been reasoning about the releases in the future, mainly the ones for end-users who just want to grab a binary and fire it off. Basically, we will start releasing single bundles using the regular ASF release process. This should enable us to release much quicker than with big release we have done until now. For the consumer releases we are talking about 4 projects mainly: * launchpad/base - contains the launcher code, Felix framework and the OSGi core and compendium libraries. * launchpad/bundles - a very simple project to just pack together existing bundles * launchpad/app, launchpad/webapp - projects to create final app and web app from the base and bundles projects So to release a consumer product we update the launchpad/bundles project with all the bundles we want to include and prepare the releases of the launchpad/bundles, launchpad/app and launchpad/webapp projects. I know this is kind of weird in the Apache World, but in essence these releases are not mainly targeted at developers and manual builders but at consumers, who just want to grab-and-run it. WDYT ? Regards Felix
Re: Releases in the future
Roy T. Fielding wrote: On May 11, 2009, at 12:03 PM, Felix Meschberger wrote: Carsten and I have been reasoning about the releases in the future, mainly the ones for end-users who just want to grab a binary and fire it off. Basically, we will start releasing single bundles using the regular ASF release process. This should enable us to release much quicker than with big release we have done until now. For the consumer releases we are talking about 4 projects mainly: * launchpad/base - contains the launcher code, Felix framework and the OSGi core and compendium libraries. * launchpad/bundles - a very simple project to just pack together existing bundles * launchpad/app, launchpad/webapp - projects to create final app and web app from the base and bundles projects So to release a consumer product we update the launchpad/bundles project with all the bundles we want to include and prepare the releases of the launchpad/bundles, launchpad/app and launchpad/webapp projects. I know this is kind of weird in the Apache World, but in essence these releases are not mainly targeted at developers and manual builders but at consumers, who just want to grab-and-run it. WDYT ? Apache only releases source code packages. Those other things you build are not releases -- they are binaries that individuals build and upload. Yes, that's right - now, we think that even for those things voting etc. is a good thing. While legaly everything might be correct, but I don't think that users are really able (or willing) to distinguish between a release (source) and a downloadable binary. So it makes sense that those binaries are checked and handled properly as well. Carsten -- Carsten Ziegeler cziege...@apache.org