Skip to content

show on ValidateFailure can be huge and slow #85

@adamgundry

Description

@adamgundry

The ChangelogEntryInvalid constructor of ValidateFailure has a field vfSuccessfullyApplied :: [APITableChange], and each APITableChange contains the entire NormAPI at that step. Thus using show to render a ValidateFailure or MigrateFailure can result in trying to compute an enormous serialised representation, whereas prettyMigrateFailure/prettyValidateFailure avoid this because the pretty-printed representation ignores the NormAPI.

Instead, ChangelogEntryInvalid should store a list of changes without the API at each step.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions