Skip to content

scrub_repl_backtrace no longer successfully scrubs internal frames from client.jl fallback REPL #59223

@BioTurboNick

Description

@BioTurboNick

In #53821, scrub_repl_backtrace was changed to scrub frames starting with __repl_entry, a new creation for the REPL module, rather than matching :eval.

The impact of this change is that traces originating from the fallback client.jl REPL are no longer successfully scrubbed, because it refers to a REPL stdlib function. It also means Base client.jl code is depending on a REPL stdlib implementation.

Some options:

  • client.jl implements and uses __repl_entry... functions instead of REPL.jl
  • client.jl mirrors REPL.jl with its own e.g. __client_entry... and duplicate scrub_repl_backtrace
  • scrub_repl_backtrace could accept an argument for the string to match to make it generic, so there could be a default for client.jl and REPL could provide an override.

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