[squeak-dev] The Inbox: System-jr.919.mcz

Tobias Pape Das.Linux at gmx.de
Sat May 20 20:47:17 UTC 2017


ok

> On 20.05.2017, at 22:35, Jakob Reschke <jakob.reschke at student.hpi.de> wrote:
> 
> In a current project, we still encounter pull requests on GitHub where
> the Trait comments get removed (because they were not loaded with the
> package in the first place). So again, will somebody merge this into
> the trunk, please?
> 
> Seems like the corresponding submission Monticello-jr.662 was already
> put into the trunk, but it is not merged into the latest version of
> that package, so it is effectively not loaded. When someone merges
> this (System-jr.919), please also merge Monticello-jr.662 with the
> latest version of Monticello.
> 
> Kind regards,
> Jakob
> 
> 2017-04-13 14:23 GMT+02:00 Jakob Reschke <jakob.reschke at student.hpi.de>:
>> If there are no objections, will somebody merge this, please?
>> 
>> 2017-04-11 19:23 GMT+02:00 Tobias Pape <Das.Linux at gmx.de>:
>>> Looks good from here.
>>> 
>>>> On 11.04.2017, at 18:56, Jakob Reschke <jakob.reschke at student.hpi.de> wrote:
>>>> 
>>>> May anybody review this, please? Without this (or another fix) we
>>>> cannot reliably store trait comments with FileTree/Cypress. We have to
>>>> revert the comment removals all the time with Git.
>>>> 
>>>> Best,
>>>> Jakob
>>>> 
>>>> 2017-02-12 16:52 GMT+01:00 commits at source.squeak.org
>>>> <commits at source.squeak.org>:
>>>>> A new version of System was added to project The Inbox:
>>>>> http://source.squeak.org/inbox/System-jr.919.mcz
>>>>> 
>>>>> ==================== Summary ====================
>>>>> 
>>>>> Name: System-jr.919
>>>>> Author: jr
>>>>> Time: 12 February 2017, 4:10:59.703498 pm
>>>>> UUID: 95683f1a-e60c-fe4e-a86a-62cc5b00a151
>>>>> Ancestors: System-cmm.918
>>>>> 
>>>>> add PseudoTrait and support for it in FilePackage
>>>>> 
>>>>> main objective is to let Monticello read Trait comments from the st snapshot, which does not work when the trait definition is only treated as a doIt
>>>>> 
>>>>> =============== Diff against System-cmm.918 ===============
>>>>> 
>>>>> Item was changed:
>>>>> ----- Method: FilePackage>>doIt: (in category 'change record types') -----
>>>>> doIt: chgRec
>>>>>       | string |
>>>>>       string := chgRec string.
>>>>>       ('*ubclass:*instanceVariableNames:*classVariableNames:*poolDictionaries:*category:*'
>>>>>               match: string) ifTrue:[^self classDefinition: string with: chgRec].
>>>>> +       ('*named:*uses:*category:*'
>>>>> +               match: string) ifTrue:["Trait" ^ self traitDefinition: string with: chgRec].
>>>>>       ('* class*instanceVariableNames:*'
>>>>>               match: string) ifTrue:[^self metaClassDefinition: string with: chgRec].
>>>>>       ('* removeSelector: *'
>>>>>               match: string) ifTrue:[^self removedMethod: string with: chgRec].
>>>>>       ('* comment:*'
>>>>>               match: string) ifTrue:[^self msgClassComment: string with: chgRec].
>>>>>       ('* initialize'
>>>>>               match: string) ifTrue:[^self]. "Initialization is done based on class>>initialize"
>>>>>       ('''From *'
>>>>>               match: string) ifTrue:[^self possibleSystemSource: chgRec].
>>>>>       doIts add: chgRec.!
>>>>> 
>>>>> Item was added:
>>>>> + ----- Method: FilePackage>>getBehavior:factory: (in category 'private') -----
>>>>> + getBehavior: name factory: pseudoBehaviorFactory
>>>>> +       | pseudoBehavior |
>>>>> +       (classes includesKey: name) ifTrue:[
>>>>> +               ^classes at: name.
>>>>> +       ].
>>>>> +       pseudoBehavior := pseudoBehaviorFactory new.
>>>>> +       pseudoBehavior name: name.
>>>>> +       classes at: name put: pseudoBehavior.
>>>>> +       ^pseudoBehavior.!
>>>>> 
>>>>> Item was changed:
>>>>> ----- Method: FilePackage>>getClass: (in category 'private') -----
>>>>> getClass: className
>>>>> +       ^ self getBehavior: className factory: PseudoClass!
>>>>> -       | pseudoClass |
>>>>> -       (classes includesKey: className) ifTrue:[
>>>>> -               ^classes at: className.
>>>>> -       ].
>>>>> -       pseudoClass := PseudoClass new.
>>>>> -       pseudoClass name: className.
>>>>> -       classes at: className put: pseudoClass.
>>>>> -       ^pseudoClass.!
>>>>> 
>>>>> Item was added:
>>>>> + ----- Method: FilePackage>>getTrait: (in category 'private') -----
>>>>> + getTrait: traitName
>>>>> +       ^ self getBehavior: traitName factory: PseudoTrait!
>>>>> 
>>>>> Item was added:
>>>>> + PseudoClass subclass: #PseudoTrait
>>>>> +       instanceVariableNames: ''
>>>>> +       classVariableNames: ''
>>>>> +       poolDictionaries: ''
>>>>> +       category: 'System-FilePackage'!
>>>>> +
>>>>> + !PseudoTrait commentStamp: 'jr 2/12/2017 15:50' prior: 0!
>>>>> + Like a PseudoClass, but standing in for a Trait. Works identically to PseudoClass otherwise.!
>>>>> 
>>>>> Item was added:
>>>>> + ----- Method: PseudoTrait>>isTrait (in category 'testing') -----
>>>>> + isTrait
>>>>> +       ^ true!
>>>>> 
>>>>> 
>>>> 
>>> 
>>> 
> 



More information about the Squeak-dev mailing list