Using a custom REPL prompt in Juno

My startup.jl has the following code to invoke Revise.jl and customize the REPL prompt:

atreplinit() do repl
    try
        @eval using Revise
        @async Revise.wait_steal_repl_backend()
    catch
    end
    repl.interface = REPL.setup_interface(repl)      # suspect
    repl.interface.modes[1].prompt = "myprompt> "    # suspect
    return
end

It seems that in the past this worked, but over the last few days I have found that within Juno, if I try to run a block of code in the editor, the result does not show; instead, the busy indicator stays on indefinitely. But as soon as I press ENTER in the REPL, the result appears and the busy indicator turns off. This is true whether I set the result to appear in the REPL or float next to the code. If I remove the lines marked as suspect, the problem goes away. I suspect there is a conflict between my customization of the REPL and Juno’s interaction with it. There appear to be no problems in a standard (non-Juno) REPL.

Am I doing something wrong? Is there a correct way to customize the julia prompt that won’t cause problems when using Juno?

P.S. - I am using Julia 1.4.1 and the current versions of all the Atom/Juno packages (Atom and Pkg both tell me everything is up to date).