…min-pack, irmin-pack-tools, irmin-mirage, irmin-mirage-graphql, irmin-mirage-git, irmin-http, irmin-graphql, irmin-git, irmin-fs, irmin-containers, irmin-cli, irmin-chunk and irmin-bench (3.7.0)
CHANGES:
### Added
- **irmin**
- Add `Conf.pp` and `Conf.equal` to print and compare configuration values
(mirage/irmin#2227, @samoht)
- Add a `clear` optional arguments to all function that adds a new commit:
`Commit.v`, `set`, `set_tree`, `remove`, `test_and_set`,
`test_and_set_tree`, `test_set_and_get`, `test_set_and_get_tree`, `merge`,
`merge_tree` and `with_tree`. This new argument allows to control whether
the tree caches are cleared up after objects are exported to disk during
the commit. (mirage/irmin#2225, @samoht)
- **irmin-pack**
- Add configuration option, `lower_root`, to specify a path for archiving data
during a GC. (mirage/irmin#2177, @metanivek)
- Add `is_split_allowed` to check if a store allows split. (mirage/irmin#2175, @metanivek)
- Add `add_volume` to allow creating new empty volume in lower layer. (mirage/irmin#2188,
@metanivek)
- Add a `behaviour` function to the GC to check wether the GC will archive or
delete data. (mirage/irmin#2190, @Firobe)
- Add a migration on `open_rw` to move the data to the `lower_root` if
the configuration was enabled (mirage/irmin#2205, @art-w)
### Changed
- **irmin**
- Expose type equality for `Schema.Info` to avoid defining the `info` function
multiple times when using similar stores (mirage/irmin#2189, mirage/irmin#2193, @samoht)
- **irmin-pack**
- GC now changes its behaviour depending on the presence of a lower layer.
(mirage/irmin#2190, @Firobe)
- Split now raises an exception if it is not allowed. It is not allowed on
stores that do not allow GC. (mirage/irmin#2175, @metanivek)
- GC now supports stores imported V1/V2 stores, in presence of a lower layer
only. (mirage/irmin#2190, @art-w, @Firobe)
- Upgrade on-disk format to version 5. (mirage/irmin#2184, @metanivek)
- Archive to lower volume does not copy orphaned commits. (mirage/irmin#2215, @art-w)
### Fixed
- **irmin-pack**
- Unhandled exceptions in GC worker process are now reported as a failure
(mirage/irmin#2163, @metanivek)
- Fix the silent mode for the integrity checks. (mirage/irmin#2179, @icristescu)
- Fix file descriptor leak caused by `mmap`. (mirage/irmin#2232, @art-w)