Doug Bateman wrote:
> Howdy all,
> 
> Tonight while browsing through the latest commons projects, it
> occurred to me the once modest commons project has grown substantially
> over time and has a lot of great stuff.  There are now lots of sub
> projects.  Actually, it's 37 active subprojects to be exact.  Plus the
> archived projects.  And the release numbering, JRE requirements, and
> dependency graph can get a bit confusing.  (Took me several hours to
> map it out.)

Thanks! Very interesting.
> 
> So I started thinking about what really makes it important to separate 
> projects:
> + Different large external dependencies you wish to keep separate.

As you and others have pointed out, we really don't have these and
for the last several years we have been pushing hard to minimize
dependencies even among the commons components.

> + Projects that aren't related.
> + Projects that have very different user communities (e.g.
> commons-math versus commons-dbcp).

A little humorous for me personally, as I cut the last releases of
each of the two above ;)

One of the things that makes Commons work is that there are quite a
few of us who contribute to multiple components.  Sometimes that
contribution is to the main development, sometimes it is to things
like cleaning up javadoc, checkstyle/findbugs, site maintenance or
help with cutting releases. What is "related" about all of the
commons components is that they all live here and all get the
benefit of some level of attention from the commons community. We
have talked several times in the past about breaking commons up via
different schemes and each time we come back to this central benefit
of "the commons" and decide to keep it as one project.  We could of
course change our minds about that, which is why we appreciate your
suggestion to take stock of where we are.

> 
> And on the flip side, the benefits that come from having one artifact
> and one release number to track, instead of a whole heap of release
> numbers and dependencies to manage.

As others have pointed out, this cuts both ways.  Years ago, we had
a "combo-jar" release that turned out to be too difficult to
maintain and of limited value to users, so it was dropped.  As Hen
pointed out, most feedback we have gotten is that users like smaller
jars with fewer dependencies and good backward compatibility.  As
Torsten pointed out, the difficulty managing "multi-releases" is
also not to be underestimated. IMO we do not do as good a job as we
should releasing often and early in Commons and I would be hesitant
to make a change that made that situation worse.

At the end of the day, I am in the same place as Torsten on this -
what exactly do we expect to gain by "consolidation?"  If it is to
make it easier for users to grab what they need in "bundles" that
are sure to work together, I guess that could be a benefit for some
users, but I would not want to break up the community to accomplish
that.  I would also worry about the mechanics of maintaining all of
the bundled distros and the havoc that it would wreak on the
established user base of the current, more granular, components.  As
a user, I would want to stick with the granular components.

One slightly OT point raised one of Ralph's comments.  The
"committer lists" in the POMs for our components (so on the web
pages) are woefully out of date.  This is because we have
traditionally added ourselves to components lists as we start to
work on them, but we rarely if ever remove ourselves and we never
remove people who have left.  The same problem exists wrt @author
tags that still litter the codebase, most from former Commons
committers who are no longer active.  Should we clean these up?  We
could use svn history for the committer lists - say, no commits in
the last year and you get removed, but you are welcome to add
yourself back with your first new commit?  Should we uniformly
remove @authors?

Phil



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to