Jeremias Maerki wrote:
Joerg,

I'm glad you volunteer to do any changes. But there's also something
else. We had a vote in March about merging back the "API Finalization"
branch back into Trunk. You voted +1 back then knowing the the branch
had the word "Finalization" in it. Furthermore, we've already
communicated with 0.92beta that "the API is now considered stable" [1].
So, if the committership feels we should take another round of API
improvements, I won't block (your suggestions are all reasonable) but I
won't take the lead here. Either you or someone else has to take the
lead and push for it (consensus gathering, changes, documentation,
communication...).
As one who took the time to write up some messy reflection code to allow my simplistic use of FOP to work with both 0.20.5 and 0.92beta based on the term "API finalization", I would like to see the API actually finalize. For that matter, it would have been nice to keep 0.20.5 compatibility APIs around for very simple usages like mine (I was just doing new Driver(), setOutputStream(), setRenderer(), and getContentHandler() -- that's it, nothing fancy). Having to create reflection code to span these 2 versions is a pain and having to keep changing the reflection code as someone keeps changing the API is rather annoying -- especially since missing an API change will result in a runtime error later on down the line.

I'm not saying, "no, absolutely don't change the API". I am saying if you really feel you must do it once more and never again -- and loudly proclaim the mistake and *exactly* what you changed between 0.92beta and the final API so I don't have to hunt around. [I can't just recompile, of course, as my code is all using reflection as I have to support 0.20.5 until something 0.9x or later is actually officially marked as stable -- and for a bit thereafter for other 0.20.5 usages to be altered to be 0.9x API compliant.]

--
Jess Holle

Reply via email to