Revise fails to pre-compile

This morning I get the following error:

julia> using Revise
Precompiling Revise
        Info Given Revise was explicitly requested, output will be shown live 
ERROR: LoadError: UndefVarError: `is_GotoIfNot` not defined

Output of versioninfo():

julia> versioninfo()
Julia Version 1.10.0-rc1
Commit 5aaa9485436 (2023-11-03 07:44 UTC)
Build Info:
  Official release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 32 Γ— AMD Ryzen 9 7950X 16-Core Processor
  LIBM: libopenlibm
  LLVM: libLLVM-15.0.7 (ORCJIT, znver3)
  Threads: 1 on 32 virtual cores
  LD_LIBRARY_PATH = /lib:/usr/lib:/usr/local/lib

Output of Pkg.status():

Status `~/repos/EstPitchOffset/Project.toml`
βŒ… [aaaaaaaa] ControlSystemsBase v1.9.5
  [a93c6f00] DataFrames v1.6.1
  [82cc6244] DataInterpolations v4.5.0
  [864edb3b] DataStructures v0.18.15
  [39dd38d3] Dierckx v0.5.3
  [ffbed154] DocStringExtensions v0.9.3
  [4e289a0a] EnumX v1.0.4
  [7a1cc6ca] FFTW v1.7.1
  [cf66c380] FastChebInterp v1.2.0
βŒ… [a98d9a8b] Interpolations v0.14.7
  [033835bb] JLD2 v0.4.38
  [b964fa9f] LaTeXStrings v1.3.1
  [23992714] MAT v0.10.6
  [33e6dc65] MKL v0.6.1
βŒ… [961ee093] ModelingToolkit v8.72.2
βŒ… [1dea7af3] OrdinaryDiffEq v6.58.1
βŒ… [9b87118b] PackageCompiler v2.1.11
  [438e738f] PyCall v1.96.2
  [d330b81b] PyPlot v2.11.2
βŒ… [295af30f] Revise v3.5.9
βŒ… [f2b01f46] Roots v2.0.20
βŒ… [9672c7b4] SteadyStateDiffEq v1.16.1
  [21f18d07] Timers v0.1.5
  [ddb6d928] YAML v0.4.9
Info Packages marked with βŒ… have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated`

Any idea?

Just a side note: things like Revise.jl are in my opinion better installed in the global environment, which is inherited in all other environments, to make sure that it does not interfere with other dependencies (even if it hasn’t got that many). After all, it’s just a development utility ;)

I am mentioning this because your status output indicates that revise is hold back from upgrading, so there is likely some dependency entanglement. I assume your issue can be solved by removing it and adding it to the global environment.

1 Like

I removed it from the global environment and upgraded it. Now it works. I need it in the local environment because I am building a system image based on the local environment with PackageCompiler.

I had the same error message this morning (Julia 1.9.4, Windows 10). It went away after restarting Julia. In my case Revise is in the global environment.

Yes, Revise.jl sometimes chokes on whatever, I was never able to reproduce any of these issues, but either removing the compile artifacts, the package itself or restarting Julia usually solves the problem :wink: I managed to get Revise.jl in such a state a couple of times already and most of the time it happened when installing new packages or resolving/instantiating something, as far as I can recall.