Jeremias Maerki wrote:

> Anyway, I've added some basic functionality or API tests some time ago.
> These are called during build IF JUnit is installed in your Ant
> installation. Just copying junit.jar into Ant's lib directory should do
> it. The build will then check if the high-level APIs for Driver and the
> Transcoders work. They don't check what is generated, only if something
> is generated and without exceptions. I'd appreciate if all committers
> made the basic JUnit tests work in their environments.

OK. I'll work on that. Sorry I missed it earlier. Also, I just added some
doc for this.

> > WRT API dependencies, we need to either document them or delegate the
> > management of them to someone who knows them.
>
> Sorry but I don't exactly get what you're targeting here.

I was talking about the Cocoon dependency that you mentioned in your
original posting. If we have contractual commitments to third parties that
need to be honored, we need to write them down and make them public.

> > Please let me know if I need to fix something here. I seem to
> be hopelessly
> > lost WRT where we are going with API issues, but as long as they don't
> > prevent us from cleaning up FOP's underlying design, I'll be
> glad to help
> > any way I can.
>
> I'm a bit lost, too. We had lots of discussion but I think there was no
> real consensus. I still want to put my API proposal to action one day,
> but probably outside FOP at the beginning. I simply have too little time
> and too many ideas and tasks on my personal todo list. I think we simply
> need to make sure not to produce unnecessary obstacles for potential
> patch-makers. That's why I advocate a stable API and API deprecation
> instead of API modification and it's why I wrote those basic JUnit tests.

FWIW, most of the things that I needed have now been done through the
addition of the Document class. (In other words, I think I can exit out of
the API debate -- I think you have probably seen comments that I left in the
code about API issues, specifically about addressing Document and
LayoutStrategy). A bunch of that code (Driver and Document) seems really
ugly and overly complicated, but I did it that way to try to keep from
breaking the current API. Also, there are things in Driver that belong in
Document and vice versa. If the JUnit tests that you mentioned are a
comprehensive way of assuring that the API is not broken, then I can take a
much more aggressive view of the whole thing, and perhaps get some things
cleaned up without feeling like I need to walk on eggshells. I'll make this
a priority.

Victor Mote

Reply via email to