lbryio / lbryio/lbry-desktop

My Library - use file_list data instead of resolving

Open
#1,203 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area: ux area: viewer level: 3 needs: exploration priority: medium Tom's Wishlist type: improvement
Dominant language
JavaScript
Stars
3.5k
Forks
409
PR merge metrics
No merged PRs in 30d

Description

## The Issue
Currently when the Downloaded/Published list is processed the first time, each URL is resolved to capture metadata required to populate tile information. With the recent file_list changes, we should have all the information required in the file_list api call so the resolve calls can be spared. This also applies to Published files which should be part of file_list and if they are not, the fall back would be claim_list_mine. We should also take into account a claim that has been abandoned (would fix https://github.com/lbryio/lbry-app/issues/694) - in this case, the file_list entry stays in tact but new resolves would fail - we can add a note that the claim was removed but the user can still see the claim/play the file.

We should only have to resolve when accessing the claim in case there are any updates to metadata/files. I will open a separate issue on how to deal with both scenarios. Think it would be nice to alert the user that metadata updated on a claim they had downloaded. When a source file is updated on an existing claim, a user should also receive a notice with the option to download the new content.

### Expected behaviour
Faster listing of Downloads/Published data

### Actual behaviour
All Downloads/Published files need to be resolved.

## System Configuration

- LBRY Daemon version: 0.19.1
- LBRY App version: 0.21.2
- LBRY Installation ID:
- Operating system: Windows

## Anything Else

## Screenshots

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the Downloaded and Published list processing and the file_list API call; verify whether Published entries require claim_list_mine as a fallback. Done means these lists use file_list data without resolving every URL, handle abandoned claims without losing playable entries, and only resolve when a claim is opened.

Written by the indexing model from the issue text.

Assessment

Tech stack
electron, javascript, react
Domain
api, frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.