Recompile in iex failing :ets.lookup(Mix.Compilers.ApplicationTracer

Running iex and trying to do a recompile. Was getting an error from the compiler. Found a note from Jose somewhere that said it was fixed in 1.13 so I pulled 1.13.4, but I’m still getting it, or a variation. (1.13.4 is also whining about deps using rebar2, but that’s another question.)

** (ArgumentError) errors were found at the given arguments:

  * 1st argument: the table identifier does not refer to an existing ETS table

    (stdlib 3.17.1) :ets.lookup(Mix.Compilers.ApplicationTracer, 0)
    (mix 1.13.4) lib/mix/compilers/application_tracer.ex:104: Mix.Compilers.ApplicationTracer.warnings/1
    (mix 1.13.4) lib/mix/compilers/elixir.ex:432: Mix.Compilers.Elixir.each_cycle/2
    (elixir 1.13.4) lib/kernel/parallel_compiler.ex:374: Kernel.ParallelCompiler.spawn_workers/7
    (elixir 1.13.4) lib/kernel/parallel_compiler.ex:204: Kernel.ParallelCompiler.spawn_workers/5
    (elixir 1.13.4) lib/kernel/parallel_compiler.ex:177: Kernel.ParallelCompiler.spawn_workers/3
    (mix 1.13.4) lib/mix/compilers/elixir.ex:150: Mix.Compilers.Elixir.compile/7
    (mix 1.13.4) lib/mix/task.ex:397: anonymous fn/3 in Mix.Task.run_task/3
    (mix 1.13.4) lib/mix/tasks/compile.all.ex:92: Mix.Tasks.Compile.All.run_compiler/2
    (mix 1.13.4) lib/mix/tasks/compile.all.ex:72: Mix.Tasks.Compile.All.compile/4
    (mix 1.13.4) lib/mix/tasks/compile.all.ex:59: Mix.Tasks.Compile.All.with_logger_app/2
    (mix 1.13.4) lib/mix/tasks/compile.all.ex:36: Mix.Tasks.Compile.All.run/1
    (mix 1.13.4) lib/mix/task.ex:397: anonymous fn/3 in Mix.Task.run_task/3
    (mix 1.13.4) lib/mix/tasks/compile.ex:131: Mix.Tasks.Compile.run/1
    (mix 1.13.4) lib/mix/task.ex:397: anonymous fn/3 in Mix.Task.run_task/3
    (iex 1.13.4) lib/iex/helpers.ex:107: IEx.Helpers.recompile/1

The previous error was different:

** (ArgumentError) errors were found at the given arguments:

  * 2nd argument: invalid options

    (stdlib 3.17.1) :ets.new(Mix.Compilers.ApplicationTracer, [:public, :named_table, :set, {:read_concurrency, true}])
    (mix 1.13.3) lib/mix/compilers/application_tracer.ex:208: Mix.Compilers.ApplicationTracer.build_manifest/1
    (mix 1.13.3) lib/mix/compilers/application_tracer.ex:40: Mix.Compilers.ApplicationTracer.prepare/2
    (mix 1.13.3) lib/mix/compilers/elixir.ex:142: Mix.Compilers.Elixir.compile/7
    (mix 1.13.3) lib/mix/task.ex:397: anonymous fn/3 in Mix.Task.run_task/3
    (elixir 1.13.3) lib/enum.ex:1593: Enum."-map/2-lists^map/1-0-"/2
    (elixir 1.13.3) lib/enum.ex:1593: Enum."-map/2-lists^map/1-0-"/2
    (phoenix 1.5.9) lib/phoenix/code_reloader/server.ex:245: Phoenix.CodeReloader.Server.mix_compile/1
    (phoenix 1.5.9) lib/phoenix/code_reloader/server.ex:217: Phoenix.CodeReloader.Server.mix_compile_unless_stale_config/2
    (phoenix 1.5.9) lib/phoenix/code_reloader/server.ex:176: Phoenix.CodeReloader.Server.mix_compile/3
    (phoenix 1.5.9) lib/phoenix/code_reloader/server.ex:75: anonymous fn/2 in Phoenix.CodeReloader.Server.handle_call/3
    (phoenix 1.5.9) lib/phoenix/code_reloader/server.ex:289: Phoenix.CodeReloader.Server.proxy_io/1
    (phoenix 1.5.9) lib/phoenix/code_reloader/server.ex:73: Phoenix.CodeReloader.Server.handle_call/3
    (stdlib 3.17.1) gen_server.erl:721: :gen_server.try_handle_call/4
    (stdlib 3.17.1) gen_server.erl:750: :gen_server.handle_msg/6
    (stdlib 3.17.1) proc_lib.erl:226: :proc_lib.init_p_do_apply/3

Is there something more than 1.13.4 that I need, or will I need 1.13.5?

Update: Turns out I sometimes still get the original error.

It seems like maybe this wasn’t posted properly. It’s not showing me any data at the bottom of the post, not even to say “0 views”. I can’t edit it, as far as I can tell, but it’s not a draft. Is there a limbo here?