-
Notifications
You must be signed in to change notification settings - Fork 109
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revise not working anymore for files that contain type definition (but the type is not changed) #734
Comments
The same thing happened to me. However, it only occurs in a subset of the files of the given structure, and I cannot find any way to distinguish them. |
@timholy any idea what might be causing this? |
I need to spend a week or so on Revise. No time right now though. |
It doesn't suffice anymore to pin Revise to 3.4.0 as it fails to precompile one also has to pin JuliaInterpreter to 0.9.26 |
Same issue here with Revise v3.5.10 on Julia 1.9.4, running on a Macbook Air M2 (2022 model), macOS Ventura 13.3. I'm tracking changes in a package I'm developing. Any change to files that contain a type definition triggers the same error as above, even if the type definition was not changed. The following workaround solves it for me (thanks, @fingolfin): (@v1.9) pkg> activate . # in whatever project folder you're working
(MyProject) pkg> add JuliaInterpreter@0.9.26
(MyProject) pkg> add Revise@3.4.0
julia> using Revise, MyProject |
At least with Julia 1.10 and LoweredCodeUtils 2.4.0, I cannot replicate this. Here's my setup: tim@diva:/tmp/TestRevise$ ls -l
total 12
-rw-r--r-- 1 tim tim 186 Dec 30 10:36 Manifest.toml
-rw-r--r-- 1 tim tim 128 Dec 30 10:35 Project.toml
drwxr-xr-x 2 tim tim 4096 Dec 30 10:35 src
tim@diva:/tmp/TestRevise$ cat src/TestRevise.jl
module TestRevise
export g
mutable struct A
x
end
function g()
end
end # module TestRevise And then julia> using TestRevise
Precompiling TestRevise
1 dependency successfully precompiled in 1 seconds
julia> g()
# Now edit `g` to return 1
julia> 1+1
2
julia> g()
1 All seems working as expected. |
I haven't been able to replicate this issue with Julia 1.10 and the latest versions of Revise and its dependencies. So it seems reasonable to close the issue at this point. |
I can still reproduce this, although with a slightly more complicated file. I will try to find a small example. |
With the following, it still fails for me:
Can you reproduce @aviatesk? |
I can reproduce it with the mwe from #734 (comment). with Revise v3.5.12 and JuliaInterpreter v0.9.27. The workaround from #734 (comment) unfortunately no longer works for me. |
It is a dup of #770 |
I don't think so. I compiled julia with JuliaLang/julia#52748 and the example from #770 (comment) is fixed, but the one from #734 (comment) still fails |
I noticed a regression with files that contain type definitions.
I have a file, which contains a type definition
and some method definitions
If the file is tracked with Revise and I change
g
, I get:which I did not expect, since I did not change the type definition. This is with Revise version 3.5.1.
I quickly tried with Revise version 3.4.0 and it is working as expected. This means, that when only
g
is changed but notA
, then the file is revised properly.The text was updated successfully, but these errors were encountered: