Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deleted Channels Throw An Error When Refreshing Subscription Feed #3313

Closed
PeterHindes opened this issue Mar 30, 2020 · 11 comments · Fixed by #5876
Closed

Deleted Channels Throw An Error When Refreshing Subscription Feed #3313

PeterHindes opened this issue Mar 30, 2020 · 11 comments · Fixed by #5876
Assignees
Labels
bug Issue is related to a bug feed Issue is related to the feed requires extractor change This issue requires a change to the extractor

Comments

@PeterHindes
Copy link
Contributor

Using the latest version. If the user imports a subscription list with a deleted chaneel such as
image
results in a null pointer exception as a snack-bar error.

Exception

  • User Action: requested feed
  • Request: Loading feed
  • Content Language: US
  • Service: none
  • Version: 0.19.0
  • OS: Linux Android 10 - 29
Crash log

org.schabi.newpipe.local.feed.service.FeedLoadService$RequestException: 0:https://www.youtube.com/channel/UCcNE9TRcOCOoOB0Dy5ediPg
	at org.schabi.newpipe.local.feed.service.FeedLoadService$startLoading$7.apply(FeedLoadService.kt:220)
	at org.schabi.newpipe.local.feed.service.FeedLoadService$startLoading$7.apply(FeedLoadService.kt:63)
	at io.reactivex.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:113)
	at io.reactivex.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:130)
	at io.reactivex.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:397)
	at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
	at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:923)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String org.jsoup.nodes.Element.text()' on a null object reference
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeFeedExtractor.getId(YoutubeFeedExtractor.java:53)
	at org.schabi.newpipe.extractor.feed.FeedInfo.getInfo(FeedInfo.java:39)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getFeedInfoFallbackToChannelInfo$6(ExtractorHelper.java:149)
	at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$ugdV6CfeDCyyO_ocIIpHyBlriuE.call(Unknown Source:4)
	at io.reactivex.internal.operators.maybe.MaybeFromCallable.subscribeActual(MaybeFromCallable.java:46)
	at io.reactivex.Maybe.subscribe(Maybe.java:4154)
	at io.reactivex.internal.operators.maybe.MaybeSwitchIfEmptySingle.subscribeActual(MaybeSwitchIfEmptySingle.java:45)
	at io.reactivex.Single.subscribe(Single.java:3438)
	at io.reactivex.Single.blockingGet(Single.java:2699)
	at org.schabi.newpipe.local.feed.service.FeedLoadService$startLoading$7.apply(FeedLoadService.kt:210)
	... 11 more


@PeterHindes PeterHindes added the bug Issue is related to a bug label Mar 30, 2020
@PeterHindes
Copy link
Contributor Author

Expected behavior is to notify the user and ask them to delete the channel from their subscriptions.

@PeterHindes
Copy link
Contributor Author

Page In Question

@opusforlife2
Copy link
Collaborator

@mauriciocolli Have a look.

@opusforlife2 opusforlife2 mentioned this issue Sep 3, 2020
@Mhowser
Copy link

Mhowser commented Sep 17, 2020

I have the same problem. I have 2 or 3 nonexistent channels without any easy way to remove them.

@Stypox
Copy link
Member

Stypox commented Sep 17, 2020

@Mhowser you can long press on channels you want to unsubscribe from in the subscription tab

@Mhowser
Copy link

Mhowser commented Sep 17, 2020

I know that, it gives no clear indication if the channel is deleted on YouTube. I would need to manually check all 200+ channels that I have.

#3313 (comment) this is a preferred solution. Another solution would be displaying a warning sign next to the deleted channel in the channel list.

@opusforlife2
Copy link
Collaborator

Another solution would be displaying a warning sign next to the deleted channel in the channel list.

I was about to suggest this. Feed refresh is the only time when the app queries all the channels for new videos one by one. That is the optimal way to alert the user about deleted channels.

@BigClarky
Copy link

Sorry if this is considered off topic, how would I go about removing a deleted channel?

@Atemu
Copy link
Contributor

Atemu commented Dec 16, 2020

I'm not sure if that's how I did it when I came across this bug but perhaps you can long-press on the deleted channel in your subscriptions overview and unsubscribe that way?

@BigClarky
Copy link

I'm not sure if that's how I did it when I came across this bug but perhaps you can long-press on the deleted channel in your subscriptions overview and unsubscribe that way?

I had so scroll a bit but that seems to have worked, thanks.

@MD77MD
Copy link

MD77MD commented Feb 22, 2021

any updates,

"Another solution would be displaying a warning sign next to the deleted channel in the channel list."

i like this solution, also we can make newpipe creat a separate group with those problematic channels for the user to decide later. thus whenever newpipe faces a problem with a channel would just dump it there and keep the experience clean

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issue is related to a bug feed Issue is related to the feed requires extractor change This issue requires a change to the extractor
Projects
None yet
Development

Successfully merging a pull request may close this issue.

10 participants