Re: Releases in the future

2009-05-14 Thread Bertrand Delacretaz
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

2009-05-12 Thread Juan José Vázquez Delgado
 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

2009-05-12 Thread Bertrand Delacretaz
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

2009-05-12 Thread Bertrand Delacretaz
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

2009-05-12 Thread Felix Meschberger
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

2009-05-12 Thread Juan José Vázquez Delgado
  * 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

2009-05-12 Thread Ian Boston

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

2009-05-12 Thread Felix Meschberger
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-05-12 Thread Vidar Ramdal
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

2009-05-12 Thread Roy T. Fielding

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

2009-05-11 Thread Felix Meschberger
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

2009-05-11 Thread Carsten Ziegeler
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