Jll packages

I noticed that several packages are available in two variants: “normal” and *_jll.
For example FFTW, FFTW_jll, Nettle, Nettle_jll
FFTW seems to be based on the FFTW_jll “artifact”, whereas Nettle seems independent of Nettle_jll.
Moreover, there are a few *_jll only packages, for example OpenSSL_jll without a Julia wrapper package (I can use it directly with ccall).

  1. Is it possible to find out which packages use a specific *_jll artifact? (specifically, is there a package that already wraps the functions of OpenSSL?)
  2. I believe that the repository system should enforce uniform library usage, that is it should not be possible to import the same binary library by adding two packages (Nettle and Nettle_jll install two different versions libnettle.so in my .julia directory)

Search in the General registry for packages depending on OpenSSL_jll. I don’t think I see any non-JLL package depending on it.

Why enforce? Again, it’s up to the package developer to do it, even though they’re encouraged to use the JLL artifacts.

Open a PR for Nettle.jl, I think the maintainer will be more than happy to merge it :wink: Only remember to ping him when you open the PR

3 Likes