lofty-rs/CHANGELOG.md
2022-02-19 11:03:05 -05:00

1.8 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[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)
  • WAV/AIFF: Chunk reading now makes use of fallible allocation, preventing OOM
  • ID3v2: Text is properly encoded when writing
  • MP4: plID atom is properly treated as a 64-bit signed integer (issue)
  • MP4: rate and rtng now map to the correct ItemKey
  • TagType and FileType are no longer taken by reference in any method

Removed

  • ErrorKind::BadExtension