Please NO !!!

We're now finding it very difficult to use a lot of Jakarta projects,
because of "dependency hell"... it's becoming worse than Microsoft's famous
"DLL hell" problem.  The more self-contained you can keep an API, the better
; yes, there are issues concerning code re-use, but at present, we're having
great difficulty using more than one Jakarta project at a time in our
projects.

If you only use one Jakarta project at a time, you're generally ok.

If you try to use more than one Jakarta project at the same time within your
own projects, you have to hope that no such library relies upon any other
commons component, because chances are that they won't be expecting the same
version of each library (they don't always include the latest version of
each "basic" API, and each "main" Jakarta API has a different release
cycle).  Commons-logging is generally included as standard.  If each version
of an API was always backwards-compatible, maybe that'd work, but that's not
always pratical, realistic, or efficient.

Or start hacking around with classloaders... and this too becomes a futile
exercise when you start deploying things on some versions of Tomcat (for
example) that "helpfully" expose common functionality, using perhaps
incompatible versions of APIs (usually from commons) that are obsolete (or
more recent than) the versions of these APIs required by some other
"empirical" Jakarta library.

Some of the recent commons components, such as commons-sql, have a
ridiculous number of dependencies.

One other observation about Commons projects (and Jakarta/Apache in general)
; although code re-use seems like a good idea, I'm now seeing several
different projects that aim to do more or less the same thing, such as :

 - ant and maven
 - torque and commons-sql
 - oro and regexp
 - tapestry, turbine, etc.

Furthermore, if there's Log4J, why not just use it, instead of the
Commons-Logging layer?  If a project goes JDK1.4+ -only after, then migrate
to java.util.logging ?

On a personal note, I'm hoping that commons-net, which used to just work
"as-is", doesn't start depending on lots of different API versions...

I know this is the HttpClient list, and not some general Jakarta list, but I
sincerely hope that one of the few remaining Jakarta projects that doesn't
depend on many others doesn't go down the same dependency nightmare route as
many of the others, so I wanted to illustrate *why* (as a user) I feel this
way...

- Chris

----- Original Message ----- 
From: "Sung-Gu" <[EMAIL PROTECTED]>
To: "Jakarta Commons Developers List" <[EMAIL PROTECTED]>;
"Commons HttpClient Project" <[EMAIL PROTECTED]>
Sent: Wednesday, June 25, 2003 7:09 AM
Subject: [SURVEY] Commons-URI or not?


>
> Hi all,
>
> I suggest that jakarta-commons provides flexible URI issue implementations
> as a package.
>
> Various applications using URI concept comes in the internet world.   and
> they need common mechanisms and algorithms for URI.
>
> For example, all internet programs will need fundamental functionalites of
> URI like extensible parsing and manipulation container for URL reference,
> URN and URC,  escape codec mechanism, charset tranformation functionality,
> URI transformation from real world identities or URN, or other
> transformations related to DNS or telephony...   If it would be prepared
> commonly in Jakarta, we can save development powers.   So I suggest new
> commons-uri package.
>
> FYI, currently the commons-httpclient is using it.
>
> Any comments?
> Or any +1, -1?
>
> Sung-Gu
>
> P.S.: If the requirement is very weak, I want  to put the new package into
> commons-sandbox even for a long while in my opinion...
>
>
>


----------------------------------------------------------------------------
----


> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
[EMAIL PROTECTED]
> For additional commands, e-mail:
[EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to