feat: Implement pagination fetching for component listen data#471
Merged
feat: Implement pagination fetching for component listen data#471
Conversation
✅ Deploy Preview for multi-scrobbler canceled.
|
2 tasks
67c594f to
2288183
Compare
2288183 to
b6cd45f
Compare
Stole pagination from #390
Koito functionality has diverged enough that it doesn't make sense to provide partial support via LZ components. This also makes timerange pagination easier.
b6cd45f to
023579d
Compare
…ng for duplicate checks * Remove design bias towards "recent" scrobbles with limited timerange and complex shouldRefresh logic * Replace with logic to fetch scrobbles from timeranges that are relevant to queued/dead scrobbles * timeranges are grouped by closely timestamped queued scrobbles * timeranges are cached based on staleAfter
Use a limit/maxFetch upper limit to return a bulk of scrobbles by count, rather than timerange, so that backlogged scrobbles are less likely to cause many fetches on first startup
…errors to add request parameter logging
* Don't cache error * Handle error with logging and put scrobble into dead queue (or increment retries on dead)
…is known nowPlayingMode source #477#issuecomment-4022857648
Scrobbler getScrobblesForTimeRange function isn't aware of the context and we only want now playing for the Source impl anyway. Fixes not scrobbling play because it is also now playing which mathced existing scrobble logic. #430 (comment)
Move most activity checks to TRACE log level to reduce noise at DEBUG level
* Use p-retry to standard retry behavior * Simplify/remove other own-rolled retry logic * Fix superagent request instantiation * Requests are mutable, cannot be retried once executed. Need to make a new request for each retry
* Check queue before adding so that previously cached or re-discovered plays from a source are not added multiple times to the queue (should only be unique plays) * Add timestamp heuristic to dupe matching -- if score is *close* to matching and timestamp is *exact* then nudge it into a match
…tiative sources to avoid fuzzy matching repeats #430 (comment)
Contributor
📦 A new release has been made for this pull request.To play around with this PR, pull an image:
Images are available for x86_64 and ARM64.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Checklist before requesting a review
Type of change
Please delete options that are not relevant.
Describe your changes
Issue number and link, if applicable