This release contains major refactors for the app in general:
- We now make extensive use of PyGObject's asyncio support for operations like file loading and fetching resources from the internet (for the Identify option).
- Folders can now be opened recursively. To accommodate the increased amount of files that Ear Tag would need to handle, some optimizations were done:
- Loading files is considerably faster now.
- Selecting files from the sidebar and scrolling through the sidebar should both see large speed improvements; a memory leak was also fixed in the sidebar file list.
- Loading files is considerably faster now.
- Errors during file loading no longer stop the loading process.
- The algorithm for the Identify selected files options has been rewritten from scratch; it should be able to more accurately pick the correct tracks.
- We now perform less queries to MusicBrainz, and cover thumbnails are downloaded asynchronously, which makes the identification significantly faster.
- We now perform less queries to MusicBrainz, and cover thumbnails are downloaded asynchronously, which makes the identification significantly faster.
For packagers:
- The minimum required Python version has been bumped from 3.9 to 3.11.
- The minimum required PyGObject version is 3.49.0.
- There are 4 new Python dependencies: aiohttp, aiohttp-retry, aiofiles (not to be confused with
aiofile
) and xxhash.
- python-magic has been replaced by filetype (not to be confused with
filetypes
).
- You need either audioread or the fpcalc command (provided by
chromaprint
) for pyacoustid, since it doesn't always seem to be pulled as a dependency.