Hi, I have some C code with Julia embedding. The code is tested with versions 1.8 and nightly. However, it fails on nightly, due to the changes in the signature of jl_array_data
(macro that obtains a C pointer from a Julia Array data structure).
Precisely, as I was able to trace from the GitHub repo, somehow in the current stable release 1.10, there is only macro jl_array_data(a)
, but in the master
branch (I assume that this branch is used for nightly builds) this macro is renamed to jl_array_data_(a)
(mind the ending underscore) and the old name is used for a new macro jl_array_data(a, t)
where t
is a data type.
Question: How to handle this robustly in the code that I am maintaining? I mean, I still want tests to pass with a stable release and nightly. I understand that the question is more about C than Julia; however due to the lack of experience with Julia, I’d like to ask someone’s opinion about how to handle this API changes in a robust long-term way.