I'm considering the best approach to migrating an image and application which are at 3.6. I thought it would be useful to review relevant changesets, especially the pre and post code that handles migration (I guess such code could also be embedded in doIt's).
I am not having much luck. I'd like a "see all changesets with class X" (or see all entries relating to the class), but the closest I've found to that is to find a method in the class, browser versions, and go to the changeset. (I think I used those other, desired, functions in VisualWorks. Maybe squeak doesn't have them.).
The problem is that in some cases there is no changeset. For example, between 3.6 and 3.7 ScrollPane acquired horizontal scrollbars. But even using a 3.7 image and looking at methods involving them (#hMargin) it tells me it can't find a change set.
Earlier postings on the list indicated that sometimes the changesets are dropped, but this is a change that's very recent, relative to 3.7 (i.e., it first appeared in 3.7).
Narrowly, I'd appreciate any help tracking down the changeset(s).
More broadly, I'd appreciate any advice on migration. I'm in a particular bind because of the introduction of DateTime in 3.7, which required lots of instance mutations, renaming, etc. I have already introduced those changes into my image--but in slightly different form (I created new classes with names like DTDate to avoid messing with the standard ones. In contrast, the official change stream does mess with them).
Thanks. Ross Boylan
On Friday, April 29, 2005, at 07:53 PM, Ross Boylan wrote:
I'm considering the best approach to migrating an image and application which are at 3.6. I thought it would be useful to review relevant changesets, especially the pre and post code that handles migration (I guess such code could also be embedded in doIt's).
I am not having much luck. I'd like a "see all changesets with class X" (or see all entries relating to the class), but the closest I've found to that is to find a method in the class, browser versions, and go to the changeset. (I think I used those other, desired, functions in VisualWorks. Maybe squeak doesn't have them.).
The problem is that in some cases there is no changeset. For example, between 3.6 and 3.7 ScrollPane acquired horizontal scrollbars. But even using a 3.7 image and looking at methods involving them (#hMargin) it tells me it can't find a change set.
Earlier postings on the list indicated that sometimes the changesets are dropped, but this is a change that's very recent, relative to 3.7 (i.e., it first appeared in 3.7).
Yes, that's the problem... the 3.7 final release has all of the intermediate changesets removed (even the 3.7alpha-beta changesets), that's why you won't find the changeset. If you open a changesorter, you'll see there are very few numbered (update-) changesets, where there should be at least a few hundred or so between 3.6 and 3.7.
You'll want to get an image which has these changesets available. You could start with 3.6 and update to 3.7 to get them. Or, get one of the images from the images_with_all_changes dir on the ftp site, which has all changesets going back to 3.0. (More than you need, but it should work.) Hm, I see the latest image in there is 3.7a... we should put a more recent one in there.
(Anyway, I have a 3.7gamma image lying around on my hard drive, and I just looked up the changeset for ScrollPane>>#hMargin and it is in 5861addHorzScrollbar37v4-sps.)
- Doug
On Sun, May 01, 2005 at 01:43:31AM -0400, Doug Way wrote:
On Friday, April 29, 2005, at 07:53 PM, Ross Boylan wrote:
I'm considering the best approach to migrating an image and application which are at 3.6. I thought it would be useful to review relevant changesets, especially the pre and post code that handles migration (I guess such code could also be embedded in doIt's).
I am not having much luck. I'd like a "see all changesets with class X" (or see all entries relating to the class), but the closest I've found to that is to find a method in the class, browser versions, and go to the changeset. (I think I used those other, desired, functions in VisualWorks. Maybe squeak doesn't have them.).
I just found two helpful pages on the swiki about how to do these kinds of operations: http://minnow.cc.gatech.edu/squeak/3205 http://minnow.cc.gatech.edu/squeak/3020 (My recollection was of being able to do this kind of stuff from the GUI).
The problem is that in some cases there is no changeset.
[snip]
You'll want to get an image which has these changesets available. You could start with 3.6 and update to 3.7 to get them. Or, get one of the images from the images_with_all_changes dir on the ftp site, which has all changesets going back to 3.0. (More than you need, but it should work.) Hm, I see the latest image in there is 3.7a... we should put a more recent one in there.
Thanks for the tip. I noticed one thing that seemed a little funny: the package for 3.7a is *smaller* than that for 3.6a. Did the image get smaller, or is something amiss?
(Anyway, I have a 3.7gamma image lying around on my hard drive, and I just looked up the changeset for ScrollPane>>#hMargin and it is in 5861addHorzScrollbar37v4-sps.)
- Doug
Ross
squeak-dev@lists.squeakfoundation.org