From 1c4a5bdd0be28b6da4df795275ae2a3d641d6c75 Mon Sep 17 00:00:00 2001 From: AlmightyHak Date: Thu, 19 Jun 2025 12:14:32 -0500 Subject: [PATCH 01/27] Update .github/workflows/build_push.yml --- .github/workflows/build_push.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/build_push.yml b/.github/workflows/build_push.yml index 9451f7b2..b7687fb7 100644 --- a/.github/workflows/build_push.yml +++ b/.github/workflows/build_push.yml @@ -178,6 +178,10 @@ jobs: - name: Sync repo run: | rsync -a --delete --exclude .git --exclude .gitignore main/repo/ repo --exclude README.md --exclude repo.json + + - name: Increase buffer size + run: | + git config --global http.postBuffer 157286400 - name: Deploy repo uses: https://github.com/EndBug/add-and-commit@v9 From 794bddeac8f1985f2d9d09e8ec2b89aff91fdd5e Mon Sep 17 00:00:00 2001 From: AlmightyHak Date: Thu, 19 Jun 2025 12:24:11 -0500 Subject: [PATCH 02/27] Update .github/workflows/build_pull_request.yml --- .github/workflows/build_pull_request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_pull_request.yml b/.github/workflows/build_pull_request.yml index c0be32ca..a76fc194 100644 --- a/.github/workflows/build_pull_request.yml +++ b/.github/workflows/build_pull_request.yml @@ -13,7 +13,7 @@ concurrency: cancel-in-progress: true env: - CI_CHUNK_SIZE: 65 + CI_CHUNK_SIZE: 288 jobs: prepare: From 9a5e2a9083efc770669e6cbae4f8a78e15ceb496 Mon Sep 17 00:00:00 2001 From: AlmightyHak Date: Thu, 19 Jun 2025 12:26:35 -0500 Subject: [PATCH 03/27] Update .github/workflows/build_push.yml --- .github/workflows/build_push.yml | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/.github/workflows/build_push.yml b/.github/workflows/build_push.yml index b7687fb7..b3a08fcd 100644 --- a/.github/workflows/build_push.yml +++ b/.github/workflows/build_push.yml @@ -31,22 +31,27 @@ jobs: ref: main token: ${{ secrets.BOT_PAT }} + - name: Find lib changes + id: modified-libs + uses: https://github.com/tj-actions/changed-files@90a06d6ba9543371ab4df8eeca0be07ca6054959 #v42 + with: + files: lib/ + files_ignore: lib/**.md + files_separator: " " + safe_output: false + + # 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: | + ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} + - name: Get number of modules run: | set -x projects=(src/*/*) echo "NUM_INDIVIDUAL_MODULES=${#projects[@]}" >> "$GITHUB_ENV" - # Temporary pause because of leak of tj-actions/changed-files - # - name: Find lib changes - # id: modified-libs - # uses: tj-actions/changed-files@90a06d6ba9543371ab4df8eeca0be07ca6054959 #v42 - # with: - # files: lib/ - # files_ignore: lib/**.md - # files_separator: " " - # safe_output: false - - name: Import GPG key uses: https://github.com/crazy-max/ghaction-import-gpg@v6 # v6.1.0 with: From 7147360823f707bff4bec7aead3bcd8dc71be6b4 Mon Sep 17 00:00:00 2001 From: WebDitto Date: Thu, 19 Jun 2025 12:55:09 -0500 Subject: [PATCH 04/27] fix: Fixed Q1N source using UniversalExtractor as fallback (#1019) Checklist: - [ ] Updated `extVersionCode` value in `build.gradle` for individual extensions - [x] Updated `overrideVersionCode` or `baseVersionCode` as needed for all multisrc extensions - [ ] Referenced all related issues in the PR body (e.g. "Closes #xyz") - [ ] Added the `isNsfw = true` flag in `build.gradle` when appropriate - [ ] Have not changed source names - [ ] Have explicitly kept the `id` if a source's name or language were changed - [x] Have tested the modifications by compiling and running the extension through Android Studio - [ ] Have removed `web_hi_res_512.png` when adding a new extension - [ ] Have made sure all the icons are in png format Reviewed-on: https://kohiden.xyz/Kohi-den/extensions-source/pulls/1019 Co-authored-by: WebDitto Co-committed-by: WebDitto --- src/pt/animesgratis/build.gradle | 4 +- .../animeextension/pt/animesgratis/Q1N.kt | 8 +- .../extractors/UniversalExtractor.kt | 128 ++++++++++++++++++ 3 files changed, 138 insertions(+), 2 deletions(-) create mode 100644 src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/extractors/UniversalExtractor.kt diff --git a/src/pt/animesgratis/build.gradle b/src/pt/animesgratis/build.gradle index 208b539f..58f18c35 100644 --- a/src/pt/animesgratis/build.gradle +++ b/src/pt/animesgratis/build.gradle @@ -1,9 +1,10 @@ ext { + extKmkVersionCode = 1 extName = 'Q1N' extClass = '.Q1N' themePkg = 'dooplay' baseUrl = 'https://q1n.net' - overrideVersionCode = 20 + overrideVersionCode = 21 } apply from: "$rootDir/common.gradle" @@ -13,5 +14,6 @@ dependencies { implementation(project(":lib:filemoon-extractor")) implementation(project(":lib:streamwish-extractor")) implementation(project(":lib:mixdrop-extractor")) + implementation(project(":lib:playlist-utils")) implementation(project(":lib:streamtape-extractor")) } diff --git a/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/Q1N.kt b/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/Q1N.kt index 03e410bc..486ffcbc 100644 --- a/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/Q1N.kt +++ b/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/Q1N.kt @@ -1,7 +1,9 @@ package eu.kanade.tachiyomi.animeextension.pt.animesgratis +import android.util.Log import eu.kanade.tachiyomi.animeextension.pt.animesgratis.extractors.NoaExtractor import eu.kanade.tachiyomi.animeextension.pt.animesgratis.extractors.RuplayExtractor +import eu.kanade.tachiyomi.animeextension.pt.animesgratis.extractors.UniversalExtractor import eu.kanade.tachiyomi.animesource.model.SAnime import eu.kanade.tachiyomi.animesource.model.SEpisode import eu.kanade.tachiyomi.animesource.model.Video @@ -27,6 +29,8 @@ class Q1N : DooPlay( "https://q1n.net", ) { + private val tag by lazy { javaClass.simpleName } + override val id: Long = 2969482460524685571L override val dateFormatter by lazy { @@ -118,10 +122,12 @@ class Q1N : DooPlay( private val streamTapeExtractor by lazy { StreamTapeExtractor(client) } private val streamWishExtractor by lazy { StreamWishExtractor(client, headers) } private val mixDropExtractor by lazy { MixDropExtractor(client) } + private val universalExtractor by lazy { UniversalExtractor(client) } private fun getPlayerVideos(player: Element): List