Stable on-disk copies of the native libraries inside the binary.
A library inside a jar or a native image has no file path. Its loader copies it
to a new temp file in each process. macOS checks every new dylib at its first
dlopen: measured 0.8 s for sqlite-jdbc and 1.2 s for fff, against 35 ms for a
path it has seen. So every native start and the first ls paid seconds.
stage! copies each library once per container (the executable or the jar)
into ~/.vis/native/<id>/<stamp>/. It then sets the loader's own path
property. An explicit environment variable or property stays authoritative.
Stable on-disk copies of the native libraries inside the binary. A library inside a jar or a native image has no file path. Its loader copies it to a new temp file in each process. macOS checks every new dylib at its first `dlopen`: measured 0.8 s for sqlite-jdbc and 1.2 s for fff, against 35 ms for a path it has seen. So every native start and the first `ls` paid seconds. `stage!` copies each library once per container (the executable or the jar) into `~/.vis/native/<id>/<stamp>/`. It then sets the loader's own path property. An explicit environment variable or property stays authoritative.
(stage! id resource file-name)Stage classpath resource as file-name for library id and answer its File.
Answer nil when the resource is absent or already a plain file. Never throws.
Stage classpath `resource` as `file-name` for library `id` and answer its File. Answer nil when the resource is absent or already a plain file. Never throws.
(stage-resolver-libs!)Point fff, imaging and rift at stable copies before their first load. Never throws.
Point fff, imaging and rift at stable copies before their first load. Never throws.
(stage-sqlite!)Point sqlite-jdbc at a stable copy unless org.sqlite.lib.path is set.
Call it before the first SQLite connection. Never throws.
Point sqlite-jdbc at a stable copy unless `org.sqlite.lib.path` is set. Call it before the first SQLite connection. Never throws.
(stamp-key url stamp)Short hex key of url and its container stamp.
Short hex key of `url` and its container stamp.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |