[squeak-dev] The Inbox: Monticello-eem.709.mcz

Chris Muller ma.chris.m at gmail.com
Sat Jan 25 22:40:32 UTC 2020


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!

Regards,
  Chris

On Fri, Jan 24, 2020 at 11:38 PM Eliot Miranda <eliot.miranda at gmail.com>
wrote:

> Hi Chris,
>
>    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?
>
> On Fri, Jan 24, 2020 at 6:56 PM Chris Muller <asqueaker at gmail.com> wrote:
>
>> 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?
>>
>>
>>
>> On Fri, Jan 24, 2020 at 8:17 PM <commits at source.squeak.org> wrote:
>>
>>> A new version of Monticello was added to project The Inbox:
>>> http://source.squeak.org/inbox/Monticello-eem.709.mcz
>>>
>>> ==================== Summary ====================
>>>
>>> Name: Monticello-eem.709
>>> Author: eem
>>> Time: 24 January 2020, 6:17:42.907101 pm
>>> UUID: ec11ed59-223d-4b58-aa08-c214e1ceb2e9
>>> Ancestors: Monticello-cmm.708
>>>
>>> Provide 'filter out unchanged methods...' to ignore any timestamp-only
>>> changes.
>>>
>>> =============== Diff against Monticello-cmm.708 ===============
>>>
>>> Item was added:
>>> + ----- Method: MCOperationsBrowser>>filterOutUnchangedMethods (in
>>> category 'actions') -----
>>> + filterOutUnchangedMethods
>>> +       "Remove from the list methods that only have changed timestamps"
>>> +       | unchangedMethods |
>>> +       unchangedMethods := self unchangedMethods.
>>> +       (self confirm: ('Ignore {1} methods that only differ in
>>> timestamp?' translated
>>> +               format: {unchangedMethods size}))
>>> +               ifTrue:
>>> +                       [items := items reject: [:op| op
>>> isUnchangedMethod].
>>> +                        self changed: #list]
>>> + !
>>>
>>> Item was changed:
>>>   ----- Method: MCOperationsBrowser>>methodListMenu: (in category
>>> 'menus') -----
>>>   methodListMenu: aMenu
>>>         selection ifNotNil:
>>>                 [aMenu addList: #(
>>>                         ('install'       installSelection)
>>>                         ('revert (x)'    revertSelection)
>>>                         ('browse origin' browseSelectionOrigin)
>>>                         -)].
>>>         self unchangedMethods ifNotEmpty:
>>>                 [aMenu addList: #(
>>>                         ('revert unchanged methods...'
>>> revertUnchangedMethods)
>>> +                       ('filter out unchanged methods...'
>>> filterOutUnchangedMethods)
>>>                         -)].
>>>         super methodListMenu: aMenu.
>>>         ^ aMenu!
>>>
>>> Item was changed:
>>>   ----- Method: MCOperationsBrowser>>revertUnchangedMethods (in category
>>> 'actions') -----
>>>   revertUnchangedMethods
>>>         "revert methods that only have changed timestamps"
>>>         | loader unchangedMethods |
>>> +       unchangedMethods := self unchangedMethods.
>>> +       (self confirm: ('Revert {1} methods that only differ in
>>> timestamp?' translated
>>> +               format: {unchangedMethods size}))
>>> +               ifTrue:
>>> +                       [loader := MCPackageLoader new.
>>> -       unchangedMethods := items select: [:op | op isUnchangedMethod].
>>> -       (self confirm: ('Revert {1} methods that only differ in
>>> timestamp?' translated format: {unchangedMethods size}))
>>> -               ifTrue: [
>>> -                       loader := MCPackageLoader new.
>>>                         unchangedMethods do: [:op | op inverse applyTo:
>>> loader].
>>>                         loader loadWithName: self
>>> changeSetNameForInstall].
>>>   !
>>>
>>>
>>>
>>
>
> --
> _,,,^..^,,,_
> best, Eliot
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200125/50786e79/attachment.html>


More information about the Squeak-dev mailing list