felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Enrique Rodriguez <enriqu...@gmail.com>
Subject Re: Adding bundles
Date Thu, 25 Aug 2005 23:20:50 GMT
Daniel Fagerstrom wrote:
> But before we start to add bundles to Felix I think we need to discuss 
> what policy we should have for adding bundles. Here are my opinions:
> * As it is part of our charter to "implement, document, maintain, and 
> support standard OSGi R4 services", we should in most cases accept code 
> contributions for standard services as initial code base (as long as the 
> legal issues are solved of course). For some services there might be 
> several different approaches for the services, in such cases we need of 
> course more discussion.

Sounds great.  There are a number of smaller OBR repos with a lot to 
offer and I hope we hear from more people like Didier who are willing to 
raise the visibility of their work.

> * Committers can add whatever bundle they want to their sandbox.

This is very cool.  Without accountability, the sandbox rapidly becomes 
a litterbox.

> * Now we come to the complicated part: non standard bundles. One of the 
> cool things with our project is that we have the goal to "provide a 
> focal point for the open-source OSGi community to develop next 
> generation enhancements to the core framework and act as a conduit for 
> the open-source community to the OSGi Alliance". Fullfilling that 
> requires IMO some focus, we should not let our project become a dumping 
> ground for various half baked ideas and one man shows.

I'd like to provide some commentary, namely what we were thinking when 
writing the proposal regarding #3 ("common needs not fully specified") 
vs. #4 ("next generation enhancements").  Of course, I look forward to 
Felix taking on a life of its own so this may largely be personal opinion.

As you note, #4 results in non-standard bundles.  Really, with #4, "next 
generation enhancements," we were thinking about how the Service Binder 
went on to become Declarative Services.  In other words, "next 
generation" meant modularity and classloading ... deeper stuff.

But, I'd like to draw some attention to #3 as I believe that is where 
some of the most useful bundles will come from.  By "interfaces, APIs, 
and other common needs not fully specified" we had in mind:

1)  "store interfaces" - services such as UserAdmin, ConfigAdmin, and 
PrefsAdmin did not define store interfaces.  With store interfaces 
defined, we could provide bundles for directory (JNDI), JDBC, or object 
store (db4o, Prevayler) backends.  Existing implementations either 
provide no persistence or a simple file store.  I believe the lack of 
store options is holding back their wider usage.

2)  "aspects of the runtime container's packaging" - really this means 
daemons and installers (GUI, RPM) for Windows and Linux.  We should be 
able to provide these as features for Felix users at Apache and 
elsewhere to re-use for their projects.

3)  "bundle repositories" - OBR and related ideas, such as standardizing 
repo formats with Maven and maybe even Eclipse update sites.

OK, I hope that helped.  Looking back at the proposal I wouldn't be 
surprised if it wasn't clear.  Opps.

> IMO a non standard bundle should only be accepted if it is a community 
> effort, i.e. if a couple of community members takes part in discussions, 
> design and implementation. We should also have vote about accepting the 
> bundle.

Makes sense.

> The above might sound somewhat harsh but we have some rather bad 
> experience from the Cocoon project on letting people add modules 
> (blocks) whenever they feel like. After a number of years we have the 
> following situation: http://svn.apache.org/repos/asf/cocoon/blocks/. 
> Around 50 blocks of which only a handfull are actively maintained by the 
> community. It is not that easy for a new user to evaluate which of all 
> these blocks that they can rely on. And categorizing and removing blocks 
> leads to community friction.
> So IMO we should only add a bundle after that we have made sure it has 
> real long term community support.
> What do you think?
> /Daniel

View raw message