2017-07-10 10:31 GMT+02:00 Pavel Krivanek <pavel.krivanek@gmail.com>:
However the real question is if we need them in the form we had them until now because they are flattened as soon as a new changes file (release) is created and it stores only information about the last person who touched the method, not about the author nor wider history.
For me, YES! I always take this data as a hint to track down bugs. Especially in this community were different people do bug fixes or introduce something new /change something, it is really helpfull and valueable to track this changes by the method history. (not only *who* did the change, but also, in what context, what else had changed. And I think it is much easier to do this from within the image instead of looking at the git diff). That hte history is already lost when we created a new changes/sources for release is something that always disturbed me. And I hoped there would be some way to reload the "real" history with all intermediate changes.
2017-07-10 10:15 GMT+02:00 Guillermo Polito <guillermopolito@gmail.com>:
On Sun, Jul 9, 2017 at 10:10 PM, Henrik Nergaard <draagren@outlook.com> wrote:
Hi,
I had a look at the Pharo 7.0 today and see metadata for methods (Author and timestamp) has been removed*, what is the reason for this?
Having the ability to find methods created around the same time and/or by author is quite useful when fixing bugs in the core libraries.
There is also quite a lot of history that is lost as well with this change (I am always impressed when I stumble upon methods over 15-20 years old!).
Could this be reverted, please?
[*] all methods have a stamp, but it is the same for all with only a timestamp from the bootstrap(?).
Hi Henrik,
I'm sorry about that, it's probably a side effect of the bootstrap. We may have to track down the cause, so if you can help, it's most welcome :). For that I can explain you the process as it is today:
1st) We previously exported all code from Pharo to FileTree (Metadataless I think). This step is not done anymore. 2nd) We bootstrap from the packages on FileTree by first compiling methods without metadata.
3rd) We export all bootstrap packages from filetree to MCZ
https://github.com/pharo-project/pharo/blob/development/ bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/ instance/exportAllPackagesIntoMcz.st
4th) Once the first image is ready (without source code nor meta-data) we install monticello and we reload all mcz files This regenerates the source code and should load all metadata in mczs
https://github.com/pharo-project/pharo/blob/development/ bootstrap/scripts/02-monticello-bootstrap/02-bootstrapMonticello.st
So either it is that the metadata is lost in Filetree because it is metadataless, or it is lost in the intermediate conversion to mcz, or in the loading.
Guille
Best regards,
Henrik
--
Guille Polito
Research Engineer
French National Center for Scientific Research - *http://www.cnrs.fr* <http://www.cnrs.fr>
*Web:* *http://guillep.github.io* <http://guillep.github.io>
*Phone: *+33 06 52 70 66 13 <+33%206%2052%2070%2066%2013>