On Fri, Dec 11, 2015 at 8:10 PM, Mariano Martinez Peck <
[email protected]> wrote:

>
>
> On Fri, Dec 11, 2015 at 4:01 PM, Andrei Chis <[email protected]>
> wrote:
>
>> You can add the two methods below. Then when you open Spotter on a
>> package you can also search through it's history.
>> This will trigger an update if the history is not present, but Spotter
>> will still respond quite fast.
>>
>> You can also dive in a MCVersionInfo to see its ancestors.
>>
>> RPackage>>spotterHistoryFor: aStep
>> <spotterOrder: 100>
>> aStep listProcessor
>> title: 'History';
>> allCandidates: [ |ancestry|
>> ancestry := (MCWorkingCopy allManagers detect: [:each | each packageName
>> = self name]) ancestry.
>> ancestry withBreadthFirstAncestors select: [:each | each isKindOf:
>> MCVersionInfo] ];
>> candidatesLimit: 50;
>> itemName: [ :each | each name, ' - ', each message ];
>> filter: GTFilterSubstrings
>>
>> MCVersionInfo>>spotterPreviewCodeIn: aComposite
>> <spotterPreview: 10>
>> aComposite text
>> title: 'Summary';
>> display: [
>> self summaryHeader, String cr,
>> 'Message:', String cr, self message ];
>> entity: self.
>> Cheers,
>> Andrei
>>
>>
> Wow.... I send the other email before reading this one. This is much
> better hahahaha.
> Could these 2 extensions be incorporated as part of GT for further Pharo
> releases?
>  I don't like the #isKindOf:   but it happened to me that if I sent
> #allAncestors I would not get the latest commits.
> And the #isKindOf:   is because otherwise the first elements
> are MCLazyVersionInfo.
> I am not sure. Maybe someone with better understanding of MC could tell us
> the correct code.
>

Let's see if we can find a cleaner way.
If now I'll push them like this :)

Cheers,
Andrei


>
> Thanks!
>
>
>
>>
>> On Fri, Dec 11, 2015 at 4:52 PM, Eliot Miranda <[email protected]>
>> wrote:
>>
>>> Hi Mariano,
>>>
>>>     for this in Squeak I added a simple menu pick to the Monticello
>>> Browser's package list menu called "search history" which opens up a
>>> workspace containing the entire history as a flat string.  I then just
>>> search using ctrl-f.  You can find it in a current squeak trunk image.
>>>
>>> _,,,^..^,,,_ (phone)
>>>
>>> On Dec 10, 2015, at 9:12 AM, Mariano Martinez Peck <
>>> [email protected]> wrote:
>>>
>>> How many times have you tried to search a string as a comment of a
>>> commit in all the history? Myself: many many times. I know we need much
>>> better tools for that, store the history in a another way, provide a nicer
>>> API, etc etc. And I know there were topics about that.
>>>
>>> However, I would deeply appreciate a very short term solution for ease
>>> that. The model side is as simple as this:
>>>
>>> | packageName ancestry anscestors substring |
>>> packageName := 'MyPackageXX'.
>>> substring := 'whatever I want to search'.
>>> ancestry := (MCWorkingCopy allManagers detect: [:each | each packageName
>>> = packageName] ) ancestry.
>>> anscestors := ancestry withBreadthFirstAncestors select: [:each | each
>>> isKindOf: MCVersionInfo].
>>> anscestors select: [ :each | each message includesSubstring: substring ]
>>>
>>> Do you think it's worth a simple UI tool? Custom inspector of MCAncestry?
>>>
>>> Cheers,
>>>
>>>
>>> --
>>> Mariano
>>> http://marianopeck.wordpress.com
>>>
>>>
>>
>
>
> --
> Mariano
> http://marianopeck.wordpress.com
>

Reply via email to