- update to 1.47.0:
* ID3: Allow reading TYER tags in the form of "yyyy-mm-dd"
* ID3: Handle negative extended header sizes :pr:`607`
* ID3: id3 frames fix bad cast due to str.isdigit :pr:`616`
* MP3: Auto-detect MP3 files without ID3 tags :pr:`601`
* WAVE: Extensible wave format support 🐛`595` :pr:`596`
* WAVE, AIFF: Handle truncated IFF files 🐛`496` :pr:`517`
* MP4: add a check for wrong offsets in mp4 files 🐛`426`
* FLAC: Fix cuesheet and seektable saving :pr:`534`
* TrueAudio: Read sample rate as unsigned and handle zero
sample rate :pr:`609`
* docs: Fixed documentation for id3.ID3.save parameter
v2_version
* docs: Make extlinks compatible with sphinx 6.0 :pr:`590`
* docs: Fixed various typos :pr:`602`
* Add some more type annotations :pr:`622`
* Various minor fixes for issues uncovered by oss-fuzz
OBS-URL: https://build.opensuse.org/request/show/1129065
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-mutagen?expand=0&rev=40
* ID3: Allow reading TYER tags in the form of "yyyy-mm-dd"
* ID3: Handle negative extended header sizes :pr:`607`
* ID3: id3 frames fix bad cast due to str.isdigit :pr:`616`
* MP3: Auto-detect MP3 files without ID3 tags :pr:`601`
* WAVE: Extensible wave format support 🐛`595` :pr:`596`
* WAVE, AIFF: Handle truncated IFF files 🐛`496` :pr:`517`
* MP4: add a check for wrong offsets in mp4 files 🐛`426`
* FLAC: Fix cuesheet and seektable saving :pr:`534`
* TrueAudio: Read sample rate as unsigned and handle zero
sample rate :pr:`609`
* docs: Fixed documentation for id3.ID3.save parameter
v2_version
* docs: Make extlinks compatible with sphinx 6.0 :pr:`590`
* docs: Fixed various typos :pr:`602`
* Add some more type annotations :pr:`622`
* Various minor fixes for issues uncovered by oss-fuzz
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mutagen?expand=0&rev=56
- Update to 1.46.0:
* Drop Support for Python 3.5 and 3.6 #pr487 #pr568
* Add pyproject.toml and switch to poetry for development only
#pr513
* tests: no longer include flake8 in the test suite, it has to
be run separately now #pr571
* Start adding some type annotations and integrate mypy #pr488
* easyid3: map easyid3 grouping to TIT1 #pr505
* mutagen-inspect: add usage documentation #pr540
* wave: Fix bitrate calculation #pr566
* Increase buffer size for rewriting files from 256K to 1M to
improve performance with network shares #pr570
* Other changes: code cleanup #pr514, typos #pr565, remove upper
limit for python version #pr579
OBS-URL: https://build.opensuse.org/request/show/1042384
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mutagen?expand=0&rev=52
- update to 1.45.1:
* Fix flake8 tests when run after calling ``setup.py build`` 🐛`482`
* No longer use mmap when rewriting files. Fixes slow save performance with Windows network shares, ZFS and more :pr:`483` :pr:`484`
* WAVE support with ID3 tags :pr:`408` (:user:`Philipp Wolfer <phw>`, :user:`Borewit`)
* DSDIFF support with ID3 tags :pr:`473` :pr:`472` (:user:`Philipp Wolfer <phw>`)
* MP4: Add support for nero chapters :pr:`398` (:user:`Martin Weinelt <mweinelt>`)
* wavpack: add support for wavpack DSD :pr:`464` (:user:`Timothy Redaelli <drizzt>`)
* wavpack: add bits_per_sample :pr:`467` (:user:`Timothy Redaelli <drizzt>`)
* MP4: handle DecoderSpecificInfo with wrong instance size :pr:`465`
* docs: various fixes :pr:`461` (:user:`Terence Eden <edent>`), :pr:`474` (:user:`naglis`)
* tests: depend on flake8 now (instead of pycodestyle and pyflakes)
* docs: fix warnings with sphinx v3
* Fuzzing integration with `python-afl <https://github.com/jwilk/python-afl>`__ :pr:`449`
* Fix various unhandled error cases in ogg, asf, oggvorbis, id3 :pr:`441`, :pr:`445`, :pr:`446`, :pr:`447`, :pr:`448`, :pr:`454` (:user:`Julien Voisin <jvoisin>`)
* aac: Fix ZeroDivisionError in case frequency is unknown
* musepack: handle truncated stream header
* musepack: handle invalid sample rate index
* musepack: handle duplicate RG/SH packets
* oggtheora: handle truncated header packet
* oggtheora: fail if FRN in the header packet is zero
* oggtheora: handle empty pages in more cases
* ogg: handle empty pages in to_packets()
* aiff: handle overflow in read_float() :pr:`456`
OBS-URL: https://build.opensuse.org/request/show/835174
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-mutagen?expand=0&rev=37
* Fix flake8 tests when run after calling ``setup.py build`` 🐛`482`
* No longer use mmap when rewriting files. Fixes slow save performance with Windows network shares, ZFS and more :pr:`483` :pr:`484`
* WAVE support with ID3 tags :pr:`408` (:user:`Philipp Wolfer <phw>`, :user:`Borewit`)
* DSDIFF support with ID3 tags :pr:`473` :pr:`472` (:user:`Philipp Wolfer <phw>`)
* MP4: Add support for nero chapters :pr:`398` (:user:`Martin Weinelt <mweinelt>`)
* wavpack: add support for wavpack DSD :pr:`464` (:user:`Timothy Redaelli <drizzt>`)
* wavpack: add bits_per_sample :pr:`467` (:user:`Timothy Redaelli <drizzt>`)
* MP4: handle DecoderSpecificInfo with wrong instance size :pr:`465`
* docs: various fixes :pr:`461` (:user:`Terence Eden <edent>`), :pr:`474` (:user:`naglis`)
* tests: depend on flake8 now (instead of pycodestyle and pyflakes)
* docs: fix warnings with sphinx v3
* Fuzzing integration with `python-afl <https://github.com/jwilk/python-afl>`__ :pr:`449`
* Fix various unhandled error cases in ogg, asf, oggvorbis, id3 :pr:`441`, :pr:`445`, :pr:`446`, :pr:`447`, :pr:`448`, :pr:`454` (:user:`Julien Voisin <jvoisin>`)
* aac: Fix ZeroDivisionError in case frequency is unknown
* musepack: handle truncated stream header
* musepack: handle invalid sample rate index
* musepack: handle duplicate RG/SH packets
* oggtheora: handle truncated header packet
* oggtheora: fail if FRN in the header packet is zero
* oggtheora: handle empty pages in more cases
* ogg: handle empty pages in to_packets()
* aiff: handle overflow in read_float() :pr:`456`
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mutagen?expand=0&rev=50
- version update to 1.44.0
* Python 2 is no longer supported 🐛`410`
* mp4: Fix some infinite loops in the mp4 parser :pr:`429` (:user:`Julien Voisin <jvoisin>`)
* flac: Fix pickle support for SeekPoint :pr:`428` (:user:`point-source`)
* aiff: Fix a division by zero :pr:`431` (:user:`Julien Voisin <jvoisin>`)
* asf: Catch a MemoryError :pr:`432` (:user:`Julien Voisin <jvoisin>`)
* oggtheora: Fix a division by zero :pr:`430` (:user:`Julien Voisin <jvoisin>`)
OBS-URL: https://build.opensuse.org/request/show/790031
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mutagen?expand=0&rev=48
- Update to version 1.43.0:
* Python 3.4 is no longer supported
* Building requires ‘setuptools’ now, CLI tools depend on
‘pkg_resources’
* CLI tools are setuptools entry points now
* Fix collections ABCs deprecation warning #pr371
* Minor typo fixes #pr375
* MP3: increase max initial wrong syncs from 1000 to 1500 #pr376
* FLAC: support files with multiple VORBIS_COMMENT blocks like
libflac #pr378
* ID3: Improved TYER/TDAT/TIME upgrade to TDRC #pr385
* MP4: Add support for iTunes HD Video tag (hdvd) #pr386
* Add AC3 file type #pr400
* AIFF: renamed sample_size to bits_per_sample (sample_size still
works) #pr403
* API doc fixes #pr404 #pr407
* Add support for Tom’s lossless Audio Kompressor (TAK) #pr405
* OptimFROG: support encoder version >= 5.100 #pr406
* AIFF: Fix handling of padding bytes, safe chunk manipulation #pr409
* Fix typos #pr412
- Add Requires: python-setuptools since CLI tools now depend on it
OBS-URL: https://build.opensuse.org/request/show/762796
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mutagen?expand=0&rev=46
- Update to version 1.39:
* Tests:
* Require hypothesis
* Run pycodestyle/pyflakes tests by default. Skip with --no-quality or
-m no quality when using pytest directly.
* Python 3.3 is no longer supported
* MP3: Improved bitrate accuracy for files with XING header
* ASF: Fix case where some tags resulted in broken ASFUnicodeAttribute
instances
* Add support for filesystems which don’t support opening files read/write
(gvfs over fuse for example)
* mid3v2: Add support for USLT
* Other minor improvements
- Update to version 1.38:
* ID3:
* Add iTunes grouping frame id3.GRP1
* Fix exposing text frames where the text can’t be encoded with
the reported encoding due to merging of frames
* OGG: Fix wrong StreamInfo.length (small negative value) for all
ogg based formats in rare cases.
- Rebased the reduce-test-length.diff patch.
- Added the hypothesis, pycodestyle and pyflakes python modules to the
BuildRequires, since they are needed for the tests.
OBS-URL: https://build.opensuse.org/request/show/540486
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mutagen?expand=0&rev=30
- Use singlespec macros.
- Drop fix-tests-tools-names.diff which is not needed anymore.
- Add reduce-test-length.diff to reduce the number of iterations in a test
that is repeated for each data test file, for every byte, so it only tests
each file for the first 10 bytes. This way we reduce the time it takes to
test mutagen (and the corresponding cpu usage in obs) from 1078 seconds
(nearly 18 minutes) to 53 seconds (for each python version).
OBS-URL: https://build.opensuse.org/request/show/486959
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mutagen?expand=0&rev=28
- update to version 1.36.2:
* ID3: Always write little endian utf-16 with BOM.
Fixes tests on big endian machines :pr:`289`
- update to version 1.36.1:
* Support GAE runtime 🐛`286`
* FLAC: Fix crash when loading files with zero samples 🐛`287`
* MP3: Handle broken lame tags written by older lame versions
- update to version 1.36:
* ID3: Ignore trailing empty values for v2.3 text frames 🐛`276`
* ID3: Write large APIC frames last 🐛`278`
* EasyID3: support saving as v2.3 🐛`188`
* FLAC: Add StreamInfo.bitrate 🐛`279`
* mid3cp: Add ``--merge`` option 🐛`277`
* MP4: Allow loading files without audio tracks 🐛`272`
- update to version 1.35.1:
* Revert back to distutils 🐛`273`
- update to version 1.35:
* Tests: Require pytest
* Tools: Install .exe launchers on Windows
* setup.py: Require setuptools
* ID3:
* Fix loading files with CRM frames 🐛`239`
* Fix loading AENC, LINK, GRID frames with no payload
* Merge duplicate text frames with same key on load 🐛`172`
* Allow parsing of duplicate APIC frames 🐛`172`
* Parse utf-16 text fields with missing BOM 🐛`267`
* Increase max resyncs for the mpeg frame search 🐛`268`
- Add fix-tests-tools-names.diff. This fixes the tests to run
successfully since they try to extract the module name from the tool
name, but we changed the tools names so they can be co-installed
OBS-URL: https://build.opensuse.org/request/show/452417
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mutagen?expand=0&rev=24
- Updated to 1.28
* Various minor fixes to make mutagen behave the same under Python3 as under Python2.
* Update gpl text [205]
* Documentation: Add example for how to create a new flac.Picture [209]
* ID3:
* Various error handling fixes ([110], [211], ...)
* Don’t hide ID3 loading errors with ID3FileType.
* In case a synch safe marked frame isn’t sync safe, only warn [210]
* Removed PEDANTIC mode
* Tools:
* Add signal handling [170]
* mid3cp: Make it work under Windows.
* mutagen-inspect: Make it work under Windows+Python3 [216]
* Support unicode file paths under Windows+Python2 [214]
* Support file paths with invalid encoding under Unix+Python3.
- Adapt the spec file for SLE11
- Replace names of scripts in setup.py
OBS-URL: https://build.opensuse.org/request/show/294154
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mutagen?expand=0&rev=16