Module Context.Conf

val entries : int

The branching factor of the inode tree. 32 is a good choice for general applications.

val stable_hash : int

This offers a way to conditional base hashing on node entries instead of inodes. It is available for some backwards compatibility applications, but for most applications, this should be set to 0.

val contents_length_header : Irmin_pack.Conf.length_header

Describes the length header of the user's contents values when binary-encoded. Supported modes are:

  • Some `Varint: the length header is a LEB128-encoded integer at the very beginning of the encoded value.
  • None: there is no length header, and values have unknown size. NOTE: when using irmin-pack in this mode, the selected indexing strategy must index all contents values (as recovering contents values from the store will require referring to the index for their length information).
val inode_child_order : Irmin_pack.Conf.inode_child_order

The strategy used for sorting entries. `Hash_bits is the recommended choice. `Seeded_hash is vunerable to attacks if storing user-generated keys.

val forbid_empty_dir_persistence : bool

If true, irmin-pack raises Failure if it is asked to save the empty inode. This default is false. It should be set to true if the Schema of the store allows a hash collision between the empty inode and this string of length 1: "\000".

See https://github.com/mirage/irmin/issues/1304