2022-02-19 16:03:05 +00:00
|
|
|
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
|
|
|
|
## [0.5.0] - TBD
|
|
|
|
|
|
|
|
### Added
|
|
|
|
- Support for Speex files
|
|
|
|
- `TagExt` trait to unify tag behavior
|
|
|
|
- `doc_cfg` feature for docs.rs
|
|
|
|
- Fallible allocation with `ErrorKind::Alloc` to help prevent OOM
|
|
|
|
- New dependency: `cfg-if`
|
|
|
|
- Added `#[non_exhaustive]` to `MimeType`
|
|
|
|
- Added `#[non_exhaustive]` to `PictureType`
|
|
|
|
- Added `#[non_exhaustive]` to `Mp4Codec`
|
|
|
|
- **MP3**: Emphasis struct (`mp3::Emphasis`) for use in `Mp3Properties`
|
|
|
|
- **ID3v2**: Respect the footer flag (`id3::v2::Id3v2TagFlags::footer`) when writing
|
|
|
|
- **MP4**: Constants for all well-known data types (`mp4::constants`)
|
|
|
|
- **MP4**: Support `rtng` (Parental advisory) atom, with corresponding `mp4::AdvisoryRating` enum
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
- **APE**: Clarify why ID3v2 is read only
|
|
|
|
- **MP3**: No longer error on missing Xing/VBRI header when reading properties
|
|
|
|
- **MP3**: Read the entire MPEG frame header, which is exposed in `Mp3Properties`
|
|
|
|
- `AudioFile` now requires `Into<TaggedFile>`
|
|
|
|
- **MP4**: Empty atoms are discarded
|
|
|
|
- **MP4**: Variable-size integers are shrunk when writing
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
- **MP4**: Panic in `Mp4File::read_from` ([commit](https://github.com/Serial-ATA/lofty-rs/commit/9e18616a6882c659ba2d5ca6bdad9bf41171135d))
|
|
|
|
- **WAV/AIFF**: Chunk reading now makes use of fallible allocation, preventing OOM
|
|
|
|
- **ID3v2**: Text is properly encoded when writing
|
2022-02-20 01:08:34 +00:00
|
|
|
- **ID3v2**: `MVNM` and `MVIN` frames are now treated as text frames
|
2022-02-20 13:59:52 +00:00
|
|
|
- **ID3v2**: Text encodings are verified for V2 tags
|
2022-02-19 16:03:05 +00:00
|
|
|
- **MP4**: `plID` atom is properly treated as a 64-bit signed integer ([issue](https://github.com/Serial-ATA/lofty-rs/issues/34))
|
|
|
|
- **MP4**: `rate` and `rtng` now map to the correct `ItemKey`
|
2022-02-20 00:48:19 +00:00
|
|
|
- **MP4**: Integer pairs are now written correctly
|
2022-02-19 16:03:05 +00:00
|
|
|
- `TagType` and `FileType` are no longer taken by reference in any method
|
|
|
|
|
|
|
|
### Removed
|
|
|
|
- `ErrorKind::BadExtension`
|