Skip to content

Releases: Borewit/music-metadata

v12.3.2

Choose a tag to compare

@Borewit Borewit released this 25 Oct 11:58

Changes

🚀 Improvements

  • feat: expose RIFF INFO copyright in common metadata @Borewit (#2873)

🐛 Bug Fixes

  • fix: map Discogs album artist lists to common.albumartists @Borewit (#2872)
  • fix: preserve recording dates and standard Vorbis date precedence @Borewit (#2871)

📦 NPM release

NPM release: music-metadata@12.3.2

v12.3.1

Choose a tag to compare

@Borewit Borewit released this 25 Oct 09:29

Changes

🚀 Improvements

🐛 Bug Fixes

📚 Documentation

📦 NPM release

NPM release: music-metadata@12.3.1

v12.3.0

Choose a tag to compare

@Borewit Borewit released this 24 Oct 15:58

Changes

✨ Enhancements

🚀 Improvements

  • feat: expose ASF ReplayGain and track totals @Borewit (#2863)
  • feat: expose ID3v2.2 ULT lyrics in common metadata @Borewit (#2860)
  • perf: skip unwanted MP4 artwork before buffering @Borewit (#2857)
  • perf: advance MP4 chapter sample lookups across queries @Borewit (#2844)
  • perf: aggregate MP4 sample sizes to reduce memory use @Borewit (#2834)

🔒 Security

🐛 Bug Fixes

  • fix: map ID3 involved-person credits to common roles @Borewit (#2862)
  • fix: map ID3 private peak levels and bound owner warnings @Borewit (#2859)
  • fix: guard truncated Ogg metadata headers and empty flushes @Borewit (#2855)
  • fix: expose missing ASF attribute decoders in the return type @Borewit (#2858)
  • fix: decode BWF v2 loudness with signed versioned fields @Borewit (#2856)
  • fix: decode the complete MP4 metadata locale @Borewit (#2840)
  • fix: decode signed MP4 metadata integers correctly @Borewit (#2839)

📚 Documentation

  • docs: clarify security policy and reporting requirements @Borewit (#2845)

🛠️ Under the hood

  • refactor: dispatch bounded Ogg FLAC metadata packets @Borewit (#2861)
  • refactor: share bounded DSDIFF chunk traversal @Borewit (#2853)
  • refactor: share MP4 media and movie timing layouts @Borewit (#2852)
  • refactor: centralize ASF record cursor bounds @Borewit (#2851)
  • refactor: deduplicate MP4 codec and brand strings with sets @Borewit (#2850)
  • refactor: run security regressions as typed callbacks @Borewit (#2849)
  • refactor: parse ASF codec lists with borrowed tokenizer views @Borewit (#2843)
  • refactor: stop retaining parsed MP4 child atoms @Borewit (#2842)
  • refactor: summarize MP4 fragment runs during decoding @Borewit (#2841)

📦 NPM release

NPM release: music-metadata@12.3.0

v12.2.3

Choose a tag to compare

@Borewit Borewit released this 18 Oct 19:03

Changes

🐛 Bug Fixes

  • fix: bound ASF metadata records to their object payloads @Borewit (#2832)
  • fix: validate audio sample tables used by MP4 chapters @Borewit (#2831)
  • fix: respect ASF content description boundaries @Borewit (#2830)
  • fix: ignore inherited native tag mappings @Borewit (#2829)
  • fix: prevent orphan MP4 boxes from modifying another track @Borewit (#2828)
  • fix: preserve arbitrary ID3v2 credit role names @Borewit (#2826)
  • fix: validate ID3v2 chapter frame boundaries @Borewit (#2825)
  • fix: derive AIFF bitrate from sound payload after parsing @Borewit (#2822)
  • fix: account for WAV chunk padding and remaining payload @Borewit (#2821)
  • fix: preserve ASF picture order during MIME detection @Borewit (#2820)
  • fix: decode ASF picture fields at their correct offsets @Borewit (#2819)
  • fix: recognize trailing ID3v2 padding @Borewit (#2817)

🛠️ Under the hood

  • refactor: share ID3 chapter embedded-frame decoding @Borewit (#2818)

📦 NPM release

NPM release: music-metadata@12.2.3

v12.2.2

Choose a tag to compare

@Borewit Borewit released this 17 Oct 13:23

Changes

  • refactor: adopt strtok3 bounded views and random-access guard @Borewit (#2815)

🚀 Improvements

  • Avoid redundant observer events for unchanged format values @Borewit (#2816)

🔒 Security

  • Apply a preventive allocation cap to file-type detection @Borewit (#2807)

🛠️ Under the hood

  • refactor: strengthen the Matroska schema pattern @Borewit (#2814)
  • refactor: share Vorbis vendor and comment list decoding @Borewit (#2811)
  • refactor: centralize embedded ID3 parser invocation @Borewit (#2813)
  • fix: await Matroska index skips during EBML traversal @Borewit (#2812)
  • refactor: preserve format key and value types @Borewit (#2810)
  • Remove duplicate MP4 tag mapper registration @Borewit (#2809)

📦 NPM release

NPM release: music-metadata@12.2.2

v12.2.1

Choose a tag to compare

@Borewit Borewit released this 14 Oct 18:25

Changes

🚀 Improvements

  • perf(ebml): batch random-access element header reads @Borewit (#2803)
  • fix: recognize CAF and DSDIFF with latest file-type @Borewit (#2806)

🐛 Bug Fixes

  • fix(mp4): preserve media handler with track metadata @Borewit (#2802)
  • fix: reject non-regular files in parseFile @Borewit (#2804)

📦 NPM release

NPM release: music-metadata@12.2.1

v12.2.0

Choose a tag to compare

@Borewit Borewit released this 12 Oct 18:37

Changes

✨ Enhancements

📦 NPM release

NPM release: music-metadata@12.2.0

v12.1.1

Choose a tag to compare

@github-actions github-actions released this 11 Oct 14:55

Changes

🔒 Security

📦 NPM release

NPM release: music-metadata@12.1.1

v12.1.0

Choose a tag to compare

@Borewit Borewit released this 08 Oct 19:18

Changes

✨ Enhancements

  • Improve MP4 chapter sample and Nero chapter parsing @Borewit (#2795)

🚀 Improvements

🐛 Bug Fixes

🛠️ Under the hood

📦 NPM release

NPM release: music-metadata@12.1.0

v12.0.0

Choose a tag to compare

@Borewit Borewit released this 03 Oct 13:45

⚠️ API Changes

🚀 Improvements

  • fix: emit metadata events for track numbers and totals @Borewit (#2753)

🐛 Bug Fixes

  • Fix tag grouping for object prototype property names @Borewit (#2773)
  • Fix front cover selection and empty picture lists @Borewit (#2772)
  • Fix missing APEv2 metadata when tokenizer options are omitted @Borewit (#2771)

📚 Documentation

📦 Dependencies

📦 NPM release

NPM release: music-metadata@12.0.0