-
-
Notifications
You must be signed in to change notification settings - Fork 192
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
Random.__init__() and Base.PCRE.__init__() may be required in Julia >= 1.3 #277
Comments
Interesting. Do they use any of the stdlib's functionality that other packages don't? Makie, for example, while depending on Random, gets by without needing |
If you only require |
https://github.com/JuliaLang/julia/blob/784eb57a06aaab95bc4c22f288bd0c9f2b1687ca/stdlib/Random/src/RNGs.jl#L307-L309 PackageCompiler.jl/src/snooping.jl Line 4 in 06a49ca
is what you could edit in sd-notomls .
|
Thanks, I know why it's causing the trouble and how to work-around the problem (it's already implemented). I should have clarified in the OP that I'm just reporting it because I thought that PackageCompiler.jl maintainers may be interested in incorporating the fix. Like |
Out of curiosity, what ends up calling |
Here is the traceback of the error Note that PyCall is not using PackageCompiler's snoop-based API because of JuliaLang/julia#31156. It has a custom script for testing sysimage compatibility: https://github.com/JuliaPy/PyCall.jl/blob/9f4387535936f275e3582ebdc87cc2ef1f210030/aot/precompile.jl Actually, looking at the traceback, it looks like |
But that should run in a normal process (without |
I know that's the ideal/correct way but as I said snooping generated a precompile statement that broke But that's what I wanted to look into. Provided that PackageCompiler.jl is invoking |
JuliaLang/julia#31156 is still reproducible with Julia 1.4-DEV. |
PackageCompiler is highly reliable for me, but I just hit a glitch with this that looks exactly like JuliaLang/julia#33471, without changing anything in the setup julia 1.6.3
|
This happens when for some reason the package fails to get precompiled before the sysimage is attempted to be created. If the package is not precompiled, Julia will try to run all toplevel code and if that includes a call to PackageCompiler.jl/src/PackageCompiler.jl Lines 219 to 227 in 0b31703
is meant to ensure everything gets precompiled. |
The error I saw was repeatable on that setup after I first hit it, until I wiped the depot compiled and packages dirs. |
Running with |
If I come across it again I will. This was a device in the field so didn't have much debug time |
FYI:
Base.PCRE.__init__()
Fix system image builder for Julia >= 1.3 JuliaPy/pyjulia#326Random.__init__()
Call Random.__init__() manually to fix AOT with Julia 1.3 JuliaPy/PyCall.jl#713The text was updated successfully, but these errors were encountered: