8 releases (5 breaking)
| 0.6.0 | Feb 4, 2025 |
|---|---|
| 0.5.0 | Jan 11, 2023 |
| 0.4.0 | Jan 13, 2022 |
| 0.3.0 | Mar 29, 2020 |
| 0.1.1 | Jan 21, 2016 |
#223 in Audio
25 downloads per month
42KB
812 lines
APE
A library for reading and writing APEv2 tags.
Changelog
0.6.0 (04.02.2025)
Fixed multiple values support.
You may need to overwrite your tags if you have called the Tag::add_item method with the same key multiple times,
since the spec states that
"Every Tag Item Key can only occures (at most) once".
- Updated byteorder to 1.5.
- Added
TryFrom<&Item>trait implementation forVec<&str>and&str. - Added
TryFrom<Item>trait implementation forVec<String>andString. - Removed
ItemValueenum andItem.valuefield; useTryFrominstead. - Added
ItemType { Binary, Locator, Text }enum. - Added
Item::new(key, type, value)method. - Removed
Item::from_binary,Item::from_locatorandItem::from_textmethods; useItem::newmethod instead. - Added
Item.add_valuemethod. - Removed
Tag::add_itemmethod; useItem.add_valueinstead. - Added
Item::with_typemethod. - Added
Item::with_valuemethod. - Added
Item.get_typemethod. - Changed
Errorenum:- Removed:
FromUtf8,ParseInt - Added:
ParseItemKey,ParseItemBinary,ParseItemValue,ParseLyrics3V2SizeStr,ParseLyrics3V2SizeInt. - Changed:
BadItemType->InvalidItemType(u32).BadTagSize->InvalidTagSize.
- Removed:
0.5.0 (11.01.2023)
- Added support for multiple values under same key:
- Added
Tag::itemsmethod. - Added
Tag::add_itemmethod. - Replaced
Tag::remove_itembyTag::remove_itemsmethod.Tag::itemmethod returns a first found item.Tag::set_itemremoves all items under the given key and adds a new one.
- Added
- Added derive
CloneforItemandItemValuestructs.
0.4.0 (13.01.2022)
- Switched to 2021 edition.
- Updated byteorder to 1.4
- Support reading/writing/removing tags from opened files.
- Case-insensitive key comparison.
- Support writing an empty tag.
0.3.0 (29.03.2020)
- Switched to 2018 edition.
- Updated byteorder to 1.3
- Fixed type parameters in
Item::from_locatorandItem::from_text. - Removed use of deprecated
Error::description. - Lowercase error description.
Item::to_vecmethod is private now.- Removed
itemsfield from theTagstruct. - Added
Tag::iter()method. - Added
IntoIteratorimplementation forTagstruct. Tag::writemethod replaced bywritefunction.
0.2.0 (10.12.2017)
- Use byteorder 1.0.0.
0.1.2 (18.05.2016)
- Small internal improvements.
0.1.1 (21.01.2016)
- Use
Result<()>instead ofOption<Error>.
0.1.0 (16.01.2016)
- First release.
LICENSE
The MIT License (MIT)
Dependencies
~125KB