On Thu, Sep 10, 2015 at 11:17 PM, Nicolai Hess <nicolaihess@web.de> wrote:
Now that this is fixed, should we (is it possible?) fix the changes file?

A script that replaces the "! !" by "! ��" in class comments should work. It's important to replace the ! mark by a space, but keep the byte positions of the strings. This is important, because the system recovers a method's source code by fetching it from the .changes (or .sources) file using the byte position where the source code was written (the sourcePointer in the trailer of the CompiledMethods).

A concrete example:
!OSTouchTwoFingersPinchInMoveEvent commentStamp: 'MerwanOuddane 5/11/2015 15:14' prior: 0!
Two fingers are pinching in! ! <--- replace last ! by space

I think this can work as a template for a script:

fileStream := SourceFiles changesFileStream.
fileStream resetToStart.
<iterate over the fileStream and replace some !s>
SourceFiles forceChangesToDisk.

If somebody wants to take it... else I might do it during the weekend.

Cheers,
MArtin
��

2015-09-06 21:56 GMT+02:00 Nicolai Hess <nicolaihess@web.de>:
Do we have a documentation about the format of
- class definitions
- methods
- class comments
for the changes file ?

I am asking because some entries are using two separator
"! !"
and some only one
"!"
And we have a problem with the "Recover lost changes" browser
(https://pharo.fogbugz.com/f/cases/16498/unrecoverable-changes)
and I am not sure if this is a bug on the code importer
or if it is a bug on how we write changes to the changes file.


nicolai