Skip to content

Flattening traits - trait methods now compiled into classes not seen as changes #85

@JupiterJones

Description

@JupiterJones

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions