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 >
