[Seaside] 2.5b3 for VW is ready
mbany at cincom.com
Mon Sep 13 15:07:59 CEST 2004
> Just for curiosity, how do you do move the code from squeak
> to vw? Using rosetta or similar tool?
I am using a Squeak tool from Avi Bryant named 'PackageInfo'
available from SqueakMap plus some extensions named 'PackageInfo-Exporters'
also from Avi Bryant that I got his web site
I am not sure that I am using the latest versions of this packages,
but for now it works fine.
Having these two bits loaded in Squeak 3.7, I also load the
Seaside package that I want to port (taken from
Then I evaluate this in a Squeak workspace
This create a file named 'SeasideVW5.st' that can be filed-in into VW.
However before filing-in the 'SeasideVW5.st' file, VW needs to be prepared
so that it looks like Squeak to Seaside. This preparation of VW is done
by the bundle named 'Seaside-VW' available in the public Store repository.
The 'Seaside-VW' bundle contains many Squeak classes/methods that are not
available in VW and also includes the complete Squeak-Chronology subsystem
that I also ported to VW using the PackageInfo-Exporters.
The 'Seaside-VW' bundle also includes the SeasidePlatformSupport class
that is designed to supply platform specifics to Seaside.
I added to this class some tools (category port) to automate/document
the port process and some other (category deploy) to automate the
creation of the Seaside VW parcels for the Cincom distribution CD.
Once VW is prepared with 'Seaside-VW', I file-in the 'SeasideVW5.st' file
into VW. This creates a bundle named 'Seaside' made of many packages named
'Seaside-something' (these names are controlled by the contents of the
Sometimes I needed to re-order the packages in the bundle. Then I update
method #portSource on the class side of SeasidePlatformSupport to precisely
document the origin of the port.
The last step consists in hooking Seaside to the web server environment. For
I have two bundles : Seaside-WebToolkit and Seaside-Swazoo. Both are stored
the public repository. These two bundles contain typically three types of
software : (1) the glue between Seaside and the web server, (2) patches to
that did not yet make it into Avi's packages and (3) patches to the web
Finally, I publish four bundles to the public repository :
- Seaside-VW (this bundle prepares VW and makes it look
- Seaside (this bundle contains the original
Seaside code, untouched)
- Seaside-WebToolkit (this contains the hooks to WebToolkit and
- Seaside-Swazoo (this contains the hooks to Swazoo
All with a common version number, for instance 2.5b3.6.0, derived from the
original Seaside file name, for instance Seaside2.5b3-avi.6.mcz
The correct sequence for loading these bundles is
3. Seaside-WebToolkit (or Seaside-Swazoo, or both)
making sure you load bundles that have a similar version number.
To make things simpler (or is it more complicated ?) I also created recently
two new bundles SeasideForWebToolkit and SeasideForSwazoo. These bundles
simply execute a script that load the correct bundles in the correct order
with just one click.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Seaside