NewPipe icon indicating copy to clipboard operation
NewPipe copied to clipboard

OTA Update mechaism (ie. in-app update just for parsing logic)

Open MatthewScholefield opened this issue 3 years ago • 3 comments

Checklist

  • [x] I checked, but didn't find any duplicates (open OR closed) of this issue in the repo.
  • [x] I have read the contribution guidelines given at https://github.com/TeamNewPipe/NewPipe/blob/HEAD/.github/CONTRIBUTING.md.
  • [x] This issue contains only one feature request. I will open one issue for every feature I want to request.

Describe the feature you want

Background/Problem: As a user of NewPipe, I noticed that things frequently break, presumably because YouTube updates their page which breaks certain parsing logic (this is only a guess though).

Idea/Suggestion: Is it possible to entirely decouple the parsing logic so that when YouTube updates, someone just updates the parsing logic, rebuilds the tiny parsing code blob, and attaches this to the most recent github release? Then either the user could be prompted to download the new blob when the app launches.

Primary Motivation:

  • Speed up the release process for parsing changes
  • Make easier / Speed up the user's upgrade process for parsing fixes (in other words, so users don't need to download and install a new apk for these important but small updates).

Since I obviously don't know anything about NewPipe's source code, I apologize if this fundamentally doesn't make sense or wouldn't be feasibly. In either case, I'd love to hear thoughts about this from someone with more knowledge of NewPipe's inner workings.

MatthewScholefield avatar Mar 26 '21 11:03 MatthewScholefield

This was previously discussed in #2045. I'll keep this open so that the team can re-evaluate the suggestion. There's no guarantee that this will still be added though.

triallax avatar Mar 26 '21 12:03 triallax

Related:-https://github.com/TeamNewPipe/NewPipeExtractor/pull/297

ShareASmile avatar Mar 26 '21 13:03 ShareASmile

copying over my input from # 8926 :

Problem: (same as above)

  • As the youtube always keep on changing something (i guess)
  • which makes the newpipe app's yt instance to break (i.e. not play),
  • and that requires extractor updates, and hence corresponding hotfix releases
  • which take anywhere from some hours to a few days.

Proposed solution: treating extractor Code as data

So, considering all this, it will be nice if

  • the newpipe extractor logic - at least for youtube, could somehow be deployed in a "code as data" method;
  • meaning that the updated extractor logic could be loaded on the go by the newpipe app
  • and it can continue to work as intended.

goyalyashpal avatar Sep 11 '22 07:09 goyalyashpal