Felix community:
It appears that there was some confusion about the requirements for
graduation. In the past we were told that we could not do a release of
Felix while in the incubator, but now it seems that we must prepare a
release as a prerequisite for graduation.
My view is that the framework is ready for release, so this is not
necessarily a huge burden, we just have to tie up some loose ends. I do
not think it is necessary to create official releases for every
subproject, since many of them are in varying degrees of readiness with
respect to their public releases. Furthermore, the whole point of the
modularity of OSGi technology is that it promotes independent
development and release cycles, so the subprojects are intended to
evolve independently, at their own pace.
To make an official release of the framework, I believe we only need to
create official releases for the following subprojects:
* framework - this one goes without saying.
* main - this one goes without saying too.
* shell - we need some way to issue framework commands.
* shell.tui - we need some way to interact with the framework.
* bundlerepository - this one is the most questionable for release,
but it has always been one of the standard bundles, so I would
like to include it...we may have to think about the actual
repository file we ship with, though.
I think all of the above subprojects are ready to go as is with respect
to their functionality. The following is a list of some loose ends that
need to be tied up:
* Fix all headers to meet the requirements defined in
http://www.apache.org/legal/src-headers.html.
* Create an appropriate LICENSE file.
* Create an appropriate NOTICE file.
* Determine how the OSGi interface source and classes must be handled.
* Determine version numbers for subprojects, especially those that
will be released along with the framework.
* If we release bundle repository as part of the framework install,
then determine what we will do for the repository.
We can also debate whether or not this is an actual release or a dry
run, but I don't see much point in that. If we get all of this stuff
done, then it will effectively be a real release, so no dry run is
really necessary. We can still label it as a "release candidate" or
whatever we want, but I would argue for making it publicly available
since we have to figure out how we are going to do that too and we can
possibly get feedback on the release...once we graduate we can just
change its label to "final" or we may actually get some feedback on
issues that we can resolve for the official release after graduation if
we make the release public now.
Comments on the above and on things that I am forgetting are welcome.
-> richard
p.s. I have created JIRA issues for the above and have attached them to
version 0.8.0.