Update stream ideas for 3.8 (was Re: Squeak 3.8 status)

Avi Bryant avi at beta4.com
Tue Aug 10 07:49:12 UTC 2004


On Aug 10, 2004, at 12:27 AM, Andreas Raab wrote:

> If MC could be made to support this information I'd actually consider 
> this a *major* argument in
> favour of it.

It could be made to, and that's definitely part of the plan... but 
it'll take some work.  I see this feature as part of the following 
progression, although there are certainly other ways it could be done:

1. Make the local "cache" repository more central, by having all 
versions explicitly saved to and loaded from it.  External repositories 
would be treated as sources and sinks for the versions in this cache - 
they feed into it (for example, by having periodic downloads of new 
versions from repositories into the cache), and are populated from it 
(select a version in the cache and press "Publish").  But when you're 
browsing, saving, and loading versions, you're doing this from the 
cache.

2. Maintain in-image indices into this master cache.  These should 
index both data (eg, which methods exist in or were changed by which 
versions) and metadata (eg, the total ancestry graph for a package), 
and need to be rebuilt or updated whenever version files are added to 
or removed from the cache.  Since the version file format is under our 
control, and the versions in the cache are known to be local files, we 
can do a much better job with this then we could with an arbitrary 
external repository.

3. Start to do interesting things with these indices, like displaying 
branch status ("4 descendants, 1 requiring merge"), or building version 
browsers for individual methods.

Avi




More information about the Squeak-dev mailing list