From 68ad861c703ec442ff4e3ba82185bb22d6ced062 Mon Sep 17 00:00:00 2001 From: Dark25 Date: Thu, 3 Oct 2024 02:07:22 +0100 Subject: [PATCH 01/68] Update build_push.yml --- .github/workflows/build_push.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build_push.yml b/.github/workflows/build_push.yml index b8143aa9..f39bc75d 100644 --- a/.github/workflows/build_push.yml +++ b/.github/workflows/build_push.yml @@ -47,12 +47,12 @@ jobs: passphrase: ${{ secrets.GPG_PASSPHRASE }} git_user_signingkey: true git_commit_gpgsign: true - + # This step is going to commit, but this will not trigger another workflow. - name: Bump extensions that uses a modified lib if: steps.modified-libs.outputs.any_changed == 'true' run: | - chmod +x ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} + ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@a494d935f4b56874c4a5a87d19af7afcf3a163d0 # v2 @@ -174,4 +174,3 @@ jobs: cwd: "./repo" committer_name: Kohi-den-Bot committer_email: 177773202+Kohi-den-Bot@users.noreply.github.com - From 21408037953e4777da6dcc0d95a9a09412a03647 Mon Sep 17 00:00:00 2001 From: Dark25 Date: Thu, 3 Oct 2024 02:12:51 +0100 Subject: [PATCH 02/68] test ChillxExtractor.kt --- .../eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt b/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt index b93dd2e6..26150902 100644 --- a/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt +++ b/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt @@ -85,5 +85,4 @@ class ChillxExtractor(private val client: OkHttpClient, private val headers: Hea @SerialName("chillx") val keys: List ) } - class ErrorLoadingException(message: String) : Exception(message) From cb543f63e0ddeddda9b55b00bab032776ec1143e Mon Sep 17 00:00:00 2001 From: Dark25 Date: Thu, 3 Oct 2024 02:18:57 +0100 Subject: [PATCH 03/68] Update build_push.yml --- .github/workflows/build_push.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_push.yml b/.github/workflows/build_push.yml index f39bc75d..ac8db04b 100644 --- a/.github/workflows/build_push.yml +++ b/.github/workflows/build_push.yml @@ -52,7 +52,7 @@ jobs: - name: Bump extensions that uses a modified lib if: steps.modified-libs.outputs.any_changed == 'true' run: | - ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} + chmod +x ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@a494d935f4b56874c4a5a87d19af7afcf3a163d0 # v2 From 8b2570db7d6f6db70b3223fef070290336a2d445 Mon Sep 17 00:00:00 2001 From: Dark25 Date: Thu, 3 Oct 2024 02:19:51 +0100 Subject: [PATCH 04/68] Update ChillxExtractor.kt --- .../eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt b/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt index 26150902..b93dd2e6 100644 --- a/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt +++ b/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt @@ -85,4 +85,5 @@ class ChillxExtractor(private val client: OkHttpClient, private val headers: Hea @SerialName("chillx") val keys: List ) } + class ErrorLoadingException(message: String) : Exception(message) From 449386f95088d7031e4d512668e27e5e750c6eb8 Mon Sep 17 00:00:00 2001 From: Dark25 Date: Thu, 3 Oct 2024 02:41:32 +0100 Subject: [PATCH 05/68] Update build_push.yml --- .github/workflows/build_push.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build_push.yml b/.github/workflows/build_push.yml index ac8db04b..346eb44e 100644 --- a/.github/workflows/build_push.yml +++ b/.github/workflows/build_push.yml @@ -52,7 +52,8 @@ jobs: - name: Bump extensions that uses a modified lib if: steps.modified-libs.outputs.any_changed == 'true' run: | - chmod +x ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} + chmod +x ./.github/scripts/bump-versions.py + ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@a494d935f4b56874c4a5a87d19af7afcf3a163d0 # v2 From c3e21823b4fa0fea4e1028d10775805fc86ef9f2 Mon Sep 17 00:00:00 2001 From: Dark25 Date: Thu, 3 Oct 2024 02:42:42 +0100 Subject: [PATCH 06/68] Update ChillxExtractor.kt --- .../eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt b/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt index b93dd2e6..26150902 100644 --- a/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt +++ b/lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt @@ -85,5 +85,4 @@ class ChillxExtractor(private val client: OkHttpClient, private val headers: Hea @SerialName("chillx") val keys: List ) } - class ErrorLoadingException(message: String) : Exception(message) From f21d54472263b9c9f5f162026f8eec0cea06ae5c Mon Sep 17 00:00:00 2001 From: Kohi-den-Bot <177773202+Kohi-den-Bot@users.noreply.github.com> Date: Thu, 3 Oct 2024 01:43:32 +0000 Subject: [PATCH 07/68] [skip ci] chore: Mass-bump on extensions --- src/all/hikari/build.gradle | 2 +- src/en/tokuzilla/build.gradle | 2 +- src/hi/animesaga/build.gradle | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/all/hikari/build.gradle b/src/all/hikari/build.gradle index 23c6a56c..77647351 100644 --- a/src/all/hikari/build.gradle +++ b/src/all/hikari/build.gradle @@ -1,7 +1,7 @@ ext { extName = 'Hikari' extClass = '.Hikari' - extVersionCode = 8 + extVersionCode = 9 } apply from: "$rootDir/common.gradle" diff --git a/src/en/tokuzilla/build.gradle b/src/en/tokuzilla/build.gradle index 4c7d82f8..96948310 100644 --- a/src/en/tokuzilla/build.gradle +++ b/src/en/tokuzilla/build.gradle @@ -1,7 +1,7 @@ ext { extName = 'Tokuzilla' extClass = '.Tokuzilla' - extVersionCode = 17 + extVersionCode = 18 } apply from: "$rootDir/common.gradle" diff --git a/src/hi/animesaga/build.gradle b/src/hi/animesaga/build.gradle index fbe05304..a721ce07 100644 --- a/src/hi/animesaga/build.gradle +++ b/src/hi/animesaga/build.gradle @@ -3,7 +3,7 @@ ext { extClass = '.AnimeSAGA' themePkg = 'dooplay' baseUrl = 'https://www.animesaga.in' - overrideVersionCode = 11 + overrideVersionCode = 12 } apply from: "$rootDir/common.gradle" From 09270205a754fdad4b2b31a1fabf201e7f4d8988 Mon Sep 17 00:00:00 2001 From: Dark25 Date: Sat, 5 Oct 2024 02:03:28 +0200 Subject: [PATCH 08/68] Fix(it/ANIMEWORLD): Update ANIMEWORLD.tv (#287) --- src/it/animeworld/build.gradle | 5 +- .../it/animeworld/ANIMEWORLD.kt | 37 +++++-------- .../extractors/StreamHideExtractor.kt | 52 ------------------- 3 files changed, 17 insertions(+), 77 deletions(-) delete mode 100644 src/it/animeworld/src/eu/kanade/tachiyomi/animeextension/it/animeworld/extractors/StreamHideExtractor.kt diff --git a/src/it/animeworld/build.gradle b/src/it/animeworld/build.gradle index 29043c33..b3f00d73 100644 --- a/src/it/animeworld/build.gradle +++ b/src/it/animeworld/build.gradle @@ -1,14 +1,15 @@ ext { extName = 'ANIMEWORLD.tv' extClass = '.ANIMEWORLD' - extVersionCode = 39 + extVersionCode = 40 } apply from: "$rootDir/common.gradle" dependencies { - implementation(project(':lib:filemoon-extractor')) implementation(project(':lib:streamtape-extractor')) implementation(project(':lib:dood-extractor')) + implementation(project(':lib:streamhidevid-extractor')) + implementation(project(':lib:vidguard-extractor')) implementation "dev.datlag.jsunpacker:jsunpacker:1.0.1" } \ No newline at end of file diff --git a/src/it/animeworld/src/eu/kanade/tachiyomi/animeextension/it/animeworld/ANIMEWORLD.kt b/src/it/animeworld/src/eu/kanade/tachiyomi/animeextension/it/animeworld/ANIMEWORLD.kt index 6725ce77..f1f6fd92 100644 --- a/src/it/animeworld/src/eu/kanade/tachiyomi/animeextension/it/animeworld/ANIMEWORLD.kt +++ b/src/it/animeworld/src/eu/kanade/tachiyomi/animeextension/it/animeworld/ANIMEWORLD.kt @@ -4,7 +4,6 @@ import android.app.Application import android.content.SharedPreferences import androidx.preference.ListPreference import androidx.preference.PreferenceScreen -import eu.kanade.tachiyomi.animeextension.it.animeworld.extractors.StreamHideExtractor import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource import eu.kanade.tachiyomi.animesource.model.AnimeFilter import eu.kanade.tachiyomi.animesource.model.AnimeFilterList @@ -13,8 +12,9 @@ import eu.kanade.tachiyomi.animesource.model.SEpisode import eu.kanade.tachiyomi.animesource.model.Video import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource import eu.kanade.tachiyomi.lib.doodextractor.DoodExtractor -import eu.kanade.tachiyomi.lib.filemoonextractor.FilemoonExtractor +import eu.kanade.tachiyomi.lib.streamhidevidextractor.StreamHideVidExtractor import eu.kanade.tachiyomi.lib.streamtapeextractor.StreamTapeExtractor +import eu.kanade.tachiyomi.lib.vidguardextractor.VidGuardExtractor import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.util.asJsoup import kotlinx.serialization.Serializable @@ -102,17 +102,12 @@ class ANIMEWORLD : ConfigurableAnimeSource, ParsedAnimeHttpSource() { if (copyrightError.hasText()) throw Exception(copyrightError.text()) val serverList = mutableListOf>() - - val elements = document.select(videoListSelector()) val epId = document.selectFirst("div#player[data-episode-id]")?.attr("data-episode-id") val altServers = mutableListOf>() - val altList = listOf("StreamHide", "FileMoon") document.select("div.servers > div.widget-title span.server-tab").forEach { val name = it.text() - if (altList.any { t -> t.contains(name, true) }) { - altServers.add(Pair(name, it.attr("data-name"))) - } + altServers.add(Pair(name, it.attr("data-name"))) } altServers.forEach { serverPair -> @@ -128,21 +123,16 @@ class ANIMEWORLD : ConfigurableAnimeSource, ParsedAnimeHttpSource() { .build() val target = json.decodeFromString( client.newCall(GET(apiUrl, headers = apiHeaders)).execute().body.string(), - ).target + ).grabber serverList.add(Pair(serverPair.first, target)) } } - for (element in elements) { - val url = element.attr("href") - val name = element.text().substringAfter("ownload ").substringBefore(" ") - serverList.add(Pair(name, url)) - } - val videoList = serverList.flatMap { server -> val url = server.second + val url2 = server.first when { - url.contains("streamingaw") -> { + url2.contains("AnimeWorld Server") -> { listOf(Video(url, "AnimeWorld Server", url)) } url.contains("https://doo") -> { @@ -153,14 +143,14 @@ class ANIMEWORLD : ConfigurableAnimeSource, ParsedAnimeHttpSource() { StreamTapeExtractor(client).videoFromUrl(url.replace("/v/", "/e/")) ?.let(::listOf) } - url.contains("filemoon") -> { - FilemoonExtractor(client).videosFromUrl(url, prefix = "${server.first} - ", headers = headers) + url.contains("streamhide") -> { + StreamHideVidExtractor(client).videosFromUrl(url) } - server.first.contains("streamhide", true) -> { - StreamHideExtractor(client).videosFromUrl(url, headers) + url.contains("vidguard") or url.contains("listeamed") -> { + VidGuardExtractor(client).videosFromUrl(url) } else -> null - }.orEmpty() + } ?: emptyList() } return videoList @@ -518,8 +508,8 @@ class ANIMEWORLD : ConfigurableAnimeSource, ParsedAnimeHttpSource() { ListPreference(screen.context).apply { key = "preferred_server" title = "Preferred server" - entries = arrayOf("Animeworld server", "FileMoon", "StreamHide", "Doodstream", "StreamTape") - entryValues = arrayOf("Animeworld server", "FileMoon", "StreamHide", "Doodstream", "StreamTape") + entries = arrayOf("Animeworld server", "StreamHide", "Doodstream", "StreamTape", "VidGuard", "Listeamed") + entryValues = arrayOf("Animeworld server", "StreamHide", "Doodstream", "StreamTape", "VidGuard", "Listeamed") setDefaultValue("Animeworld server") summary = "%s" @@ -537,5 +527,6 @@ class ANIMEWORLD : ConfigurableAnimeSource, ParsedAnimeHttpSource() { @Serializable data class ServerResponse( val target: String, + val grabber: String, ) } diff --git a/src/it/animeworld/src/eu/kanade/tachiyomi/animeextension/it/animeworld/extractors/StreamHideExtractor.kt b/src/it/animeworld/src/eu/kanade/tachiyomi/animeextension/it/animeworld/extractors/StreamHideExtractor.kt deleted file mode 100644 index bc04d2ae..00000000 --- a/src/it/animeworld/src/eu/kanade/tachiyomi/animeextension/it/animeworld/extractors/StreamHideExtractor.kt +++ /dev/null @@ -1,52 +0,0 @@ -package eu.kanade.tachiyomi.animeextension.it.animeworld.extractors - -import dev.datlag.jsunpacker.JsUnpacker -import eu.kanade.tachiyomi.animesource.model.Video -import eu.kanade.tachiyomi.network.GET -import eu.kanade.tachiyomi.util.asJsoup -import okhttp3.Headers -import okhttp3.HttpUrl.Companion.toHttpUrl -import okhttp3.OkHttpClient - -class StreamHideExtractor(private val client: OkHttpClient) { - fun videosFromUrl(url: String, headers: Headers): List