-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Comparing changes
Open a pull request
base repository: beetbox/beets
base: master
head repository: beetbox/beets
compare: introduce-album-import-task
- 18 commits
- 44 files changed
- 1 contributor
Commits on Jul 17, 2026
-
Configuration menu - View commit details
-
Copy full SHA for 6e2ed46 - Browse repository at this point
Copy the full SHA 6e2ed46View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0ae5ce1 - Browse repository at this point
Copy the full SHA 0ae5ce1View commit details -
Refactor autotag to use Source abstraction
Introduce Source class to encapsulate metadata extraction logic, replacing scattered `get_most_common_tags` calls throughout codebase. - Add Source class in importer.tasks with artist, name, and metadata - Simplify `distance()` to accept Source.data instead of items list - Update display functions to use Source objects - Cache Source creation with @cached_property on ImportTask This centralizes metadata handling and reduces coupling between autotag and library modules.
Configuration menu - View commit details
-
Copy full SHA for 4926607 - Browse repository at this point
Copy the full SHA 4926607View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e6de67 - Browse repository at this point
Copy the full SHA 8e6de67View commit details -
Configuration menu - View commit details
-
Copy full SHA for 300fae0 - Browse repository at this point
Copy the full SHA 300fae0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 75f6c95 - Browse repository at this point
Copy the full SHA 75f6c95View commit details -
Configuration menu - View commit details
-
Copy full SHA for ca771c7 - Browse repository at this point
Copy the full SHA ca771c7View commit details -
Unify import match change display flow
- Route both album and track preview output through one show_change path with polymorphic Change helpers. - Removes duplicate branching in session prompts and keeps preview rendering behavior centralized.
Configuration menu - View commit details
-
Copy full SHA for bc3978c - Browse repository at this point
Copy the full SHA bc3978cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0b0bbe8 - Browse repository at this point
Copy the full SHA 0b0bbe8View commit details -
Refactor autotag matching around candidate collections
- Replace `tag_album`/`tag_item` proposal flows with `AlbumCandidates` and `TrackCandidates` that own candidate aggregation, ID/text search, sorting, and recommendation calculation. - Update importer/session/plugin call sites to use `task.candidates.recommendation` and in-place candidate resolution, reducing duplicated control flow and centralizing match behavior. - Adjust related tests and exports for the new API, normalize displayed match type casing, and mark the current `mbpseudo` dynamic adjustment behavior as expected-failing pending redesign.
Configuration menu - View commit details
-
Copy full SHA for 24b3706 - Browse repository at this point
Copy the full SHA 24b3706View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9b70845 - Browse repository at this point
Copy the full SHA 9b70845View commit details -
Extract album-specific behavior into AlbumImportTask
- Move album-only methods from ImportTask into a new AlbumImportTask subclass and make ImportTask generic over the library model type. - Export AnyLibModel from the library package and use it to tighten task and duplicate lookup typing. - This separates album and singleton responsibilities, removes the previous override-ignore workaround, and clarifies task contracts for future importer refactors.
Configuration menu - View commit details
-
Copy full SHA for 65f9818 - Browse repository at this point
Copy the full SHA 65f9818View commit details -
Refactor reimport metadata flow across import task types
- Extract shared flexible-attribute overwrite filtering into ImportTask._get_reimport_flexattrs. - Move album-specific reimport preservation into AlbumImportTask and delegate shared item handling to super() to keep orchestration focused and reduce mixed type branching.
Configuration menu - View commit details
-
Copy full SHA for 2e3c2b9 - Browse repository at this point
Copy the full SHA 2e3c2b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 78cfb86 - Browse repository at this point
Copy the full SHA 78cfb86View commit details -
Configuration menu - View commit details
-
Copy full SHA for b4d6e5e - Browse repository at this point
Copy the full SHA b4d6e5eView commit details -
Clean up archive imports during finalize
- Move shared progress finalization to BaseImportTask and introduce ProgressTask for non-importing progress markers. - Run archive cleanup from ArchiveImportTask.finalize so completed move imports remove the archive while partial imports preserve it.
Configuration menu - View commit details
-
Copy full SHA for f8021bb - Browse repository at this point
Copy the full SHA f8021bbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 84b61d9 - Browse repository at this point
Copy the full SHA 84b61d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 62cf563 - Browse repository at this point
Copy the full SHA 62cf563View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff master...introduce-album-import-task