Skip to content

CMRT 22: Feature: Nest Fingerprint Queue under Analyze + Status column - #29

Open
Swarnadip-Kar wants to merge 2 commits into
cmrt-worker-mbid-fieldsfrom
cmrt-feature-mbqueue-enhance
Open

CMRT 22: Feature: Nest Fingerprint Queue under Analyze + Status column#29
Swarnadip-Kar wants to merge 2 commits into
cmrt-worker-mbid-fieldsfrom
cmrt-feature-mbqueue-enhance

Conversation

@Swarnadip-Kar

Copy link
Copy Markdown
Owner

Moves the Fingerprint Queue from a standalone top-level sidebar entry into
a child of the Analyze feature, and adds a single Status column to the
queue table model showing each track's AcoustID submission state.

Part A — Nest under Analyze

MusicBrainzQueueFeature is removed as a standalone feature. DlgMusicBrainzQueue
is now created by AnalysisFeature following the MixxxLibraryFeature +
DlgMissing / DlgHidden nesting pattern exactly:

  • Constructor adds a "Fingerprint Queue" TreeItem child.
  • bindLibraryWidget creates and registers the queue view under kQueueViewName.
  • activateChild handles the child click and calls onShow().
    MusicBrainzQueueFeature class files are deleted. DlgMusicBrainzQueue and
    MusicBrainzQueueTableModel are unchanged structurally.

Part B — Status column

musicbrainz_queue_view gains a LEFT JOIN acoustid_queue to expose aq.status.
Tracks with fingerprint_valid=1 but never enqueued still appear; their
status is NULL, shown as "pending" by rawValue().

Notes for reviewers

  • LEFT JOIN acoustid_queue is intentional. Tracks with a valid fingerprint
    but no queue row still appear; this makes the view a complete picture of
    unmatched fingerprints, not just queued ones.
  • kQueueViewName = "MusicBrainzQueue" matches the string already used by
    DlgMusicBrainzQueue::onShow() from CMRT 18 so no view state is lost.
  • rawValue() falls through to BaseSqlTableModel::rawValue() for every column
    except COL_STATUS, so standard library column behaviour is unchanged.
  • DROP VIEW IF EXISTS before CREATE ensures schema changes from development
    take effect without requiring a Mixxx restart.

Future work (not in this PR)

  • Live sidebar count update after worker drains the queue (planned).
  • MusicBrainz ID links in DlgTrackInfo fingerprint tab (planned).

Depends on: cmrt-worker-mbid-fields (#27)

@coveralls

Copy link
Copy Markdown

Coverage Report for CI Build 27523987007

Coverage decreased (-0.006%) to 30.453%

Details

  • Coverage decreased (-0.006%) from the base build.
  • Patch coverage: 33 uncovered changes across 2 files (5 of 38 lines covered, 13.16%).
  • 2 coverage regressions across 2 files.

Uncovered Changes

File Changed Covered %
src/library/musicbrainzqueue/musicbrainzqueuetablemodel.cpp 20 0 0.0%
src/library/analysis/analysisfeature.cpp 18 5 27.78%

Coverage Regressions

2 previously-covered lines in 2 files lost coverage.

File Lines Losing Coverage Coverage
src/library/analysis/analysisfeature.cpp 1 14.86%
src/library/musicbrainzqueue/musicbrainzqueuetablemodel.cpp 1 0.0%

Coverage Stats

Coverage Status
Relevant Lines: 116176
Covered Lines: 35379
Line Coverage: 30.45%
Coverage Strength: 59284.1 hits per line

💛 - Coveralls

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants