[Seaside] catching up (part I)

Avi Bryant avi.bryant at gmail.com
Wed Aug 24 00:30:43 CEST 2005

Hi all,

As promised last week, I've started to attack the backlog of  
contributions that have come in over the last month or so.  The first  
thing I've done is to post a Seaside2.6a2-avi.1 version to  
SqueakSource, which includes a number of small fixes and  
enhancements.  They are:

- Fix Color>>hex (lr)
- Refactor the ValidationDecoration to look for a specific  
notification (cds)
- Fix anchorWithPopupUrl:extent:do: (lr and mjr)
- Add extra classes to input elements with their type (lr)
- Reseed the random number generator used for IDs on image startup (al)
- #labelAfter:input: (dc)
- #urlForAction:andPath: (lr)
- change values from WAInspector (pmm)
- add year nav to MiniCalendar (al)
- add a large #hash value to StateHolder (lr)
- ensure that URL paths start with a / (lr)
- Fix validation of DateSelector
- Notify entry points when they're removed from the Dispatcher
- Unregister all sessions when clearing the Registry

Some of these have less obvious motivations than others; the  
reseeding of the random number generator, for example, is necessary  
when running multiple copies of the same image in a load balanced  
setup so that they don't end up using the same sequence of IDs for  
sessions and static resources.  The #hash addition to StateHolder is  
a performance optimization that works around problems with large  
identity dictionaries in Squeak.  If anyone wants more detail on the  
others, let me know.

The large group of contributions I haven't yet addressed is that  
dealing with XmlHttpRequest.  Frankly, I'm a bit overwhelmed by all  
of the changes, many of them conflicting, that have come in for that  
code.  I also feel that it's likely to keep changing at a high rate -  
certainly higher than most of the rest of the framework.  To help us  
manage that, I propose splitting it into a separate package, and I've  
done that for 2.6a2.  All of the "liveRequest" code is now in a  
SeasideAsync package, kept in the same repository.  I would very much  
appreciate it if anyone with changes or extensions to that code -  
whether or not they were previously published in the Seaside package  
- would, at the least, commit corresponding new versions of  
SeasideAsync, so that we can do some focused merging and discussion.

The third thing I plan to do is to look over the major external  
packages related to Seaside for overrides and extensions that might  
be better rolled into the main release.  The packages I plan to look  
at are:

- SeasideTesting
- Magritte
- ShoreComponents
- Bicephale

If there are others you want to call my attention to, please do.


More information about the Seaside mailing list