You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The changes in c556bb9 broke ABI compatibility: any binary compiled against Julia <= 1.6 and calling jl_init() won't work with latest Julia master / Julia 1.7 unless it is recompiled.
If that's truly intentional, I guess we'll have to keep up producing multiple binaries for lots of BinaryBuilder JLLs, one for each major Julia version (and in some cases maybe more, as in the best there were ABI breaks even in patch level updates from 1.x.y to 1.x.(y+1)).
However, this migration is tricky, because there won't be a libjulia_jll 1.7 before Julia 1.7 is released, so I can't provide such JLLs linked against 1.7/master until then. This would be less of an issue if there was a clear strategy for such breaking changes in Julia: like, leaving a compatibility stub for jl_init__threading in 1.7 so that binaries compiled against older Julia version keep working, and removing that only in 1.8.
To do this, one could add a simple compatibility shim for jl_init__threading with a not to remove it in 1.8. I could look into providing a PR for that, but it'd be nice to know how the feelings about that are before investing work into it.
The text was updated successfully, but these errors were encountered:
Ok, it's easy enough to add an alias for this to keep compatibility so we might as well. In general the ABI is not stable between minor versions though.
(This was a comment elsewhere but I figured this is an issue of its own).
The changes in c556bb9 broke ABI compatibility: any binary compiled against Julia <= 1.6 and calling
jl_init()
won't work with latest Julia master / Julia 1.7 unless it is recompiled.If that's truly intentional, I guess we'll have to keep up producing multiple binaries for lots of BinaryBuilder JLLs, one for each major Julia version (and in some cases maybe more, as in the best there were ABI breaks even in patch level updates from 1.x.y to 1.x.(y+1)).
However, this migration is tricky, because there won't be a libjulia_jll 1.7 before Julia 1.7 is released, so I can't provide such JLLs linked against 1.7/master until then. This would be less of an issue if there was a clear strategy for such breaking changes in Julia: like, leaving a compatibility stub for
jl_init__threading
in 1.7 so that binaries compiled against older Julia version keep working, and removing that only in 1.8.To do this, one could add a simple compatibility shim for
jl_init__threading
with a not to remove it in 1.8. I could look into providing a PR for that, but it'd be nice to know how the feelings about that are before investing work into it.The text was updated successfully, but these errors were encountered: