TeamNewPipe / NewPipe

A libre lightweight streaming front-end for Android.
https://newpipe.net
GNU General Public License v3.0
31.72k stars 3.08k forks source link

Release v0.27.0 (please TEST!) #10930

Closed Stypox closed 7 months ago

Stypox commented 7 months ago

Testing for regressions

Debug APK (built by our CI in https://github.com/TeamNewPipe/NewPipe/pull/10929): NewPipe_v0.27.0_RC4_debug.zip Release APK (built and signed by @Stypox): NewPipe_v0.27.0_RC4_release.zip

Please report only regressions (i.e. new issues) here, not issues that were already present in previous releases

TODO

NewPipeExtractor version

This version of NewPipe will ship with NewPipeExtractor version 0.24.0.

App changelog

### New - Add support for comment replies #10018 - Add playlist description to playlist fragment #10091 - Add option to reset settings #9236 - Show overall duration of items in a playlist #6045 - Allow ordering bookmarked playlists #8221 ### Improved - [Android 13+] Restore support of custom notification actions #10712 :warning: The first three notification actions (play/pause, previous and next) cannot be customized anymore on these Android versions, as they are set by the system - Allow playing/pausing from the notification when the player is buffering #10712 - Added "free memory" check before downloading [Android N / API 24+] #10505 #10896 - Change the landscape layout of list card item #9975 - Ask for consent before checking for updates #10790 - Moved player notification setting to notification section #9580 ### Fixed - Don't write defaultFormat setting, use default value #10732 - Calculate cache key based on info type instead of item type #10717 - Fix not considering nullability when comparing getAudioTrackType #10909 - Trim search string and remove duplicate records from the database #8242 - Various download fixes #10912 ### Localization and Documentation - Update translations #10890 - Use GitHub markdown to emphasise warning in Readme #10724 ### Development - Update some AndroidX libraries and `compileSdk` to 34 #10086 - Update miscellaneous libraries #10530 - Update Matrix chat URL to new link #10795 - Update jsoup to 1.17.2 #10817 - Update GitHub action dependencies in workflows #10740 - Fix typo in TextLinkifier.java #10889 - Improve app signature check #10618 - Update workflows to use Node 20 #10908 - BaseDescriptionFragment: Assert member is initialized #10781

Extractor changelog

⚠️ **This version contains breaking changes** (thus the bump to 0.24): Due to the removal of the usage of InnerTube API keys, some methods in `YoutubeParsingHelper` which can be used by clients have been changed in TeamNewPipe/NewPipeExtractor#1168: - `areHardcodedClientVersionAndKeyValid` was renamed to `isHardcodedClientVersionValid` - `getKey` was removed, since there is no InnerTube API key anymore - `resetClientVersionAndKey` was renamed to `resetClientVersion` - `isHardcodedYoutubeMusicKeyValid` was renamed to `isHardcodedYoutubeMusicClientVersionValid` - `getYoutubeMusicKey` was renamed to `getYoutubeMusicClientVersion` and now just returns the version instead of (key, name, version), since there is no key anymore and the name is fixed ("67") and therefore hardcoded - other related methods which are not really meant to be used outside of the extractor ### New - [YouTube] Implement emergency meta info TeamNewPipe/NewPipeExtractor#1135 - [YouTube] Add Releases channel tab as an extractor albums channel tab TeamNewPipe/NewPipeExtractor#1147 - [PeerTube] Add support for v6 features (frames and segments) TeamNewPipe/NewPipeExtractor#1142 ### Improved - [YouTube] Detect new account termination messages for YouTube TeamNewPipe/NewPipeExtractor#1160 - Make `getCommentText` return `@Nonnull` values TeamNewPipe/NewPipeExtractor#1162 - [YouTube] Use accessibility data for social links in attributed descriptions when present TeamNewPipe/NewPipeExtractor#1163 ### Fixed - [PeerTube] Fix local kiosk TeamNewPipe/NewPipeExtractor#1144 - [PeerTube] Do not accept non-URLs TeamNewPipe/NewPipeExtractor#1143 - [MediaCCC] Allow obtaining channel tab link handler TeamNewPipe/NewPipeExtractor#1148 - [YouTube] Support new comments data TeamNewPipe/NewPipeExtractor#1163 - [YouTube] Update clients versions, restore access to some streams and more TeamNewPipe/NewPipeExtractor#1168 ### Development - Bump org.jsoup:jsoup from 1.16.2 to 1.17.2 TeamNewPipe/NewPipeExtractor#1145 - Bump com.github.spotbugs:spotbugs-annotations from 4.8.0 to 4.8.3 TeamNewPipe/NewPipeExtractor#1138 - Bump actions/setup-java from 3 to 4 TeamNewPipe/NewPipeExtractor#1132 - Bump org.junit:junit-bom from 5.10.0 to 5.10.2 TeamNewPipe/NewPipeExtractor#1156 - Bump actions/cache from 3 to 4 TeamNewPipe/NewPipeExtractor#1153 - Bump actions/upload-artifact from 3 to 4 TeamNewPipe/NewPipeExtractor#1139 - LocaleCompat.forLanguageTag: return Optional if parsing fails TeamNewPipe/NewPipeExtractor#1151

DLL125 commented 7 months ago

Running latest rc4 been like this in earlier versions of NewPipe as well running Grapheneos (Android 14).

Exception

java.lang.IllegalStateException: ViewHolder views must not be attached when created. Ensure that you are not passing 'true' to the attachToRoot parameter of LayoutInflater.inflate(..., boolean attachToRoot)
    at androidx.recyclerview.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:7790)
    at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6873)
    at androidx.recyclerview.widget.GapWorker.prefetchPositionWithDeadline(GapWorker.java:288)
    at androidx.recyclerview.widget.GapWorker.flushTaskWithDeadline(GapWorker.java:345)
    at androidx.recyclerview.widget.GapWorker.flushTasksWithDeadline(GapWorker.java:361)
    at androidx.recyclerview.widget.GapWorker.prefetch(GapWorker.java:368)
    at androidx.recyclerview.widget.GapWorker.run(GapWorker.java:399)
    at android.os.Handler.handleCallback(Handler.java:959)
    at android.os.Handler.dispatchMessage(Handler.java:100)
    at android.os.Looper.loopOnce(Looper.java:232)
    at android.os.Looper.loop(Looper.java:317)
    at android.app.ActivityThread.main(ActivityThread.java:8532)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
    at com.android.internal.os.ExecInit.main(ExecInit.java:50)
    at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
    at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:359)


privacyonly commented 7 months ago

while downloading 4 files, 1 completed and watchable, the other 2 is at 100% but unwatchable, the other one missing, force close because the download icon is still downloading, it is not downloading, retry all download, can't reproduce.

Exception

java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.Thread.isAlive()' on a null object reference
    at us.shandian.giga.get.DownloadMission.joinForThreads(DownloadMission.java:814)
    at us.shandian.giga.get.DownloadMission.pauseThreads(DownloadMission.java:518)
    at us.shandian.giga.get.DownloadMission.notifyError(DownloadMission.java:360)
    at us.shandian.giga.get.DownloadMission.notifyError(DownloadMission.java:308)
    at us.shandian.giga.get.DownloadRunnable.run(DownloadRunnable.java:145)


raananelefant commented 7 months ago

Works fine for me on my Fairphone 5 running Android 13