Replicate the issue by loading into Pharo (I’m using 4) with:
Metacello new
baseline: ‘Pillar’;
repository: ‘github://JupiterSmalltalk/Pillar/repository';
load.
Then evaluate:
PRPillarGemstoneCodeTool port
At this point, the methods and variables that were in the trait, appear to be in the 4 classes that used the trait, however, monticello doesn’t see them as changes so doesn’t write them to the filetree.
You'll see that the PRPillarGemstoneCodeTool ->#port method simply flattens traits, removes them, then recompiles the methods in the classes that had traits.
Replicate the issue by loading into Pharo (I’m using 4) with:
Metacello new
baseline: ‘Pillar’;
repository: ‘github://JupiterSmalltalk/Pillar/repository';
load.
Then evaluate:
PRPillarGemstoneCodeTool port
At this point, the methods and variables that were in the trait, appear to be in the 4 classes that used the trait, however, monticello doesn’t see them as changes so doesn’t write them to the filetree.
You'll see that the PRPillarGemstoneCodeTool ->#port method simply flattens traits, removes them, then recompiles the methods in the classes that had traits.