[squeak-dev] Re: Bug in object finalization?

Keith Hodges keith_hodges at yahoo.co.uk
Wed Jun 18 23:57:40 UTC 2008


Michael Rueger wrote:
> But, while we are on it:
> what could we do to make it easier -meaning not imposing even more
> stress/work on top of release stress etc- for the different "forks"
> (Croquet, Sophie, Pharo, Seaside, etc) to make fixes
> available/accessible?
> The semaphore fixes back then got me thinking about this, but I'm
> still not sure what a solution would be.
>   
There are several ideas in the pipeline and several options therein.

1. DeltaStreams - A better change-set that is revertable and knows more 
of the context of the fixes. It can conditionally apply fixes if the 
code it is changing is as expected.

2. Installer mantis fixBug: 1234.

Installer can install individual fixes as defined by a small script on 
mantis. So if you are preparing an image that needs something particular 
then this is very useful.

3. Installer/LevelPlayingField - has slots for loading fixes into older 
images.

The main aim of this is to free up Monticello from having to be 
backwards and forwards compatible with every possible image version. 
LevelPlayingField takes responsibility for the differences between 
squeaks/forks and  possibly even spoons.

4a.  Installer install: 'MinorFixes'.

A published list of MinorFixes on http://installer.pbwiki.com/MinorFixes 
can have a different list for each squeak/fork version. (Better 
implementation is Sake/Tasks - see below)

4b.  Installer install: 'YourPackage' - As above but under a different 
name.  If you place your own custom installer script on 
installer.pbwiki.com then you can publish a different version of that 
script for each squeak/fork version. These different scripts can install 
fixes where needed. e.g. We could have a script - Installer install: 
'FixesForServers'.
(Better implementation is Sake/Packages - see below)

5. Sake/Packages.

Sake/Packages is an alternative to Universes, there are package 
definitions for each version of squeak. These package definitions can 
also call up fixes from mantis if required. You can load all of the 
package definitions for all squeak versions into your image. ( Installer 
install: 'PackagesAllVersions' ) This allows you to do what you suggest:

> Basically one would need to be able to easily see changes across a
> variety of repository and image versions. A central source database
> maybe?
>
> Michael
6. Sake/Tasks.

A published set of tasks for each version of squeak. A task can have 
prerequisites and conditions, and can also apply fixes and document the 
fixes that are/have been applied.

7. Source Code Database

Currently in development, was tabled for inclusion in 3.10

8. Spoon's Source Management

Another uber-database

between these options we should be able to manage something

Keith










More information about the Squeak-dev mailing list