This document has been around for a while, but pretty clearly describes options available and which to take when:

http://docs.ofbiz.org/display/OFBADMIN/Apache+OFBiz+Getting+Started

This is a problem that goes back to the beginning of OFBiz, and is fairly unique to community-driven enterprise software. You won't see the same issue with "commercial open source" like SugarCRM or Compiere or OpenBravo or the like, because they develop using a commercial model, and not an open source model.

-David


On Nov 17, 2008, at 9:25 AM, Markus Studer wrote:

David E Jones wrote:
- Framework release
- gather ideas from people in a confluence page (TODO: add my own)
- complex UIs, GWT, DOJO, etc renderers for widgets

I've been thinking about the framework release and our current Release 4. Release 4 will be two years old in a few months. A lot has been done to the project since the R4 branch. How about making a Release 5 branch (whole project) sometime around Spring?
I think that's fine. Hopefully by then we'll have more framework things done. What I'd really like to hear for releases is what people plan to do with the release branch. In general in order to facilitate collaboration and such it is best to use the trunk. Unless we have a lot of people using OFBiz OOTB then it may not make sense to do releases at all, even "lite" releases like these release branches.

Release Handling is tricky and I'd like to give you some infos on the
kind of problems we're facing with dealing with release 4.0, trunk, patches etc.

We've successfully used OFBiz in multiple projects based on a pre 4.0
release (~6 months before release 4.0). We minor changes to
framework parts, bigger changes to applications and release 4.0 was helpfull for troubleshooting as it is a more stable reference than the trunk that moves fast.

There were parts that we wanted to give back to the community and that's
were problems start.

E.g. we translated some applications to german and wanted to give that
back. Unfortunately, instead of .properties in Release 4.0 there are
.xml files in trunk and no easy way to merge that somehow into the
trunk. Currently, I'm redoing some of the translations that we already
did to get that back into the trunk!

Next problem we face: Which version of OFBiz to use for future
customer projects:
- our internal adapted pre 4.0 version (more than 2 years old with our
own internal bugfixes)
- 4.0 release (2 years old with the bugfixes from the community)
- trunk


Option 1 -> our pre 4.0 code

not really a nice option as were loosing all the optimizations and work the community did in the last years. Backporting new functionality will get more and more difficult


Option 2 -> Release 4.0

would give us a stable, proven base for development. Unfortunately, this release is 2 years old and newer functionality is missing. No idea, how to cope with release 4.0 in a few years. (we also thought about a migration of our code to release 4.0 but we're not sure if that is worth the effort)


Option 3 -> trunk

would give us all the new stuff. Difficult to estimate how risky that
is, i.e. how stable the trunk is and what effort is needed to fix
those little bugs in trunk. Once we start with trunk, we won't integrate newer code from trunk as those changes contain both bugfixes and new functionality (bugfixes are great, new functionality not as one needs a stable base to start custom development -> that way we're back with option 1 in a few years :) ).



One thing you also need to consider is that not having releases has some subtle consequences. Everyone who checks out from trunk has his personal "release". Once you find bugs, you fix them locally but to give back such fixes becomes more and more difficult -> you need to check out the trunk, recreate the problem, apply the fix, submit a patch. As every user has his own "release" (snapshot of time x), working together becomes difficult (e.g. there is no usergroup using SVN 718108 that has similar problems that can help or other users that we can help).


Suggestion:

- Framework: Periodical Release (e.g. every 2 years), as the framework part is stable and mature and it should be possible to get the functionality defined

- Applications: Is more a strategic decision as it defines more how OFBiz is used, i.e. more out-of-the Box or as a base for other products. There is lot of work involved to get releases done, i.e. release management, define functionality for a release, get concensus on new features, upgrade paths, documentation. But it would clearly help to promote OFBiz. Difficult question that remains is how often to release: release often to get new features in vs. release sparsely as OFBiz drives your business.

Markus


Reply via email to