get_partialwill now return short reads if called with (
length) > the file length, instead of an error. (reported by @palainp, fix by @yomimono)
v0.1.1 (2022-07-28, all changes by @yomimono)
bugfix: remove dependency cycle between chamelon and chamelon-unix
bugfix: tag src/runtest with
v0.1.0 (prepared and superseded 2022-07-28, all changes by @yomimono)
new features: expose and implement
Kv.size t keyand
Kv.get_partial t key ~offset ~length.
bugfix: large files could be misread under certain circumstances because the final block index wasn't correctly calculated. remove
bitwisemodule and the Base
popcountit referenced, and instead calculate the block index with a recursive function.
bugfix: detect unwriteable blocks instead of endlessly splitting to try to accommodate them.
bugfix: keep track of allocated but not-yet-written blocks, and don't hand them out twice.
bugfix: check the maximum name length against the block size when mounting a filesystem.
detect simple cycles in the metadata tree at connect time (@yomimono)
check block size in the superblock at connect time, and fail if it doesn't match block device (@yomimono)
fix 32-bit compilation, for real this time (@yomimono)
be consistent in the use of Logs vs Log module (@palainp)
implement a lookahead block allocator more similar to the littlefs one (@yomimono)
bring back fuzz tests and improve them (@yomimono)
test for correct block index detection in CTZ files, and fix an edge case (@yomimono)
use the sector_size given by the block device via its info (@dinosaure)
initial opam release
unix binaries are now all subcommands of the
splitand add many more tests
fix a bug where writing a block that is over half full and already has a hardtail would never cause compaction
fix several problems with
fix problem where making new directories could get exciting unexpected contents
always start processing a directory at its first blockpair, not its last
add timestamp output to lfs_ls
follow hardtails when making new directories
used block detection now correctly finds the last block in a CTZ list
entries in a directory are no longer sometimes lost after splitting when block size is small
the allocator now has a separate function for allocating metadata block pairs, so the user doesn't have to retrieve two blocks individually