[squeak-dev] [Cuis] Cuis

Josh Gargus josh at schwa.ca
Mon Jan 25 07:35:16 UTC 2010


On Jan 24, 2010, at 4:44 AM, keith wrote:

>> What I really would like is to hear about REAL compatibility problem
>> and not supposed compatibility problems.
> 
> The real compatibility problem is this.
> 
> I am working in a 3.10 based image NOW.
> 
> I wont have the opportunity to move my code base and find out what the compatibility problems are until 3.11 is released in 6 months time.


I don't understand why this is true.  In another post you've described the comprehensive build/test framework that you currently use, and I observed that I cant see any reason why you can't run it against the bi-monthly trunk image releases (or for that matter, against nightly trunk images that you automatically update).


> 
> In that 6 months I will have generated a considerable amount of code, that may be incompatible with 3.11 but I wont have known it. I will also have been saving my packages to squeaksource, but I will not know that these packages are not useful to 3.11 users. All the 3.11 users will load my packages and will either complain or write my code off as "it never works", and I will never find out.
> 
> So, when I finally move my working image to 3.11, all my deployed production images are still in 3.10. So now I have to maintain 2 code bases of my packages. However if I could load a couple of patches into 3.10 that make them API equivalent, I wouldnt have to. Ok to do this I have to manually reverse-engineer the whole of the 3.11 effort. In short it is too difficult to contemplate, because non of the 3.11 effort was done with the expectation that it would need to be re-engineered.
> 
> This is what happened in the case of ifNotNil: ifNotNilDo: merger.


I'm not sure what you're referring to.  The old method still exists, so no packages that you load can break from it.  What am I missing? 

You were probably just unaware that #ifNotNilDo: still existed.  Let's imagine for a moment that Nicholas was overzealous and removed it.  If you were to run your automated tests against the latest trunk image, a lot of code would presumably break.  You'd look at the failure logs, maybe curse (studies show it makes you feel better!), and fire off a civil email to the list. By the next day, #ifNotNilDo: would exist again.  Problem solved.

Cheers,
Josh


More information about the Squeak-dev mailing list