Releases: TeamNewPipe/NewPipeExtractor
v0.22.5
New
- Add support for extracting audio track information #973
- [YouTube] Extract timestamps and URLs in comments #928
- [PeerTube] Support comment replies #941
- [PeerTube] Support searching for playlists and channels #996
- [YouTube] Add support to extract total comment count #794 #1014
Improved
- Use
Description
object for comments text. #987 #991 - [YouTube] Implement bold/italic/strike-through support #990 #1005 #1006
- [YouTube] Improve
YoutubeStreamInfoItemExtractor
#1000- make duration of video premieres available
- returns view count and upload date of streams in playlists
- Add compat
Locale.forLanguageTag()
implementation #910 - [PeerTube] Report Exceptions thrown while getting a stream's subtitles #994
- [SoundCloud] Implement
getUploaderUrl()
andisUploaderVerified()
forPlaylistInfoItemExtractor
#995 - [YouTube] Support live URLs #1022
Fixed
- [YouTube] Fix extracting the detailed error message for unavailable streams #980
- [YouTube] Fix search subscriber count extraction with channel handles #978
- [YouTube] Remove topStandaloneBadge check for view count of stream items #1016
- [YouTube] Fix NPE in search when getting channel items without subscriber count #1020
- [YouTube] Now music mixes can be treated as normal mixes #1013
- [YouTube] Fix channel ID extraction of YouTube channels RSS feeds #1015
- [SoundCloud] Fix extraction of tracks like count #1024
- [YouTube] Fix getting the comment text if the comment contains a hashtag #1021
Development
- Use immutable sets in
YoutubeParsingHelper
and bump the required Java version to 11 #893 - Bump gson from 2.9.1 to 2.10.1 #954 #1009
- Use
StandardCharsets.UTF_8
. #880 - Use JDK 11 for Jitpack gradle builds #975
- [YouTube] Simplify duration parsing #971
- Update Checkstyle from 9.3 to 10.4 #985
- Remove unused autolink dependency #984
- Block wrong nullable/nonnull imports in Checkstyle #989
- Improve
Utils.isBlank(String)
method #992 - Use immutable
Map
factory methods #986 - Bump junit-bom from 5.9.1 to 5.9.2 #1010
- Bump jsoup from 1.15.3 to 1.15.4 #1028
v0.22.4
NOTE: This pre-release has been created to keep track of what Extractor changes went in which NewPipe release. That's its only purpose. The source zips under Assets DO NOT match the changes listed below.
New
- [YouTube] Add comment reply count support #936
- [YouTube] Add
uploaderUrl()
anduploaderVerified()
toPlaylistInfoItem
#959 - [YouTube] Support handles #964
Improved
- [YouTube] Support new metadata format of playlists #958
- [YouTube] Add support for attributed text description #953
Fixed
- [media.ccc.de] Avoid possible NullPointerException in
MediaCCCRecentKiosk
#930 - [SoundCloud] Fix
SoundcloudPlaylistExtractor
: tracks are in correct order #939 - [SoundCloud] Fix getting more comments #943
- [YouTube] Workaround 403 HTTP errors of ANDROID client streams #960
- [YouTube] Support richGridRenderer on channel page to fix extraction of videos in channels #944
- [YouTube] Support all channel usernames #964
Development
v0.22.3
NOTE: This pre-release has been created to keep track of what Extractor changes went in which NewPipe release. That's its only purpose. The source zips under Assets DO NOT match the changes listed below.
Improved
- [YouTube] Get original untranslated title #857
- [YouTube] Return
mqdefault
thumbnails in fast feed #927 - [YouTube] Add JavaScript lexer to parse completely throttling decryption function #905
Fixed
- [YouTube] Fix throttling parameter decryption #891 #912 #925, thanks to @Theta-Dev!
- [YouTube] Update clients version and improve extraction of API key and client version of WEB client, fixing video and audio streams replacement by the ones of a video saying
The following content is not available on this app
#890 - Fixed all tests and the corresponding code #882
- [YouTube] Fixes mixes playlist extraction in some countries (EU) by allowing
YoutubeParsingHelper#consentAccepted
to be set totrue
#882 - [YouTube] Fix extraction of like count #926
- [YouTube] Fix extraction of the Trending kiosk #920
- [YouTube] Fix fallback throttling decryption function regex #934
Development
- Bump spotbugs-annotations from 4.7.0 to 4.7.1 #867
- Bump jsoup from 1.15.1 to 1.15.3 #870 #911
- Use minimum required permissions for GitHub workflows #869
- Bump junit-bom from 5.8.2 to 5.9.0 #879
- Use
Objects.requireNonNull()
#877 - Use
Collections
methods #878 - Bump gson from 2.9.0 to 2.9.1 #883
- Use
String.join()
andCollectors.joining()
#881 - Make improvements to methods using
toArray()
#886 - [YouTube] Remove deprecated throttling decryption code #901
- [YouTube] Checks if the throttling parameter decryption function is valid JavaScript code #882
- Update Gradle wrapper to 7.5.1 #903
- Remove
EMPTY_STRING
#907
v0.22.2
NOTE: This pre-release has been created to keep track of what Extractor changes went in which NewPipe release. That's its only purpose. The source zips under Assets DO NOT match the changes listed below.
New
Improved
- [Bandcamp] Extract stream length #839
Fixed
- [YouTube] Fix extracting YouTube Music client version and key in the EU #848
Development
- Cleanup
TimeAgoParser
#821 - Cleanup of
YoutubeStreamExtractor
and some related classes #782 - Fix some warnings and in Bandcamp use Java 8 streams #822
- Remove Checkstyle suppressions file and fix too-long links #843
- Correct
PeertubePlaylistExtractorTest
unit tests #860 - Remove unused methods #846
- Bump jsoup from 1.14.3 to 1.15.1 #847
- Bump spotbugs-annotations from 4.6.0 to 4.7.0 #845
- Update User-Agent just for tests #838
v0.22.1
v0.22.0
0.22
) due to the introduction of Checkstyle and mixes extraction in related items:
average_bitrate
inAudioStream
has been removed. UsegetAverageBitrate()
instead.emptyDescription
inDescription
has been replaced byEMPTY_DESCRIPTION
.defaultInstance
inPeertubeInstance
has been replaced byDEFAULT_INSTANCE
.InfoItemsSearchCollector
has been removed in favor ofMultiInfoItemsCollector
.
New
- Add
MixInfoItem
and extract YouTube mixes in related items #788
Improved
- Add support for extracting channel subscriber count in
StreamInfo
#796 - [YouTube] Make throttling decryption more resilient to API change #786
- [YouTube] Add more parameters to InnerTube requests, use the iOS client for livestreams #780
Fixed
- Remove the need for a
CommentsInfo
instance inCommentsInfo.getMoreItems
and fixPeertubeCommentsExtractorTest.Default
test #807 - [YouTube] Fix the extraction of series playlists and don't return the view count as the stream count for learning playlists #811
- [YouTube] Fix music mixes in some countries #804
- Fixed various tests + YouTube shorts in channels #813
- [YouTube] Fix extraction of embeddable age-restricted videos and contents with a warning before playback #780
- [YouTube] Extract subtitles for age-restricted videos #829
- [YouTube] Fix throttling decrypter function parsing #832
Development
- Refactored
YoutubeCommentsExtractor
#799 - Bump actions/checkout from 2 to 3 #805
- Bump spotbugs-annotations from 4.5.3 to 4.6.0 #809
- Bump gson from 2.8.9 to 2.9.0 #800
- Removed hardcoded SoundCloud
CLIENT_ID
#815 - Add
@MockOnly
Junit 5 extension #816 - Bump actions/cache from 2 to 3 #819
- Bump rhino from 1.7.13 to 1.7.14 #774
- Add Checkstyle #817
v0.21.14
Fixed
- [YouTube] Parse timestamps with >3 digits correctly #775
- [YouTube] Fix NullPointerException in
YoutubeStreamExtractor.getStreamSegments()
#797, #802 - [SoundCloud] Update clientId #798
Development
- Disabled
SoundcloudStreamExtractorTest#SoundcloudGeoRestrictedTrack#testRelatedItems
as it's unreliable #761 - Cleanup: Remove old ways of getting YT dis/likes and more #755
- Convert tests to JUnit 5 #768
- Bump spotbugs-annotations from 4.5.0 to 4.5.3 #759 #764 #772
Meta
- Update the license to the latest version #818
v0.21.13
Fixed getting the YouTube Javascript function name in YoutubeThrottlingDecrypter
which is required to get video information (streams and other) thanks to @AbduAmeen and @SebastianSong #785