Pier Fumagalli wrote:

"Old" blocks can (IMVHO) work just fine in the new container, "New" blocks will work a bazillion times better! :-P

Pier hits the nail on the head here: Cocoon's use of Avalon grew over years and years, like a tectonic plate that while solid in a particular time frame, over time morphs into thick and revolving crusts.

This doesn't mean that it doesn't work. It does, in fact. But Avalon's generality and the aim to solve more problems in one shot ended up harming us, so much so that Cocoon's code is more complex than it needs to be.

Moreover, because of the way components are loaded, used and released and how roles are established, there is simply no way we can have hot deployable dynamic polimorphism.

What does this mean for you?

Well, it's rather simple: old code will work in an avalon sandbox. It basically means that it will see cocoon *exactly* as it used to be before.

But this will also mean that will be isolated from other blocks and will not be able, for example, to load components from other blocks.

so, here is a picture

 +-------------+   +----------------+
 | Cocoon Core |---| Avalon Sandbox |
 +-------------+   | +------------+ |
       |           | |  old code  | |
       |           | +------------+ |
       |           +----------------+
       |
       |          +------------+    +-----------+
       +----------| new code   |====| new block |
                  +------------+    +-----------+


So, the question I hear emerging is: why should I migrate my code to the new core?

The answer will come up shortly.

--
Stefano.


Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to