We already have the path macro and PathBuf::from_path. Having a
separate path_buf macro makes the code more readable and ensures
compile-time evaluation.
If unwrap or expect is used on a Result<_, Error>, the Debug
implementation is not always optimized out. This leads to a significant
increase of the binary size. As a short-term fix, this patch changes the
Debug implementation to always returns a static string.
The DynFile::read_to_end, DynFilesystem::read and
DynFilesystem::read_chunk methods use a heapless::Vec to store a
flexible amount of data. This patch introduces a Vec trait that
abstracts over different versions of heapless so that we can optionally
support multiple heapless versions at the same time.
Fixes: https://github.com/trussed-dev/littlefs2/issues/77
The dir-entry-path feature has been enabled by default and only adds a
very small overhead. To decrease complexity, this patch removes the
feature and always enables the previously feature-gated code.
Fixes: https://github.com/trussed-dev/littlefs2/issues/76
This patch refactory the API to read and write attributes so that the
buffer is always provided by the caller. This means that the caller is
not required to always use a 1 kB buffer even if the attribute length is
much smaller.
Fixes: https://github.com/trussed-dev/littlefs2/issues/75
To reduce the number of global items and for consistency with constants
like u8::MAX, this patch replaces the size constants ATTRBYTES_MAX,
PATH_MAX and PATH_MAX_PLUS_ONE with associated constants
Attribute::MAX_SIZE, PathBuf::MAX_SIZE and PathBuf::MAX_SIZE_PLUS_ONE.
To make it easier to maintain applications using littlefs2, this patch
introduces a littlefs2-core crate with the basic types and traits used
by littlefs2, but without a specific implementation.
Fixes: https://github.com/trussed-dev/littlefs2/issues/55