Closed amontoison closed 2 months ago
Attention: Patch coverage is 92.12598%
with 10 lines
in your changes missing coverage. Please review.
Project coverage is 78.12%. Comparing base (
f2ad6a4
) to head (72da31f
). Report is 70 commits behind head on main.
Files | Patch % | Lines |
---|---|---|
src/core_interface.jl | 87.32% | 9 Missing :warning: |
src/julia_interface.jl | 93.75% | 1 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Each shared library dedicated to a SIF problem in a given precision is no longer linked to the same
libcutest_$precision.$dlext
. This previously caused issues when attempting to use multipleCUTEstModel
instances for the same precision simultaneously.By using static libraries instead, multiple problems can now be used simultaneously without conflict, as each library is independent from the others due to static linking.
I have modified the wrapper generator to add a
libsif
argument, which is of typePtr{Cvoid}
, returned byLibdl.dlopen
. EachCUTEstModel
now has alibsif
field.Users no longer need to manually call
finalizer(nlp)
; the garbage collector will handle it automatically. The only scenario where it might be necessary is if the user recreates a model with the same problem:It could be relevant in the case that the dimension of the problem is modified.
I have removed all global variables related to paths and the number of instantiated problems for a given precision.
I also updated the
README.md
to remove the@everywhere
trick, as it is no longer necessary.Note that we can't do this on macOS/Linux with Julia 1.6 because the Fortran compilers used to cross-compile binaries / Julia are incompatible with the
libgfortran
provided by the user's compiler. Fortunately, Julia 1.10 will soon become the new LTS version.cc @tmigot