If there are no objections, will somebody merge this, please?
2017-04-11 19:23 GMT+02:00 Tobias Pape Das.Linux@gmx.de:
Looks good from here.
On 11.04.2017, at 18:56, Jakob Reschke jakob.reschke@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@source.squeak.org commits@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!
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@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@gmx.de:
Looks good from here.
On 11.04.2017, at 18:56, Jakob Reschke jakob.reschke@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@source.squeak.org commits@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!
ok
On 20.05.2017, at 22:35, Jakob Reschke jakob.reschke@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@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@gmx.de:
Looks good from here.
On 11.04.2017, at 18:56, Jakob Reschke jakob.reschke@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@source.squeak.org commits@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!
squeak-dev@lists.squeakfoundation.org