----- "Lukas Renggli" <renggli(a)gmail.com> wrote:
|
| > I ask, because I have had to make GemStone-specific changes to some
| of the packages, so it's not quite as easy as just loading the newer
| versions of the packages...
|
| What are these issues? If possible I would like to make this easier.
| Especially if Pier moves towards Seaside 2.9, I would like to package
| all platform dependent code separately.
The list isn't real big (i'd have to do a diff to get the little changes), but the
main change that I'm thinking/worried about is actually a Magritte issue that
overflows into Pier.
GemStone can't migrate an object that is on the stack (as a receiver), this means that
the normal Magritte mechanism for creating variables doesn't work in
GemStone...callers of readUsing: ... the solution for GemStone is to flip the logic:
if an 'object readUsing: aDescription' fails with an ErrCantBecomeSelfOnStack
error, because object is a receiver on the stack, I retry doing 'aDescription accessor
read: object'...object isn't on the stack so the migrate succeeds ...
unfortunately there are a number of places where I have to insert GemStone-specific code
... in Magritte and Pier ... doing anything else would have been even more intrusive and
probably broken a ton of code to boot...
Offhand there are probably only 20 methods affected but they are sprinkled around the
system...
Dale
Show replies by date