Skip to content

bug Failure message includes extra content #5864

@ceedubs

Description

@ceedubs

Describe and demonstrate the bug

#5661 introduced a change in the Text message part of a Failure when bug produces a runtime failure. Previously the Failure would look like:

Failure (typeLink RuntimeFailure) "builtin.bug" (Any "whoa")

And now it looks like:

    Failure
      (typeLink RuntimeFailure)
      "💔💥\n\nI've encountered a call to builtin.bug with the following value:\n\n  \"whoa\"\n\nStack trace:\n  #00b3gl0n7k"
      (Any "whoa")

When the bug halts your program you end up with duplicate broken hearts and explosions:

💔💥
  The program halted with an unhandled exception:
    Failure
      (typeLink RuntimeFailure)
      "💔💥\n\nI've encountered a call to builtin.bug with the following value:\n\n  \"whoa\"\n\nStack trace:\n  #00b3gl0n7k"
      (Any "whoa")
  Stack trace:
    ##raise

I'd expect the emoji and stack trace to be rendered in the terminal when bug causes a program to crash, but I wouldn't expect them to be part of the Failure itself.

Environment (please complete the following information):

Additional context

See Discord discussion

There is an existing transcript that captured this change, but the diff probably got lost in the noise: https://github.com/unisonweb/unison/pull/5661/files#diff-30ec7e5630bc0bd30d4786e9c88071b53313684bf9705712bfeb52bdd41c0c01

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions