Skip to content

Releases: n10v/id3v2

2.1.4

09 Feb 16:51
e76f9ab
Compare
Choose a tag to compare

🦠 Security fixes

  • Update golang.org/x/text to v0.3.8 in #79. Thanks @afunix for reporting this!

2.1.3

24 Oct 09:19
cd346ca
Compare
Choose a tag to compare

🐛 Bug fixes

🧑‍💻 New Contributors

Full Changelog: v2.1.2...v2.1.3

2.1.2

23 Nov 09:22
Compare
Choose a tag to compare

⚠️ Breaking changes relative to v1

From now on there can be only one attached picture frames (APICs) with same picture type and description. Before it was only one with same description. See issue (#65) and PR (#66). Thanks @tillt for investigation and solution!

🚀 New feature

Support CHAP frames #62 (thanks @takaishi for implementation)

2.0.0

13 Oct 18:06
Compare
Choose a tag to compare

🛑 Broken release (forgot to add v2 folder). Please see v2.1.2+

1.2.0

07 Jun 13:37
Compare
Choose a tag to compare

🚀 New feature

  • Add PopularimeterFrame #58 (thanks @dhulihan for implementation)

🐛 Bug fixes

  • Fix race conditions in unknown frame #59 (thanks @astax-t)

🏃‍♀️ Performance

  • Improve performance for ISO encoding #61
     name                   old time/op    new time/op    delta
     WriteISO-4               21.7µs ± 1%     9.3µs ± 1%  -57.01%  (p=0.001 n=7+7)
     
     name                   old alloc/op   new alloc/op   delta
     WriteISO-4               47.2kB ± 0%     5.2kB ± 0%  -88.93%  (p=0.001 n=7+7)
     
     name                   old allocs/op  new allocs/op  delta
     WriteISO-4                 71.0 ± 0%      41.0 ± 0%  -42.25%  (p=0.001 n=7+7)
    

1.1.3

26 Mar 05:43
Compare
Choose a tag to compare

🐛 Bug fixes

  • Handle empty strings encoded in UTF16 #53 (thanks @highend and @qkveri for bug reporting)

1.1.2

10 Mar 08:01
Compare
Choose a tag to compare

🐛 Bug fixes

🏠 Internal

1.1.1

27 Sep 21:06
Compare
Choose a tag to compare
// DefaultEncoding returns default encoding of tag.
// Default encoding is used in methods (e.g. SetArtist, SetAlbum ...) for
// setting text frames without the explicit providing of encoding.
func (tag *Tag) DefaultEncoding() Encoding {
	return tag.defaultEncoding
}

// SetDefaultEncoding sets default encoding for tag.
// Default encoding is used in methods (e.g. SetArtist, SetAlbum ...) for
// setting text frames without explicit providing encoding.
func (tag *Tag) SetDefaultEncoding(encoding Encoding) {
	tag.defaultEncoding = encoding
}
// AddTextFrame creates the text frame with provided encoding and text
// and adds to tag.
func (tag *Tag) AddTextFrame(id string, encoding Encoding, text string) {
	tag.AddFrame(id, TextFrame{Encoding: encoding, Text: text})
}

1.1.0

25 Aug 21:33
Compare
Choose a tag to compare
  • Add support for TXXX and UFID frames. Thanks to @robertgzr for PR! #37
  • Performance compared to v1.0.2:
name                   old time/op    new time/op    delta
ParseAllFrames-4         75.5µs ± 1%    77.4µs ± 5%  +2.52%  (p=0.008 n=6+7)
ParseAllFramesISO-4      76.4µs ± 0%    77.2µs ± 1%  +1.13%  (p=0.002 n=6+6)
ParseArtistAndTitle-4    2.39µs ±16%    2.30µs ±21%    ~     (p=0.364 n=7+7)
Write-4                  6.76µs ± 0%    6.77µs ± 1%    ~     (p=0.902 n=7+7)
WriteISO-4               9.43µs ± 1%    9.45µs ± 0%    ~     (p=0.535 n=7+7)

name                   old alloc/op   new alloc/op   delta
ParseAllFrames-4          263kB ± 0%     263kB ± 0%    ~     (p=0.333 n=7+7)
ParseAllFramesISO-4       264kB ± 0%     264kB ± 0%    ~     (p=0.512 n=7+7)
ParseArtistAndTitle-4      732B ± 1%      728B ± 1%    ~     (p=0.523 n=7+7)
Write-4                  2.55kB ± 0%    2.55kB ± 0%    ~     (all equal)
WriteISO-4               6.39kB ± 0%    6.39kB ± 0%    ~     (p=0.140 n=6+7)

name                   old allocs/op  new allocs/op  delta
ParseAllFrames-4           61.0 ± 0%      61.0 ± 0%    ~     (all equal)
ParseAllFramesISO-4        66.4 ± 1%      66.6 ± 1%    ~     (p=1.000 n=7+7)
ParseArtistAndTitle-4      14.3 ±12%      13.9 ±15%    ~     (p=0.592 n=7+7)
Write-4                    35.0 ± 0%      35.0 ± 0%    ~     (all equal)
WriteISO-4                 50.0 ± 0%      50.0 ± 0%    ~     (all equal)

1.0.2

15 Aug 11:34
Compare
Choose a tag to compare
  • Fix: tag header size is not synchsafe for id3v2.3. Thanks to @tmthrgd