Commit Graph

2585 Commits

Author SHA1 Message Date
evermind 5a0206397c
searchfilters: unit tests for all derived BaseSearchFilters classes 2023-12-30 10:31:14 +01:00
Stypox 3e68e17910
Fix yt tests 2023-12-30 10:31:14 +01:00
evermind 8280fd4a60
searchfilters: Test: adjust and extend YouTube tests 2023-12-30 10:31:14 +01:00
Stypox 019ef62760
searchfilters: Test: adjust Bandcamp tests 2023-12-30 10:31:14 +01:00
evermind 1fc0fc79cc
searchfilters: Test: adjust MediaCCC tests 2023-12-30 10:31:14 +01:00
Stypox 4a8b7f6103
Fix soundcloud tests 2023-12-30 10:31:13 +01:00
evermind 43479ab0ae
searchfilters: Test: adjust SoundCloud tests 2023-12-30 10:31:13 +01:00
Stypox c6b335c20f
Fix peertube tests 2023-12-30 10:31:13 +01:00
evermind e06fac6ef3
searchfilters: Test: adjust PeerTube tests 2023-12-30 10:31:13 +01:00
Stypox 49c354598e
Fix base tests 2023-12-30 10:31:13 +01:00
evermind d7b043059c
searchfilters: added common helper methods for .*SearchExtractorTest's 2023-12-30 10:31:13 +01:00
evermind af1f1de36d
bandcamp: remove limit page.size as statement seems no longer true
Without that code the search results will complete and the gui will not
spin forever.
2023-12-30 10:31:13 +01:00
Stypox ec19719641
[YouTube] 2023-12-30 10:31:13 +01:00
Stypox 0a4b88955a
searchfilters: convert youtube to new framework
Available content filters:
    Youtube
    - all
    - videos
    - channels
    - playlists
    Youtube Music
    - Songs
    - Videos
    - Albums
    - Playlists
    - Artists

    Available sort filters:
    - 'Sort by'
    - Upload Date
    - Duration
    - Features
2023-12-30 10:31:13 +01:00
Stypox 8568f196ec
[Bandcamp] 2023-12-30 09:09:42 +01:00
evermind debb7760cd
searchfilters: convert bandcamp to new framework
Available content filters:
- All
- artists & labels
- albums
- tracks
2023-12-30 09:09:13 +01:00
evermind e084338a0f
searchfilters: convert media_ccc to new framework
Available content filters:
- All
- Conferences
- Events
2023-12-30 09:07:40 +01:00
evermind d1bf446f1c
searchfilters: Make SoundcloudSearchQueryHandlerFactory singleton 2023-12-30 09:07:39 +01:00
evermind 17320ef44e
searchfilters: Soundcloud give empty page if no more results 2023-12-30 09:07:39 +01:00
Stypox a043cbdc49
[SoundCloud] 2023-12-30 09:07:39 +01:00
evermind f484f20100
searchfilters: convert Soundcloud to use new framework
Available content filters:
- All
- Tracks
- Users
- Playlists

Available sort filters:
- 'Sort by'
- Length
- license
2023-12-30 09:07:39 +01:00
Stypox c7ef8a9e68
[PeerTube] 2023-12-30 09:07:39 +01:00
evermind 9e75344611
searchfilters: convert Peertube to new framework
Available content filters:
- All
- Videos
- Channels
- Playlists
Sepia
- SepiaSearch

Available sort filters:
- 'Sort by'
- stream kind
- sensitive
- 'Date'
- 'Duration'
2023-12-30 09:07:35 +01:00
Stypox 1dc746a599
Changes due to channel tabs 2023-12-29 19:19:11 +01:00
evermind b8eb1212a8
searchfilters: convert core components to new framework 2023-12-29 19:08:26 +01:00
evermind 3956e22c8e
merge later ../extractor/src/main/java/org/schabi/newpipe/extractor/search/filter/FilterGroup.java 2023-12-29 19:08:26 +01:00
Stypox 8409215ce2
equals hashCode to FilterItem 2023-12-29 19:08:26 +01:00
evermind 3398a54908
searchfilters: a framework to create sort and content filter objects
FilterContainer.java:
=====================
This class is a container that keeps either content filters or sort filters organized.
Sort/content filters ({@link FilterItem}s) are organized within {@link FilterGroup}s.

FilterGroup.java:
=================
This class represents a filter category/group. For example 'Sort order'.

Its main purpose is to host a bunch of {@link FilterItem}s that belong to that
group. Eg. 'Relevance', 'Views', 'Rating'

FilterItem.java:
================
This class represents a single filter option.
*More in detail:*
For example youtube offers the filter group 'Sort order'. This group
consists of filter options like 'Relevance', 'Views', 'Rating' etc.
-> for each filter option a FilterItem has to be created.

BaseSearchFilters.java:
=======================
The base class for every service describing their {@link FilterItem}s,
{@link FilterGroup}s, the relation between content filters and sort filters.
2023-12-29 17:22:34 +01:00
TobiGr 9ab932e394 Rename testDoNotAcceptNonURLs() -> assertDoNotAcceptNonURLs() 2023-12-29 16:38:11 +01:00
Stypox 9d66debf3c
Merge pull request #1132 from TeamNewPipe/dependabot/github_actions/actions/setup-java-4
Bump actions/setup-java from 3 to 4
2023-12-29 16:20:46 +01:00
Tobi 038ebdedc4
Merge pull request #1143 from petlyh/peertube-non-urls
Avoid PeerTube accepting non-URLs
2023-12-29 12:47:30 +01:00
TobiGr 61d237de02 [PeerTube] Test onAccept(String URL) in LinkHandlerFactories for non-URLs 2023-12-29 12:45:02 +01:00
petlyh 2b2c1546d1 Avoid PeerTube accepting non-URLs 2023-12-29 12:27:39 +01:00
Tobi 1e93b1dc20
Merge pull request #1135 from Stypox/yt-emergency-info
[YouTube] Implement emergency meta info
2023-12-29 12:01:40 +01:00
dependabot[bot] 3400af99b3
Bump actions/setup-java from 3 to 4
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-29 10:57:47 +00:00
Tobi 1f8a044462
Merge pull request #1138 from TeamNewPipe/dependabot/gradle/com.github.spotbugs-spotbugs-annotations-4.8.3
Bump com.github.spotbugs:spotbugs-annotations from 4.8.0 to 4.8.3
2023-12-29 11:56:18 +01:00
dependabot[bot] 1470aa7303
Bump com.github.spotbugs:spotbugs-annotations from 4.8.0 to 4.8.3
Bumps [com.github.spotbugs:spotbugs-annotations](https://github.com/spotbugs/spotbugs) from 4.8.0 to 4.8.3.
- [Release notes](https://github.com/spotbugs/spotbugs/releases)
- [Changelog](https://github.com/spotbugs/spotbugs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/spotbugs/spotbugs/compare/4.8.0...4.8.3)

---
updated-dependencies:
- dependency-name: com.github.spotbugs:spotbugs-annotations
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-29 10:53:28 +00:00
TobiGr 8f9ebdcb77 [PeerTube] Fix failing PeertubeTrendingLinkHandlerFactoryTest
The factory was updated in #1144
2023-12-29 11:52:19 +01:00
Stypox 1553931027
Merge pull request #1145 from TeamNewPipe/dependabot/gradle/org.jsoup-jsoup-1.17.2
Bump org.jsoup:jsoup from 1.16.2 to 1.17.2
2023-12-29 11:27:01 +01:00
Stypox b2ec1b15fb
Merge pull request #1144 from dragfyre/patch-1
Update PeertubeTrendingLinkHandlerFactory.java
2023-12-29 11:21:08 +01:00
dependabot[bot] 151ee99da3
Bump org.jsoup:jsoup from 1.16.2 to 1.17.2
Bumps [org.jsoup:jsoup](https://github.com/jhy/jsoup) from 1.16.2 to 1.17.2.
- [Release notes](https://github.com/jhy/jsoup/releases)
- [Changelog](https://github.com/jhy/jsoup/blob/master/CHANGES.md)
- [Commits](https://github.com/jhy/jsoup/compare/jsoup-1.16.2...jsoup-1.17.2)

---
updated-dependencies:
- dependency-name: org.jsoup:jsoup
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-29 09:47:00 +00:00
dragfyre 65e7bc5b95
Update PeertubeTrendingLinkHandlerFactory.java
correcting Peertube local trending api URL (per #10685 in main NewPipe repo); see https://docs.joinpeertube.org/api-rest-reference.html#tag/Video/operation/getVideos
2023-12-28 14:50:31 +07:00
Stypox f276caf54a
Release v0.23.1 2023-12-21 21:59:21 +01:00
Stypox fc54fb2fdb
Merge pull request #1140 from Stypox/yt-shorts-no-duration
[YouTube] Always return -1 as duration of Shorts returned inside reel items
2023-12-21 21:52:40 +01:00
Stypox 0518487d26
Fix SearchInfo's non-null MetaInfo being null when initialized or when an extraction error occurs (#1141)
The meta info might have been null either when SearchInfo is first initialized, or when extractor.getMetaInfo() throws an exception in getInfo().
This caused NewPipe to crash instead of showing a nice error in https://www.reddit.com/r/youtube/comments/184ttmw/what_exactly_about_blue_whales_has_youtube_so/.
2023-12-21 21:39:25 +01:00
Stypox 5b59a1a8c5
[YouTube] Move meta info extraction to separate file
YoutubeParsingHelper was longer than 2000 lines which caused checkstyle issues
2023-12-21 21:19:08 +01:00
Stypox b8e12dd76c
[YouTube] Implement emergency meta info
YouTube provides that meta info panel when users search for really sensitive content like suicide (e.g. "blue whale").

It contains:
- an encouragement as title (e.g. "We are with you")
- a phone number as action
- details about how to call the phone number (e.g. availability)
- an url pointing to the website of an association

Also add a test that just checks if a meta info is properly extracted
2023-12-21 21:19:08 +01:00
Stypox 83c1737f70
[YouTube] Update shorts channel tab mocks 2023-12-21 20:54:16 +01:00
Stypox 2938067c2c
[YouTube] Shorts don't provide a duration anymore 2023-12-21 20:41:01 +01:00
Stypox 91419ec6e8
Release v0.23.0 2023-12-10 15:59:32 +01:00