# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com). ## Unreleased ## 0.2.0 - 2024-08-01 ### Added - Support for tag manifests - Added `Metadata` struct, read/write tags from/to file bag-data.txt - Storing metadata tags inside `BagIt` struct - Store file size in `Payload` struct Supporting reading and writing commonly used tags through `Metadata` struct: - `BagIt-Version` - `Tag-File-Character-Encoding` - `Bagging-Date` (with [`jiff`](http://docs.rs/jiff) crate) - `Payload-Oxum` - Custom tags with key/value stored as strings ### Changed - Write a tag manifest when creating a bag - Validate tag manifest if present when reading a bag - Using new `Metadata` struct for reading and writing bagit.txt file ### Fixed - Use absolute paths when reading payloads, should prevent from path traversal attacks ## 0.1.0 - 2024-07-21 ### Added - Read and validate bags, get paths of data payloads - Create bags, add data payloads, finalize them - Example: Create bag with BLAKE3 algorithm - Example: Read zstd archive containing a tarball containing a bag - Tests, sample assets - Checksum algorithm must be provided by crate consumer