taoensso.nippy documentation
Simple, high-performance Clojure serialization library. Originally adapted
from Deep-Freeze.
coll-thaw
(coll-thaw coll s)
Thaws simple collection types.
coll-thaw-kvs
(coll-thaw-kvs coll s)
Thaws key-value collection types.
freeze
(freeze x & [{:keys [print-dup? password compressor encryptor legacy-mode], :or {print-dup? true, compressor compression/default-snappy-compressor, encryptor encryption/default-aes128-encryptor}}])
Serializes arg (any Clojure data type) to a byte array. Set :legacy-mode to
true to produce bytes readble by Nippy < 2.x.
freeze-to-bytes
(freeze-to-bytes x & {:keys [print-dup? compress? password], :or {print-dup? true, compress? true}})
DEPRECATED: Use `freeze` instead.
stress-data
Reference data used for tests & benchmarks.
thaw
(thaw ba & [{:keys [read-eval? password compressor encryptor legacy-mode strict?], :or {legacy-mode :auto, compressor compression/default-snappy-compressor, encryptor encryption/default-aes128-encryptor}}])
Deserializes frozen bytes to their original Clojure data type.
:legacy-mode options:
false - Nippy >= 2.x data only (best).
true - Nippy < 2.x data only (deprecated).
:auto - Mixed data (default, migrating).
In most cases you'll want :auto if you're using a preexisting data set, and
`false` otherwise.
WARNING: Enabling `:read-eval?` can lead to security vulnerabilities unless
you are sure you know what you're doing.
thaw-from-bytes
(thaw-from-bytes ba & {:keys [read-eval? compressed? password], :or {compressed? true}})
DEPRECATED: Use `thaw` instead.