<div dir="ltr">Yes. Oh man, that sounds rather nightmarish. I didn't follow the recent discussion about timestamps, just glad to know we're still trying to hang on to them!<div><br></div><div>Regards,</div><div> Chris</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jan 24, 2020 at 11:38 PM Eliot Miranda <<a href="mailto:eliot.miranda@gmail.com">eliot.miranda@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hi Chris,<div><br></div><div> you may have the use case backwards. Here's what happened today. I opened Guille's VMMaker.oscog-GuillermoPolito.2676 which is in VMMakerInbox and was shown many thousands of methods which said "different only in timestamps". My task was to find the methods that were not* different only in time stamps. I did this by implementing the filter operation (revert unchanged methods spends a lot of time doing nothing; it does not remove the noise). Once I could see the four methods that differed other than by timestamp (two of mine, two of Guille's) I could load Guille's methods, effecting a manual merge. I then committed something that didn't inherit from VMMaker.oscog-GuillermoPolito.2676 (because if I did it would introduce all those noisy non-differences), but did include the relevant changes. Does the menu item make more sense now?</div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jan 24, 2020 at 6:56 PM Chris Muller <<a href="mailto:asqueaker@gmail.com" target="_blank">asqueaker@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi Eliot, this concerning to me from the aspect that committing a change with only the timestamp changed is something that shouldn't be done. Would it not pollute your version history with a bunch of "non-changes" noise?<div><div><br></div><div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jan 24, 2020 at 8:17 PM <<a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">A new version of Monticello was added to project The Inbox:<br>
<a href="http://source.squeak.org/inbox/Monticello-eem.709.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/inbox/Monticello-eem.709.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Monticello-eem.709<br>
Author: eem<br>
Time: 24 January 2020, 6:17:42.907101 pm<br>
UUID: ec11ed59-223d-4b58-aa08-c214e1ceb2e9<br>
Ancestors: Monticello-cmm.708<br>
<br>
Provide 'filter out unchanged methods...' to ignore any timestamp-only changes.<br>
<br>
=============== Diff against Monticello-cmm.708 ===============<br>
<br>
Item was added:<br>
+ ----- Method: MCOperationsBrowser>>filterOutUnchangedMethods (in category 'actions') -----<br>
+ filterOutUnchangedMethods<br>
+ "Remove from the list methods that only have changed timestamps"<br>
+ | unchangedMethods |<br>
+ unchangedMethods := self unchangedMethods.<br>
+ (self confirm: ('Ignore {1} methods that only differ in timestamp?' translated<br>
+ format: {unchangedMethods size}))<br>
+ ifTrue:<br>
+ [items := items reject: [:op| op isUnchangedMethod].<br>
+ self changed: #list]<br>
+ !<br>
<br>
Item was changed:<br>
----- Method: MCOperationsBrowser>>methodListMenu: (in category 'menus') -----<br>
methodListMenu: aMenu<br>
selection ifNotNil:<br>
[aMenu addList: #(<br>
('install' installSelection)<br>
('revert (x)' revertSelection)<br>
('browse origin' browseSelectionOrigin) <br>
-)].<br>
self unchangedMethods ifNotEmpty:<br>
[aMenu addList: #(<br>
('revert unchanged methods...' revertUnchangedMethods) <br>
+ ('filter out unchanged methods...' filterOutUnchangedMethods) <br>
-)].<br>
super methodListMenu: aMenu.<br>
^ aMenu!<br>
<br>
Item was changed:<br>
----- Method: MCOperationsBrowser>>revertUnchangedMethods (in category 'actions') -----<br>
revertUnchangedMethods<br>
"revert methods that only have changed timestamps"<br>
| loader unchangedMethods |<br>
+ unchangedMethods := self unchangedMethods.<br>
+ (self confirm: ('Revert {1} methods that only differ in timestamp?' translated<br>
+ format: {unchangedMethods size}))<br>
+ ifTrue:<br>
+ [loader := MCPackageLoader new.<br>
- unchangedMethods := items select: [:op | op isUnchangedMethod].<br>
- (self confirm: ('Revert {1} methods that only differ in timestamp?' translated format: {unchangedMethods size}))<br>
- ifTrue: [<br>
- loader := MCPackageLoader new.<br>
unchangedMethods do: [:op | op inverse applyTo: loader].<br>
loader loadWithName: self changeSetNameForInstall].<br>
!<br>
<br>
<br>
</blockquote></div>
<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</blockquote></div>