Quantcast

Re: The Inbox: System-jr.919.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: The Inbox: System-jr.919.mcz

Jakob Reschke
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 [hidden email]
<[hidden email]>:

> 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!
>
>

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: The Inbox: System-jr.919.mcz

Tobias Pape
Looks good from here.

> On 11.04.2017, at 18:56, Jakob Reschke <[hidden email]> 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 [hidden email]
> <[hidden email]>:
>> 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!
>>
>>
>


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: The Inbox: System-jr.919.mcz

Jakob Reschke
In reply to this post by Jakob Reschke
If there are no objections, will somebody merge this, please?

2017-04-11 19:23 GMT+02:00 Tobias Pape <[hidden email]>:

> Looks good from here.
>
>> On 11.04.2017, at 18:56, Jakob Reschke <[hidden email]> 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 [hidden email]
>> <[hidden email]>:
>>> 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!
>>>
>>>
>>
>
>

Loading...