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

Release 0.20.3 #4851

Closed
Stypox opened this issue Nov 10, 2020 · 45 comments
Closed

Release 0.20.3 #4851

Stypox opened this issue Nov 10, 2020 · 45 comments

Comments

@Stypox
Copy link
Member

Stypox commented Nov 10, 2020

Changelogs

App

New

Improved

Fixed

Localization

Development

(huge thanks to @Isira-Seneviratne)

Other

Extractor

Breaking

NewPipe Extractor now requires at least Java 8!

New

Improvement

Fixed

Development

APK for testing

‼️Only report NEW issues here, not known ones‼️
0_20_3_RC5.zip
Corresponding PR: #4852

@Stypox Stypox mentioned this issue Nov 10, 2020
3 tasks
@Stypox Stypox pinned this issue Nov 10, 2020
@triallax
Copy link
Contributor

triallax commented Nov 10, 2020

@Stypox all your PR links for the extractor point to PRs from NewPipe, not the extractor. Same in #4852.

@test2a
Copy link

test2a commented Nov 10, 2020

why does this say 0.20.2 when the app shows release_0.20.3. anyways this error popped up but video was playing behind it

Exception

  • User Action: ui error
  • Request: App crash, UI failure
  • Content Country: PK
  • Content Language: en-US
  • App Language: en_US
  • Service: none
  • Version: 0.20.2
  • OS: Linux Android 8.0.0 - 26
Crash log

java.lang.RuntimeException: Error receiving broadcast Intent { act=org.schabi.newpipe.VideoDetailFragment.ACTION_PLAYER_STARTED flg=0x10 } in org.schabi.newpipe.MainActivity$3@329288f
	at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$-android_app_LoadedApk$ReceiverDispatcher$Args_52201(LoadedApk.java:1349)
	at android.app.-$Lambda$FilBqgnXJrN9Mgyks1XHeAxzSTk.$m$0(Unknown Source:4)
	at android.app.-$Lambda$FilBqgnXJrN9Mgyks1XHeAxzSTk.run(Unknown Source:0)
	at android.os.Handler.handleCallback(Handler.java:869)
	at android.os.Handler.dispatchMessage(Handler.java:101)
	at android.os.Looper.loop(Looper.java:206)
	at android.app.ActivityThread.main(ActivityThread.java:6784)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:852)
Caused by: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
	at androidx.fragment.app.FragmentManager.checkStateLoss(FragmentManager.java:1691)
	at androidx.fragment.app.FragmentManager.enqueueAction(FragmentManager.java:1731)
	at androidx.fragment.app.BackStackRecord.commitInternal(BackStackRecord.java:321)
	at androidx.fragment.app.BackStackRecord.commit(BackStackRecord.java:286)
	at org.schabi.newpipe.util.NavigationHelper.showMiniPlayer(NavigationHelper.java:399)
	at org.schabi.newpipe.MainActivity$3.onReceive(MainActivity.java:822)
	at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$-android_app_LoadedApk$ReceiverDispatcher$Args_52201(LoadedApk.java:1338)
	... 9 more


edit: every video that i click back on, it shows the page twice before the player falls down and a black screen when going from full screen

@opusforlife2
Copy link
Collaborator

edit: every video that i click back on, it shows the page twice before the player falls down and a black screen when going from full screen

Saw this as well. Finished a video. Tapped back. It went from the player with the replay button to the thumbnail with red progress indicator. Tapped back again. Same page, without the indicator. Finally, the third tap back minimized the player.

@opusforlife2
Copy link
Collaborator

Initiate a gesture such that once the video ends and exits full screen, your finger will not be in the embedded player area.

If the gesture icon (volume/brightness) is visible on screen when the video ends, the icon remains there indefinitely. If you tap the player area again, it gets replaced by the Replay button.

@DI555

This comment has been minimized.

@DI555
Copy link

DI555 commented Nov 11, 2020

and skipping to java8 won't touch existent min_sdk_19/android4.4 of NP ?
api26 will be only the target_sdk(not the min_sdk), is it right?

upd
yes, all works on my all devices, it seems we still on min_sdk_19! Great!

@DI555
Copy link

DI555 commented Nov 11, 2020

it's not the dialog when just silently minimize the comment with a bunch of thumbups...
but #4367 it's not improvement , it is just anti-improvement((, for sorrow((

@DI555
Copy link

DI555 commented Nov 11, 2020

i dunno, may be it's a global...
but on yt stream translation there is no on-screen menu with choosing of video quality, but when you see yt stream by web page - the option to choose video quality exists.

@opusforlife2
Copy link
Collaborator

it's not the dialog when just silently minimize the comment with a bunch of thumbups...

@DI555 You don't get to say this after triple posting the same comment, and I can't help notice that it's been 3 hours since I replied to you on the related PR and you haven't said anything there. Is it your intent to just complain or do you want to have a proper discussion?

@DI555
Copy link

DI555 commented Nov 11, 2020

oh, sorry..., i might posted it to different topics, i may delete others if it's needed!

@opusforlife2
Copy link
Collaborator

It is alright. I have minimized them as 'Duplicate'. Now I'm waiting for your reply.

@yuval-herman
Copy link
Contributor

I had a problem when running multiple instances of newpipe that I didn't had before, somehow this version, hijacked the notification from the previous release. I don't know how to reproduce though as it happened only once...

@opusforlife2
Copy link
Collaborator

@huckvrni Do you mean #4653?

@yuval-herman
Copy link
Contributor

Nope, it didn't crash, it just somehow merged the queued backgroud list so that both instances controlled it at the same time¯_(ツ)_/¯

@DI555

This comment has been minimized.

@DI555

This comment has been minimized.

@yajanbasel

This comment has been minimized.

@OREllis

This comment has been minimized.

@yajanbasel
Copy link

Yeah, was just about to post an issue for that before seeing your comment. Looks like youtube's changed some stuff around again, getting this on most videos, infinite loading on others. Was completely fine a couple hours ago though.

It seems that the issue was on YouTube's part and they've fixed it. So, NewPipe works fine now. :)

@nikhilCad

This comment has been minimized.

@opusforlife2
Copy link
Collaborator

oh, could i answer here, please

@DI555 No. As you can see in the top comment,

‼️Only report NEW issues here, not known ones‼️

We shouldn't clutter the RC thread with off-topic conversation. You should reply to my comment on the relevant PR. Minimizing your comment here as off-topic.

@opusforlife2
Copy link
Collaborator

Does this thing have the landscape mode?

@nikhilCad What does this comment have to do with finding bugs in the release candidate?

@opusforlife2
Copy link
Collaborator

The two finger swipe to close player: sometimes it makes the player swipe down to the bottom as it closes, but sometimes, the moment your fingers leave the screen, the player instantly vanishes without completing the animation. I can reproduce this fairly consistently if one of my fingers travels farther down than the other during the swipe action.

@Stypox
Copy link
Member Author

Stypox commented Nov 13, 2020

Every video that i click back on, it shows the page twice before the player falls down and a black screen when going from full screen

Fixed in RC2: 0_20_3_RC2.zip

Relevant commit: 838b488

@vkay94
Copy link
Contributor

vkay94 commented Nov 13, 2020

@opusforlife2 That's a bug from the beginning of the unified player with its collapse ability. It will need some more proper multi-touch-handling.
You can reproduce it well, when you start dragging the player from the bottom a little bit, then press with another finger on the screen and finally swipe up with the first finger while releasing it.

@Stypox
Copy link
Member Author

Stypox commented Nov 14, 2020

RC3: 0_20_3_RC3.zip

@undeadfox
Copy link
Contributor

* Merged PR #4771
* Added [81c2451] to `dev`

Merged and added to dev', but RC3 is built from release_0.20.3'?

@Stypox
Copy link
Member Author

Stypox commented Nov 14, 2020

Yes, but Weblate does not allow fetching files to translate from other branches (as far as we know), so I had to put the changelog on dev. The RC3 is built upon release_0.20.3 after merging #4771 and rebasing onto dev

@Stypox
Copy link
Member Author

Stypox commented Nov 15, 2020

Another release candidate, hopefully the last one:

RC4: 0_20_3_RC4.zip

@Stypox
Copy link
Member Author

Stypox commented Nov 15, 2020

  • Add Uzbek language (O'zbek) and remove Neapolitan 7a6e0d6
    Neapolitan only has 43 translated strings, so it should not appear as a possible language

RC5: 0_20_3_RC5.zip

@TobiGr TobiGr closed this as completed Nov 18, 2020
@B0pol
Copy link
Member

B0pol commented Nov 18, 2020

@opusforlife2
Copy link
Collaborator

opusforlife2 commented Nov 19, 2020

Looks like a bug might have slipped through?

Got this when I switched back to Newpipe with a paused video and it was already booted from RAM.

Edit: This is fully reproducible.

Edit 2: It doesn't even need a paused video. Just having video details open and letting the app get removed from RAM is enough.

Exception

  • User Action: ui error
  • Request: App crash, UI failure
  • Content Country: CH
  • Content Language: en-IN
  • App Language: en_IN
  • Service: none
  • Version: 0.20.3
  • OS: Linux Android 9 - 28
Crash log

java.lang.NullPointerException: Attempt to invoke virtual method 'char java.lang.String.charAt(int)' on a null object reference
	at j$.util.DesugarGregorianCalendar.from(:1)
	at org.schabi.newpipe.extractor.localization.DateWrapper.date(DateWrapper.java:51)
	at org.schabi.newpipe.info_list.holder.StreamInfoItemHolder.getFormattedRelativeUploadDate(StreamInfoItemHolder.java:98)
	at org.schabi.newpipe.info_list.holder.StreamInfoItemHolder.getStreamInfoDetailLine(StreamInfoItemHolder.java:83)
	at org.schabi.newpipe.info_list.holder.StreamInfoItemHolder.updateFromItem(StreamInfoItemHolder.java:65)
	at org.schabi.newpipe.info_list.InfoListAdapter.onBindViewHolder(InfoListAdapter.java:337)
	at org.schabi.newpipe.info_list.InfoListAdapter.onBindViewHolder(InfoListAdapter.java:360)
	at androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:7107)
	at androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:6012)
	at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6279)
	at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6118)
	at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6114)
	at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2303)
	at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1627)
	at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1587)
	at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:665)
	at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134)
	at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
	at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1083)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at androidx.viewpager.widget.ViewPager.onLayout(ViewPager.java:1775)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at com.google.android.material.appbar.HeaderScrollingViewBehavior.layoutChild(HeaderScrollingViewBehavior.java:148)
	at com.google.android.material.appbar.ViewOffsetBehavior.onLayoutChild(ViewOffsetBehavior.java:43)
	at androidx.coordinatorlayout.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:918)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
	at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
	at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at androidx.coordinatorlayout.widget.CoordinatorLayout.layoutChild(CoordinatorLayout.java:1213)
	at androidx.coordinatorlayout.widget.CoordinatorLayout.onLayoutChild(CoordinatorLayout.java:899)
	at com.google.android.material.bottomsheet.BottomSheetBehavior.onLayoutChild(BottomSheetBehavior.java:380)
	at androidx.coordinatorlayout.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:918)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at androidx.drawerlayout.widget.DrawerLayout.onLayout(DrawerLayout.java:1231)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
	at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)
	at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)
	at android.widget.LinearLayout.onLayout(LinearLayout.java:1565)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
	at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)
	at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)
	at android.widget.LinearLayout.onLayout(LinearLayout.java:1565)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
	at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
	at com.android.internal.policy.DecorView.onLayout(DecorView.java:753)
	at android.view.View.layout(View.java:20693)
	at android.view.ViewGroup.layout(ViewGroup.java:6194)
	at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2799)
	at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2316)
	at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1463)
	at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7190)
	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:949)
	at android.view.Choreographer.doCallbacks(Choreographer.java:761)
	at android.view.Choreographer.doFrame(Choreographer.java:696)
	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:935)
	at android.os.Handler.handleCallback(Handler.java:873)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loop(Looper.java:193)
	at android.app.ActivityThread.main(ActivityThread.java:6718)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:491)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)


@Wahbam
Copy link

Wahbam commented Nov 19, 2020

Fixed

This has not been fixed. It has been made worse than in 20.2. Now 9t just doesn't spit out a crash report, but hangs the app instead, necessitating a forced stop. After force stoping, opening the app again does't work, and the new instance must be closed or allowed to time out before starting the app yet again. Additionally, this now happens not only when the video is paused, but also while it's playing and I try to skip << or >>.

It happens so frequently that I've barely used newpipe for almost three weeks. It's usually fine the first 2 to 5 times I try to skip back or forward in a video, but then hangs every time and sometimes happens on the first attempt to rewind/FF. I've used 20.2, 20.3.rc3, and 20.3.rc5 with same problem, crashing 20 times/day before I get fed up. Sadly, the app is unusable.

edit: corrected version codes

@mabachel
Copy link

Why is neither release 0.20.2 nor 0.20.3 on F-Droid?

@B0pol
Copy link
Member

B0pol commented Nov 19, 2020

@mabachel 0.20.2 there were troubles with builds.

0.20.3 will hopefully come in few days (usual delay with F-Droid).

By the way, you can use Team NewPipe's F-Droid repository

https://newpipe.schabi.org/FAQ/tutorials/install-add-fdroid-repo/

It's available as soon as the release is out on GitHub

@opusforlife2
Copy link
Collaborator

@Isira-Seneviratne #4851 (comment) This looks like something to do with your date/time PR. Is that correct?

@Isira-Seneviratne
Copy link
Member

@Isira-Seneviratne #4851 (comment) This looks like something to do with your date/time PR. Is that correct?

Yeah, the date() method converts the underlying OffsetDateTime instance to a Calendar using GregorianCalendar.from(ZonedDateTime).

@opusforlife2
Copy link
Collaborator

@Isira-Seneviratne So do you know how to fix this?

@Isira-Seneviratne
Copy link
Member

@Isira-Seneviratne So do you know how to fix this?

I'm not sure what's causing the issue, since the zone offset is set to UTC in the constructor.

@opusforlife2
Copy link
Collaborator

@Isira-Seneviratne What is very strange is how come this issue happens only when trying to resume and not when you open video details for the first time?

@Isira-Seneviratne
Copy link
Member

Yeah, it's a bizarre issue.

I'll try changing the date() call to offsetDateTime() and see if I encounter any issues.

@532910
Copy link

532910 commented Nov 19, 2020

Why 0.20.3 is not suggested on NewPipe's F-Droid repo?

image

@Isira-Seneviratne
Copy link
Member

@opusforlife2 I tried to recreate the issue you encountered with the changes, but it didn't appear.

I'll create a PR, could you check if the issue's there?

@532910
Copy link

532910 commented Nov 19, 2020

Why 0.20.3 is not suggested on NewPipe's F-Droid repo?

Now suggested.

@iamthelara
Copy link

Exception

  • User Action: ui error
  • Request: App crash, UI failure
  • Content Country: IN
  • Content Language: en-US
  • App Language: en_US
  • Service: none
  • Version: 0.20.3
  • OS: Linux Android 10 - 29
Crash log

io.reactivex.exceptions.OnErrorNotImplementedException: The exception was not handled due to missing onError handler in the subscribe() method call. Further reading: https://github.com/ReactiveX/RxJava/wiki/Error-Handling | java.lang.NullPointerException: Callable returned null
	at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:704)
	at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:701)
	at io.reactivex.internal.observers.LambdaObserver.onError(LambdaObserver.java:77)
	at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.checkTerminated(ObservableObserveOn.java:281)
	at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:172)
	at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255)
	at io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:124)
	at android.os.Handler.handleCallback(Handler.java:883)
	at android.os.Handler.dispatchMessage(Handler.java:100)
	at android.os.Looper.loop(Looper.java:237)
	at android.app.ActivityThread.main(ActivityThread.java:8167)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
Caused by: java.lang.NullPointerException: Callable returned null
	at java.util.Objects.requireNonNull(Objects.java:228)
	at io.reactivex.internal.functions.ObjectHelper.requireNonNull(ObjectHelper.java:39)
	at io.reactivex.internal.operators.observable.ObservableFromCallable.subscribeActual(ObservableFromCallable.java:43)
	at io.reactivex.Observable.subscribe(Observable.java:12284)
	at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96)
	at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
	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:919)


@TobiGr TobiGr unpinned this issue Nov 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests