Recovering code from changeset ?
tim Rowledge
tim at rowledge.org
Sat Aug 4 16:29:25 UTC 2007
On 4-Aug-07, at 8:30 AM, Jason Johnson wrote:
> Why does it need "rename" specifically? If change sets reliably
> show every class creation, update and deletion then applying a
> change set with a class rename will still work. You just wont be
> able to see as clearly that it was a rename ( i.e. rename is just
> delete one thing then add a new thing that is exactly the same but
> with a new name).
Unfortunately not. When renaming a class it is not deleted and
recreated; it is simply renamed. As an illustration, I edited method,
changed the name of the class and re-edited the same method; the
below is what went into the changeslog.
/Users/tim/Documents/Squeak/TPR-Squeak3.8.1-6747.image!
!ClassBuilderFormatTests methodsFor: 'utilities' stamp: 'tpr 8/4/2007
09:20' prior: 34639308!
makeNormalSubclassOf: aClass
"testing class rename logging"
subClass := aClass subclass: self subClassName
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'Kernel-Tests-ClassBuilder'! !
!ClassBuilderFormatTestsRenamed methodsFor: 'utilities' stamp: 'tpr
8/4/2007 09:20' prior: 45481544!
makeNormalSubclassOf: aClass
"testing class rename logging again"
subClass := aClass subclass: self subClassName
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'Kernel-Tests-ClassBuilder'! !
No mention of renaming. If you tried to recover from this log you
would have problems. In fact in the image I used for that experiment
the worst possible thing happens - nothing! No error is raised,
nothing appears in the transcript...
I'm puzzled by having this memory of such things being logged though.
Maybe I'm mis-remembering from much older images like ST80V2 ?
tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Useful random insult:- His shared libraries aren't installed.
More information about the Squeak-dev
mailing list
|