Dictionary backtracking compatibility in Squeak 4.1

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Dictionary backtracking compatibility in Squeak 4.1

Andreas.Raab
Hi -

We're in the process of finishing up Squeak 4.1 and it looks as if all
Seaside tests are green except WABacktrackingTest>>testDictionary. The
issue is already reported at
http://code.google.com/p/seaside/issues/detail?id=548 and marked
critical but hasn't been addressed yet.

Since I'd like to see the issue addressed before 4.1 goes out, I'm
asking about advice on how to resolve it best. The options that I see:

1. Implement #snapshotCopy and #restoreFromSnapshot: in Dictionary in
the Grease-Pharo-Core package. To me, this is the best way to fix the
issue because it seems likely that Pharo will follow suit with
HashedCollection which will require Seaside to provide this
compatibility implementation anyway. Implementing this now is simply an
anticipation of this situation at virtually no extra cost.

2. Provide implementations of #snaphotCopy and #restoreFromSnapshot:
directly in Squeak. Since neither method has any external references
that is a straightforward fix to the problem for the time being. It's a
little less desirable than the first option since it the method could
conceivably change without us updating it (although that seems unlikely;
it appears that the API is fairly stable).

3. Provide an extra Seaside-Squeak integration package. This is
obviously the most work and currently not very desirable since we have
no provisions to offer people a simple download like on
builder.seaside.st. Plus, it seems a bit overkill to have to provide and
maintain a separate package for such a small issue.

Any advice on how to best address the issue is appreciated.

Cheers,
   - Andreas
_______________________________________________
seaside-dev mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
Reply | Threaded
Open this post in threaded view
|

Re: Dictionary backtracking compatibility in Squeak 4.1

Lukas Renggli
> Since I'd like to see the issue addressed before 4.1 goes out, I'm asking
> about advice on how to resolve it best. The options that I see:
>
> 1. Implement #snapshotCopy and #restoreFromSnapshot: in Dictionary in the
> Grease-Pharo-Core package. To me, this is the best way to fix the issue
> because it seems likely that Pharo will follow suit with HashedCollection
> which will require Seaside to provide this compatibility implementation
> anyway. Implementing this now is simply an anticipation of this situation at
> virtually no extra cost.

I've copied the snapshot code from Set to Dictionary in
Grease-Pharo-Core. I think this is the cleanest solution and will
avoid compatibility problems not only with Squeak, but also if Pharo
introduces the HashedCollection:

Name: Seaside-Pharo-Core-lr.6
Author: lr
Time: 31 March 2010, 8:20:18 am
UUID: 7c64361d-8194-4883-94b7-740fcd54d8e0
Ancestors: Seaside-Pharo-Core-lr.5

- duplicate the snapshot code from Set into Dictionary (in Squeak
Dictionary is not a subclass of Set)

Thanks for raising the issue.

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
seaside-dev mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
Reply | Threaded
Open this post in threaded view
|

Re: Dictionary backtracking compatibility in Squeak 4.1

Andreas.Raab
Thanks a lot for the quick help. It's greatly appreciated.

Cheers,
   - Andreas

On 3/30/2010 11:23 PM, Lukas Renggli wrote:

>> Since I'd like to see the issue addressed before 4.1 goes out, I'm asking
>> about advice on how to resolve it best. The options that I see:
>>
>> 1. Implement #snapshotCopy and #restoreFromSnapshot: in Dictionary in the
>> Grease-Pharo-Core package. To me, this is the best way to fix the issue
>> because it seems likely that Pharo will follow suit with HashedCollection
>> which will require Seaside to provide this compatibility implementation
>> anyway. Implementing this now is simply an anticipation of this situation at
>> virtually no extra cost.
>
> I've copied the snapshot code from Set to Dictionary in
> Grease-Pharo-Core. I think this is the cleanest solution and will
> avoid compatibility problems not only with Squeak, but also if Pharo
> introduces the HashedCollection:
>
> Name: Seaside-Pharo-Core-lr.6
> Author: lr
> Time: 31 March 2010, 8:20:18 am
> UUID: 7c64361d-8194-4883-94b7-740fcd54d8e0
> Ancestors: Seaside-Pharo-Core-lr.5
>
> - duplicate the snapshot code from Set into Dictionary (in Squeak
> Dictionary is not a subclass of Set)
>
> Thanks for raising the issue.
>
> Lukas
>
_______________________________________________
seaside-dev mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev