New SqueakMap on the air... and we got problems Houston!

goran at krampe.se goran at krampe.se
Wed Apr 5 11:32:59 UTC 2006


Hi!

Andreas Raab <andreas.raab at gmx.de> wrote:
> goran at krampe.se wrote:
> > Now... what do you *mean* with "being able to read *new* versions of the
> > map into *old* versions of the code"?
> 
> It simply means that older versions of the client are capable of dealing 
> with newer data sets coming from the server, so that the clients don't 
> need to be updated in sync with the server. There are many good reasons 
> for this; the most important one being that people like to be able to 
> decide when they want to upgrade instead of being forced to.

Well, I for one don't want to have multiple versions of SM running out
there trying to make sense of the model coming from the latest version
running on the server. It sounds way too risky for my taste.

> > IMHO that is... not possible. :) Unless we are talking of simple
> > behavior changes and no structural changes and that those behavioral
> > changes "aren't important".
> 
> Oh, it's perfectly possible. All it means is that the server sends 
> enough information so that older clients know how to make sense of it 
> (within reason; unsupported features are still unsupported features) and 
> that the clients *expect* to see information that they don't know how to 
> make sense of (e.g., they need to be designed to be robust in the face 
> of future changes). There is nothing magical about it.

Ok, I understand what you mean - but I still don't like the effects. If
we move towards an XML format (which I now really intend to do unless
someone comes up with a brilliant alternative) then yes, we would at
least have a sporting chance of making the client side "work" with a map
coming from a newer server but... it would also mean that different
images will behave differently. And it could mean that bugs will pop up
like "oh, right, darn, didn't think of that - it works in SM 2.31 and
2.33+ but you are right, it would barf in 2.32".

Sure, I can make the code do a "hey, this tag is odd - lets skip
it"-kinda thing, but I still will reserve the "right" for the client to
say - "nope, sorry, this model is too new for me, at leat the author
thinks so - press yes to go ahead, and have fun in the debugger when SM
trashes your image". :)

> Cheers,
>    - Andreas

regards, Göran



More information about the Squeak-dev mailing list