We cannot release the flow without being confident about its contracts.
And it has been decided to ship the flow with Cocoon 2.1.
So, in order to release, we have to finish polishing the flow.
Things to do are:
1) cleaning up the proper hooks between the flow and the cocoon internal. This means adding a flow native object to the Object Model so that all cocoon components can have access to it directly (this will remove the need for two different velocity generators)
Vadim and Sylvain identified a clean solution for this, can you guys please refresh those concepts?
2) polishing the FOM.
- o -
Here is what I would like to see:
1) no functions without an object namespace. This is to imply that all non-prefixed functions belong to the flow. Provides coherent cognitive context.
2) no function duplication. There is only one function that does something. [of course, javascript allows you to change those function names with your flow, but that's up to the user and doesn't influence our contracts[
3) the following objects:
flow cocoon continuation log
4) the following functions
Flow Object: flow.import() -> imports another flowscript
Cocoon Object: cocoon.sendPage(uri, dict) -> sends a pipeline to the client
cocoon.sendPageAndWait(uri, dict) -> sends a pipeline to the client and save the continuation.
cocoon.process(uri, dict, output