Here's a summary of some of the recent issues with the Flow for discussion:

1) Storing the flow context object and continuation in environment attributes:

http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=104673257019781&w=2

This seems easy to fix. But I personally don't understand the "objectModel". Can someone explain how to properly use it? But I think there is a more fundamental design question here: namely, how should the flow script communicate with generators, transformers, etc?

2) Concerns with exposing the componentManager:

   http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=104687345726726&w=2
   http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=104687863701233&w=2

I personally do not know what the proper solution here is. Can someone explain the proper use of component managers and make a suggestion on how to solve this?

3) Duplication of functionality between VelocityGenerator and FlowVelocityGenerator:

http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=104673257019781&w=2

This is clearly bad, I agree. I think these could be merged back together - the old behavior would apply if the flow context object isn't available. But this probably depends somewhat on the answer to (1).

4) JavaScript Database API has no business being in the flow

We all agree on this. But we need someplace to put useful JavaScript stuff - as part of optional "blocks" or something like that.


In my own use of the flow, I've also noticed the following bugs:


- Script reloading is partially broken. Sometimes scripts don't reload properly. This is normal when you are in a continuation - the continuation contains a compiled copy of the script and doesn't see the new reloaded one. But it happens occasionally even in top level calls.
- With certain Exceptions the script file names and line numbers are not reported
- Cocoon.load() doesn't work


I also noticed that it isn't fun to debug Velocity templates. If the generated xml has errors, the XML parser reports the line number of the generated xml document, which isn't preserved anywhere. In that case it would be nice if the Velocity generator saved the generated xml document somewhere, or at least logged it.



Thoughts?

Regards,

Chris



Reply via email to