Releases: containers/composefs
v1.0.5
A notable change here is that composefs now supports meson as a build system. We are likely to remove the autotools build system in the next release, so if you're including composefs in your build system, please let us know if there's any problems with that in #301
There's a few minor internal fixes and hardening, some CI cleanups. Also included in the list below is changes to the Rust code, which has already been published to crates.io and is versioned separately from this release.
Thanks to all contributors!
What's Changed
- test: use correct
composefs-info
binary by @Kiskae in #291 - rust: Some doc and misc tweaks by @cgwalters in #293
- ci: Test Rust code against current C code by @cgwalters in #292
- test: remove hardcoded /tmp by @Kiskae in #296
- rust: Add mandatory
description
field, other misc changes by @cgwalters in #295 - composefs-core: Drop incorrect
include
by @cgwalters in #297 - rust: Two minor patches by @cgwalters in #298
- composefs-info: specify locale to isgraph/isprint by @giuseppe in #299
- Add meson as an alternative to autotools with corresponding CI by @jluebbe in #300
- info: Add missing terminator for
longopts
by @cgwalters in #302 - mount: Consistently use
composefs
as source by @cgwalters in #303 - meson.build: Allow use as a meson subproject by @jluebbe in #304
- mkcompose: report close() errors by @giuseppe in #306
- libcomposefs: do not override errno by @giuseppe in #307
- libcomposefs: drop using "ro" option by @giuseppe in #309
- Minor rust lints by @cgwalters in #308
- Verify payload length early on by @cgwalters in #310
- Release 1.0.5 by @cgwalters in #312
New Contributors
Full Changelog: v1.0.4...v1.0.5
Release 1.0.4
Changes since 1.0.4:
- Added LCFS_MOUNT_FLAGS_TRY_VERITY/tryverity mount option to do best-effort fs-verity
- Use the new loewerdir+ and datadir+ overlayfs mount options from linux 6.6
- mkcomposefs is now multi-threaded when computing digests and copying files
- mkcomposefs now uses copy_file_range when copying files
- Added some initial rust crates to handle composefs dump files
- Added fuzz tests
- Documentation updates
- Fix some crashes and leaks
- Improve error reporting
- Fix build on various libc types and versions
Release 1.0.3
Changes since 1.0.2:
- Image format version 1 was added that allows storing overlay whiteouts in
a composefs image. - libcomposefs added max_version option
- mkcomposefs added --version and --max-version options
- composefs can now be build without go-md2man
- Minor bugfix handling file read errors
Release version 1.0.2
Changes since 1.0.1:
- Dropped composefs-from-json in tests in favour of using the
composefs-info dump format. - libyajl dependency dropped
- libcomposefs now limits the number of xattrs per file to 64k
- Fixed build against libc without reallocarray
- Performance fixes
- go-md2man is used instead of pandoc for manpages
- Minor fixes to spec file
Release version 1.0.1
Changes since 1.0.0:
- mkcomposefs now supports --from-file which reads image descriptions
in the format ofcomposefs-info dump
output. - composefs-info dump output now shows content and hardlink target
- mount.composefs now uses the new mount api on recent kernels, which
fixes a regression in escaping commas in upperdir/lowerdir/workdir
options. - lcfs_node_set_payload() now accepts NULL to unset
- Some performance improvements
- Fixed errors in error reporting
- Added more manpages
Release version 1.0.0
This is the first stable release of composefs. Starting now, we
guarantee a stable library ABI and a binary stable file format. The
later means that any image build from an identical lcfs_node tree and
identical write options, will produce a file that is binary identical
to a later run even with a different version. The same is true for
a mkcomposefs run with the same options.
Major changes since 0.1.4:
-
Added a soname with version to libcomposefs
-
All required overlayfs xattr changes are now upstream and the
corresponding image generation changes have been made in
composefs. This includes support for escaping overlayfs xattrs and
whiteouts for nested overlayfs mounts. -
fs-verity built-in signature support was dropped in favour of
userspace signatures. -
The erofs images now uses the new bloom filter for faster xattr
lookups. This is backward compatible and old erofs version still
work (sans the speedup). -
Files can now be inlined in the erofs image to avoid overhead of
using redirections for small files. -
There is a new API to regenerate a lcfs_node tree from a composefs
image file. -
There is a new composefs-info tool that lets you dump info about
images, including what objects it refers to and which ones are
missing from a given basedir. -
Various fixes, cleanups and new tests
Signed-off-by: Alexander Larsson alexl@redhat.com
Release 0.1.4
Major changes in this version:
- kernel module was dropped
- overlayfs digest xattrs used change to match the final (v5) patchset
- Updated overlayfs mounts to use the final syntax for datalower dirs
- library now exposes API to compute fs-verity digests
- library dropped ctime and node removal API
- Fixed mkcomposefs on big endian
- mkcomposefs now tries to use reflinks if possible
- writer-json was renamed to composefs-from-json
- composefs-from-json sandboxes the json parsing
- composefs-from-json honors mtime
- mount.composefs now supports --help
- Added initial version of composefs-fuse
- Various code cleanups
- Updated docs
Release 0.1.3
Added option to specify image mount point to lcfs_mount().
Release 0.1.2
Fixes installation of lcfs-mount.h header.
Release 0.1.1
New in this release
- Drop dependency on libfsverity