Skip to content

Upgrade AGP & matching Keiyoushi#4

Merged
cuong-tran merged 24 commits intomasterfrom
agp
Feb 9, 2026
Merged

Upgrade AGP & matching Keiyoushi#4
cuong-tran merged 24 commits intomasterfrom
agp

Conversation

@cuong-tran
Copy link
Contributor

No description provided.

Copilot AI review requested due to automatic review settings February 6, 2026 04:12
Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, we are unable to review this pull request

The GitHub API does not allow us to fetch diffs exceeding 300 files, and this pull request has 781

@github-advanced-security
Copy link

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR upgrades the Android Gradle Plugin (AGP) and related dependencies, implements the Keiyoushi utilities package rename, and updates the build system configuration.

Changes:

  • Upgraded AGP from 8.2.2 to 9.0.0 and Gradle from 8.13 to 9.3.1
  • Renamed extensions.utils package to keiyoushi.utils across all files
  • Replaced kotlinter with spotless for code formatting and linting
  • Updated library module naming from hyphenated to camelCase (e.g., playlist-utils to playlistutils)

Reviewed changes

Copilot reviewed 204 out of 781 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
gradle/libs.versions.toml Updated dependency versions including AGP, Kotlin, and serialization libraries
gradle.properties Simplified properties by removing deprecated Android-specific settings
build.gradle files Updated library dependency references to use camelCase naming convention
core/src/main/kotlin/keiyoushi/utils/* Renamed package from extensions.utils to keiyoushi.utils
buildSrc/* Updated build scripts to use spotless instead of kotlinter
lib/* Renamed library modules from hyphenated to camelCase naming
src//.kt Updated import statements to use keiyoushi.utils package
Comments suppressed due to low confidence (1)

lib/unpacker/build.gradle.kts:1

  • The build configuration changed from lib-kotlin to lib-android, which means this module now requires the Android runtime instead of being a pure Kotlin/JVM module. This increases the dependency footprint and may impact build times. Ensure this change is intentional and necessary for the unpacker functionality.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @cuong-tran, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly updates the project's foundational build infrastructure and internal code organization. It brings the Gradle and Kotlin versions up to date, standardizes naming conventions for internal libraries and utility packages, and integrates a new, more robust linting and formatting tool. These changes aim to improve the overall maintainability, consistency, and future-proofing of the codebase, complemented by comprehensive documentation updates to guide contributors through the new setup.

Highlights

  • Build System Upgrade: The Android Gradle Plugin (AGP) and Gradle wrapper have been updated to their latest versions, along with an upgrade to the Kotlin version used across the project. This modernizes the build environment and leverages recent improvements.
  • Dependency and Package Renaming: Numerous internal library dependencies have been renamed for consistency (e.g., 'lib:playlist-utils' to 'lib:playlistutils'). Additionally, the core utility package 'extensions.utils' has been refactored and renamed to 'keiyoushi.utils', impacting many source files.
  • New Linting and Formatting Tool: The project's code quality tooling has been enhanced by replacing 'kotlinter' with 'spotless'. A new 'keiyoushi.lint.gradle.kts' file has been introduced to define comprehensive formatting and linting rules for Kotlin, Java, Gradle, and XML files.
  • Documentation Overhaul: The 'CONTRIBUTING.md' and 'README.md' files have undergone significant updates. This includes reformatting, revised sparse checkout instructions, updated library descriptions, and clearer guidance for development, debugging, and pull request submissions.
  • Codebase Refinements: Across various source files, minor code style improvements have been applied, such as converting single-expression functions to concise syntax and streamlining conditional logic. Many source classes also saw a minor refactoring in their inheritance order for consistency.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • .editorconfig
    • Removed specific ktlint rules for argument list and comment wrapping.
  • .git-blame-ignore-revs
    • Added new commit hashes to be ignored by git blame.
  • .github/renovate.json
    • Updated the 'ignoreDeps' entry for the 'injekt' dependency to reflect its new naming convention.
  • .github/scripts/create-repo.py
    • Modified regex group access from '[1]' to '.group(1)' for improved robustness.
    • Added 'versionId' to the 'min_data' dictionary.
  • .github/scripts/generate-build-matrices.py
    • Adjusted 'LIB_REGEX' to no longer allow hyphens in library names.
    • Updated 'CORE_FILES_REGEX' to include '.github/scripts' for core file detection.
    • Changed 'git diff --name-only' to 'git diff --name-status' and updated parsing to handle deleted files.
    • Added a 'break' statement when 'CORE_FILES_REGEX' matches to optimize file processing.
    • Replaced 'if libs' with 'if len(libs) != 0' for explicit length check.
  • .github/scripts/merge-repo.py
    • Changed remote index file from 'index.min.json' to 'index.json'.
    • Added logic to remove the 'versionId' field from sources in the merged index.
  • CONTRIBUTING.md
    • Reformatted the Table of Contents to use enumerated lists.
    • Updated the Meta Issue template link.
    • Added 'Try jsoup' to the list of recommended tools.
    • Revised sparse checkout instructions, removing multisrc theme specific entries and updating project folders.
    • Corrected remote configuration steps for Git.
    • Added a new section on 'Loading a subset of Gradle modules'.
    • Removed a duplicate 'build.gradle' entry from the extension file structure example.
    • Removed 'web_hi_res_512.png' from the extension file structure example.
    • Updated descriptions for core dependencies, replacing 'CryptoAES', 'Unpacker', and 'Synchrony' with 'DataImage' and 'i18n'.
    • Marked 'ParsedAnimeHttpSource' as deprecated in the extension main class table.
    • Updated method names from 'fetchAnimeDetails' to 'getAnimeDetails' and 'fetchEpisodeList' to 'getEpisodeList'.
    • Added 'getAnimeUrl' and 'getEpisodeUrl' methods to the extension call flow.
    • Updated 'SEpisode.date_upload' example to use 'keiyoushi.utils.tryParse'.
    • Added a new 'Update strategy' section.
    • Added a caution note regarding Kotlin Intrinsics in URL intent filter activities.
    • Clarified the importance of package names for extension updates.
    • Updated the multisrc theme explanation and directory structure.
    • Updated running and debugging instructions, including a new screenshot and important notes for Android 11+ deployments.
    • Added command line build instructions for single APKs.
    • Updated the Pull Request checklist with new items like 'Have not changed source names' and 'Have removed web_hi_res_512.png'.
  • README.md
    • Updated app recommendations.
    • Changed 'Manual install' section to 'How to add the repo' with a link to a getting started guide.
    • Added a 'Manual downloads' section.
    • Reworded the 'Requests' section for clarity.
    • Added Apache 2.0 License information.
    • Clarified the project disclaimer regarding affiliation with Anikku/Aniyomi.
  • build.gradle.kts
    • Removed 'KotlinCompile' and 'KotlinJvmTarget' imports.
    • Added a 'buildscript' block to include 'gradle.kotlin' as a classpath dependency.
  • buildSrc/build.gradle.kts
    • Replaced 'libs.gradle.kotlinter' with 'libs.spotless.gradle' for linting.
  • buildSrc/gradle/wrapper/gradle-wrapper.properties
    • Upgraded Gradle version from 8.13 to 9.3.1.
  • buildSrc/src/main/kotlin/Extensions.kt
    • Refactored 'getDependents' to implement caching for improved performance.
    • Modified 'printDependentExtensions' for more robust handling of visited projects and correct printing of multisrc dependents.
  • buildSrc/src/main/kotlin/keiyoushi.lint.gradle.kts
    • Added new file: Defines Spotless linting rules for Kotlin, Java, Gradle, and XML files, including specific ktlint overrides.
  • buildSrc/src/main/kotlin/lib-android.gradle.kts
    • Removed the 'kotlin("android")' plugin declaration.
    • Disabled 'androidResources' using 'androidResources.enable = false'.
    • Added 'implementation(project(":core"))' dependency.
  • buildSrc/src/main/kotlin/lib-multisrc.gradle.kts
    • Removed 'kotlin("android")' and 'org.jmailen.kotlinter' plugins, and added 'keiyoushi.lint' plugin.
    • Updated 'sourceSets' configuration to explicitly clear and add directories for 'java', 'kotlin', 'res', and 'assets'.
    • Removed 'buildFeatures' configurations for 'resValues' and 'shaders'.
    • Changed 'kotlinOptions' to 'kotlin.compilerOptions' for Kotlin compiler arguments.
    • Removed the 'tasks' block related to 'lintKotlin' and 'formatKotlin'.
  • common.gradle
    • Imported 'com.android.build.gradle.tasks.PackageAndroidArtifact'.
    • Removed 'kotlin-android' and 'org.jmailen.kotlinter' plugins, and added 'keiyoushi.lint' plugin.
    • Updated various Android configuration assignments to use the '=' operator.
    • Modified 'sourceSets' to clear and add directories for 'java', 'kotlin', 'res', and 'assets'.
    • Removed specific 'buildFeatures' for 'aidl', 'renderScript', 'resValues', and 'shaders'.
    • Changed 'buildTypes.all' to 'buildTypes.configureEach'.
    • Removed 'compileOptions' and 'kotlinOptions' blocks.
    • Added a 'copyManifestFile' task and an 'afterEvaluate' block for 'PackageAndroidArtifact' configuration.
    • Removed 'lintKotlin' and 'formatKotlin' dependencies from 'preBuild' task.
  • core/AndroidManifest.xml
    • File renamed to 'core/src/main/AndroidManifest.xml'.
  • core/src/main/kotlin/extensions/utils/Collections.kt
    • File renamed to 'core/src/main/kotlin/keiyoushi/utils/Collections.kt' and package updated.
  • core/src/main/kotlin/extensions/utils/Date.kt
    • File renamed to 'core/src/main/kotlin/keiyoushi/utils/Date.kt' and package updated.
  • core/src/main/kotlin/extensions/utils/Json.kt
    • File removed.
  • core/src/main/kotlin/extensions/utils/Network.kt
    • File renamed to 'core/src/main/kotlin/keiyoushi/utils/Network.kt' and package updated.
    • Minor syntax changes, converting explicit 'return' statements to concise expressions.
    • Updated comments for 'commonEmptyHeaders' and 'commonEmptyRequestBody'.
  • core/src/main/kotlin/extensions/utils/Preferences.kt
    • File renamed to 'core/src/main/kotlin/keiyoushi/utils/Preferences.kt' and package updated.
    • Added 'android.R' import.
    • Minor syntax changes in 'getPreferences' and 'PreferenceDelegate' implementations.
  • core/src/main/kotlin/extensions/utils/Source.kt
    • File renamed to 'core/src/main/kotlin/keiyoushi/utils/Source.kt' and package updated.
    • Changed the inheritance order for the 'Source' class from 'ConfigurableAnimeSource, AnimeHttpSource()' to 'AnimeHttpSource(), ConfigurableAnimeSource()'.
  • core/src/main/kotlin/extensions/utils/Url.kt
    • File renamed to 'core/src/main/kotlin/keiyoushi/utils/UrlUtils.kt' and package updated.
    • Minor syntax changes for conciseness.
  • core/src/main/kotlin/keiyoushi/utils/Json.kt
    • Added new file: Contains updated JSON utility functions, including 'parseAs' with transform and 'JsonElement.parseAs'.
  • gradle.properties
    • Removed deprecated AndroidX and build features properties.
    • Added 'kotlin.stdlib.default.dependency=false'.
  • gradle/libs.versions.toml
    • Updated Kotlin, Coroutines, and Serialization versions.
    • Replaced 'gradle-kotlinter' with 'spotless-gradle'.
    • Updated versions for 'injekt-core', 'jsoup', 'okhttp', and 'jsunpacker'.
    • Removed 'kotlin-stdlib' from the 'common' bundle.
  • gradle/wrapper/gradle-wrapper.properties
    • Upgraded Gradle wrapper version from 8.13 to 9.3.1.
  • lib-multisrc/anilist/src/eu/kanade/tachiyomi/multisrc/anilist/AniListAnimeHttpSource.kt
    • Applied minor syntax changes for conciseness in function declarations and return statements.
  • lib-multisrc/anilist/src/eu/kanade/tachiyomi/multisrc/anilist/AniListFilters.kt
    • Applied minor syntax changes for conciseness in inline function declarations.
  • lib-multisrc/animestream/src/eu/kanade/tachiyomi/multisrc/animestream/AnimeStream.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'AnimeStream' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • lib-multisrc/animestream/src/eu/kanade/tachiyomi/multisrc/animestream/AnimeStreamFilters.kt
    • Applied minor syntax changes for conciseness in inline function declarations.
  • lib-multisrc/datalifeengine/src/eu/kanade/tachiyomi/multisrc/datalifeengine/DataLifeEngine.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'DataLifeEngine' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • lib-multisrc/dooplay/src/eu/kanade/tachiyomi/multisrc/dooplay/DooPlay.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'DooPlay' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • lib-multisrc/dopeflix/build.gradle.kts
    • Renamed the dependency from ':lib:dopeflix-extractor' to ':lib:dopeflixextractor'.
  • lib-multisrc/dopeflix/src/eu/kanade/tachiyomi/multisrc/dopeflix/DopeFlix.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'DopeFlix' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • lib-multisrc/dopeflix/src/eu/kanade/tachiyomi/multisrc/dopeflix/DopeFlixFilters.kt
    • Applied minor syntax changes for conciseness in inline function declarations.
  • lib-multisrc/pelisplus/build.gradle.kts
    • Renamed multiple extractor dependencies (e.g., ':lib:vudeo-extractor' to ':lib:vudeoextractor').
  • lib-multisrc/pelisplus/src/eu/kanade/tachiyomi/multisrc/pelisplus/Filters.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • lib-multisrc/pelisplus/src/eu/kanade/tachiyomi/multisrc/pelisplus/PelisPlus.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'PelisPlus' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • lib-multisrc/sudatchi/build.gradle.kts
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib-multisrc/sudatchi/src/eu/kanade/tachiyomi/multisrc/sudatchi/Sudatchi.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Sudatchi' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • lib-multisrc/sudatchi/src/eu/kanade/tachiyomi/multisrc/sudatchi/SudatchiFilters.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • lib-multisrc/sudatchi/src/eu/kanade/tachiyomi/multisrc/sudatchi/dto/SudatchiDto.kt
    • Applied minor syntax changes for conciseness in conditional blocks.
  • lib-multisrc/wcotheme/build.gradle.kts
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib-multisrc/wcotheme/src/eu/kanade/tachiyomi/multisrc/wcotheme/Filters.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • lib-multisrc/wcotheme/src/eu/kanade/tachiyomi/multisrc/wcotheme/WcoTheme.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'WcoTheme' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • lib-multisrc/zorotheme/src/eu/kanade/tachiyomi/multisrc/zorotheme/ZoroTheme.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'ZoroTheme' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • lib-multisrc/zorotheme/src/eu/kanade/tachiyomi/multisrc/zorotheme/ZoroThemeFilters.kt
    • Applied minor syntax changes for conciseness in inline function declarations and conditional blocks.
  • lib-multisrc/zorotheme/src/eu/kanade/tachiyomi/multisrc/zorotheme/dto/ZoroThemeDto.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • lib/amazon-extractor/build.gradle.kts
    • File renamed to 'lib/dopeflixextractor/build.gradle.kts'.
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/amazon-extractor/src/main/java/eu/kanade/tachiyomi/lib/amazonextractor/AmazonExtractor.kt
    • File renamed to 'lib/amazonextractor/src/main/java/eu/kanade/tachiyomi/lib/amazonextractor/AmazonExtractor.kt'.
  • lib/bangumi-scraper/build.gradle.kts
    • File renamed to 'lib/bangumiscraper/build.gradle.kts'.
  • lib/bangumi-scraper/src/main/java/eu/kanade/tachiyomi/lib/bangumiscraper/BangumiDTO.kt
    • File renamed to 'lib/bangumiscraper/src/main/java/eu/kanade/tachiyomi/lib/bangumiscraper/BangumiDTO.kt'.
  • lib/bangumi-scraper/src/main/java/eu/kanade/tachiyomi/lib/bangumiscraper/BangumiScraper.kt
    • File renamed to 'lib/bangumiscraper/src/main/java/eu/kanade/tachiyomi/lib/bangumiscraper/BangumiScraper.kt'.
  • lib/bangumi-scraper/src/main/java/eu/kanade/tachiyomi/lib/bangumiscraper/BangumiScraperException.kt
    • File renamed to 'lib/bangumiscraper/src/main/java/eu/kanade/tachiyomi/lib/bangumiscraper/BangumiScraperException.kt'.
  • lib/blogger-extractor/build.gradle.kts
    • File renamed to 'lib/bloggerextractor/build.gradle.kts'.
  • lib/blogger-extractor/src/main/java/eu/kanade/tachiyomi/lib/bloggerextractor/BloggerExtractor.kt
    • File renamed to 'lib/bloggerextractor/src/main/java/eu/kanade/tachiyomi/lib/bloggerextractor/BloggerExtractor.kt'.
  • lib/burstcloud-extractor/build.gradle.kts
    • File renamed to 'lib/burstcloudextractor/build.gradle.kts'.
  • lib/burstcloud-extractor/src/main/java/eu/kanade/tachiyomi/lib/burstcloudextractor/BurstCloudExtractor.kt
    • File renamed to 'lib/burstcloudextractor/src/main/java/eu/kanade/tachiyomi/lib/burstcloudextractor/BurstCloudExtractor.kt'.
  • lib/burstcloud-extractor/src/main/java/eu/kanade/tachiyomi/lib/burstcloudextractor/BurstCloudExtractorDto.kt
    • File renamed to 'lib/burstcloudextractor/src/main/java/eu/kanade/tachiyomi/lib/burstcloudextractor/BurstCloudExtractorDto.kt'.
  • lib/buzzheavier-extractor/build.gradle.kts
    • File renamed to 'lib/buzzheavierextractor/build.gradle.kts'.
  • lib/buzzheavier-extractor/src/main/java/eu/kanade/tachiyomi/lib/buzzheavierextractor/BuzzheavierExtractor.kt
    • File renamed to 'lib/buzzheavierextractor/src/main/java/eu/kanade/tachiyomi/lib/buzzheavierextractor/BuzzheavierExtractor.kt'.
  • lib/cda-extractor/build.gradle.kts
    • File renamed to 'lib/cdaextractor/build.gradle.kts'.
  • lib/cda-extractor/src/main/java/eu/kanade/tachiyomi/lib/cdaextractor/CdaExtractor.kt
    • File renamed to 'lib/cdaextractor/src/main/java/eu/kanade/tachiyomi/lib/cdaextractor/CdaExtractor.kt'.
  • lib/chillx-extractor/build.gradle.kts
    • File renamed to 'lib/rapidcloudextractor/build.gradle.kts'.
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt
    • File renamed to 'lib/chillxextractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/ChillxExtractor.kt'.
  • lib/chillx-extractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/WebViewResolver.kt
    • File renamed to 'lib/chillxextractor/src/main/java/eu/kanade/tachiyomi/lib/chillxextractor/WebViewResolver.kt'.
  • lib/cloudflare-interceptor/build.gradle.kts
    • File renamed to 'lib/cloudflareinterceptor/build.gradle.kts'.
  • lib/cloudflare-interceptor/src/main/java/eu/kanade/tachiyomi/lib/cloudflareinterceptor/CloudflareInterceptor.kt
    • File renamed to 'lib/cloudflareinterceptor/src/main/java/eu/kanade/tachiyomi/lib/cloudflareinterceptor/CloudflareInterceptor.kt'.
  • lib/cryptoaes/src/main/java/eu/kanade/tachiyomi/lib/cryptoaes/Deobfuscator.kt
    • Removed the license header.
    • Changed the initialization of 'evaluatedString' to use 'val' with 'StringBuilder()'.
    • Changed 'listOf' to 'listOf' for type inference.
  • lib/dailymotion-extractor/build.gradle.kts
    • File renamed to 'lib/amazonextractor/build.gradle.kts'.
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/dailymotion-extractor/src/main/java/eu/kanade/tachiyomi/lib/dailymotionextractor/DailymotionDto.kt
    • File renamed to 'lib/dailymotionextractor/src/main/java/eu/kanade/tachiyomi/lib/dailymotionextractor/DailymotionDto.kt'.
  • lib/dailymotion-extractor/src/main/java/eu/kanade/tachiyomi/lib/dailymotionextractor/DailymotionExtractor.kt
    • File renamed to 'lib/dailymotionextractor/src/main/java/eu/kanade/tachiyomi/lib/dailymotionextractor/DailymotionExtractor.kt'.
  • lib/dataimage/src/main/java/eu/kanade/tachiyomi/lib/dataimage/DataImageInterceptor.kt
    • Reordered functions for better logical flow.
    • Applied minor syntax changes for conciseness.
  • lib/dood-extractor/build.gradle.kts
    • File renamed to 'lib/doodextractor/build.gradle.kts'.
  • lib/dood-extractor/src/main/java/eu/kanade/tachiyomi/lib/doodextractor/DoodExtractor.kt
    • File renamed to 'lib/doodextractor/src/main/java/eu/kanade/tachiyomi/lib/doodextractor/DoodExtractor.kt'.
  • lib/dopeflix-extractor/build.gradle.kts
    • File renamed to 'lib/dailymotionextractor/build.gradle.kts'.
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/dopeflix-extractor/src/main/java/eu/kanade/tachiyomi/lib/dopeflixextractor/DopeFlixExtractor.kt
    • File renamed to 'lib/dopeflixextractor/src/main/java/eu/kanade/tachiyomi/lib/dopeflixextractor/DopeFlixExtractor.kt'.
  • lib/fastream-extractor/build.gradle.kts
    • File removed.
  • lib/fastream-extractor/src/main/java/eu/kanade/tachiyomi/lib/fastreamextractor/FastreamExtractor.kt
    • File renamed to 'lib/fastreamextractor/src/main/java/eu/kanade/tachiyomi/lib/fastreamextractor/FastreamExtractor.kt'.
    • Updated import statement from 'extensions.utils.commonEmptyHeaders' to 'keiyoushi.utils.commonEmptyHeaders'.
  • lib/fastreamextractor/build.gradle.kts
    • Added new file: Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/filemoon-extractor/build.gradle.kts
    • File removed.
  • lib/filemoon-extractor/src/main/java/eu/kanade/tachiyomi/lib/filemoonextractor/FilemoonExtractor.kt
    • File renamed to 'lib/filemoonextractor/src/main/java/eu/kanade/tachiyomi/lib/filemoonextractor/FilemoonExtractor.kt'.
  • lib/filemoonextractor/build.gradle.kts
    • Added new file: Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/fireplayer-extractor/build.gradle.kts
    • File removed.
  • lib/fireplayer-extractor/src/main/java/eu/kanade/tachiyomi/lib/fireplayerextractor/FireplayerExtractor.kt
    • File renamed to 'lib/fireplayerextractor/src/main/java/eu/kanade/tachiyomi/lib/fireplayerextractor/FireplayerExtractor.kt'.
  • lib/fireplayerextractor/build.gradle.kts
    • Added new file: Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/fusevideo-extractor/build.gradle.kts
    • File renamed to 'lib/fusevideoextractor/build.gradle.kts'.
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/fusevideo-extractor/src/main/java/eu/kanade/tachiyomi/lib/fusevideoextractor/FusevideoExtractor.kt
    • File renamed to 'lib/fusevideoextractor/src/main/java/eu/kanade/tachiyomi/lib/fusevideoextractor/FusevideoExtractor.kt'.
  • lib/gdriveplayer-extractor/build.gradle.kts
    • File renamed to 'lib/gdriveplayerextractor/build.gradle.kts'.
  • lib/gdriveplayer-extractor/src/main/java/eu/kanade/tachiyomi/lib/gdriveplayerextractor/GdrivePlayerExtractor.kt
    • File renamed to 'lib/gdriveplayerextractor/src/main/java/eu/kanade/tachiyomi/lib/gdriveplayerextractor/GdrivePlayerExtractor.kt'.
  • lib/gogostream-extractor/build.gradle.kts
    • File removed.
  • lib/gogostream-extractor/src/main/java/eu/kanade/tachiyomi/lib/gogostreamextractor/GogoStreamExtractor.kt
    • File renamed to 'lib/gogostreamextractor/src/main/java/eu/kanade/tachiyomi/lib/gogostreamextractor/GogoStreamExtractor.kt'.
  • lib/gogostream-extractor/src/main/java/eu/kanade/tachiyomi/lib/gogostreamextractor/GogoStreamExtractorDto.kt
    • File renamed to 'lib/gogostreamextractor/src/main/java/eu/kanade/tachiyomi/lib/gogostreamextractor/GogoStreamExtractorDto.kt'.
  • lib/gogostreamextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/goodstream-extractor/build.gradle.kts
    • File renamed to 'lib/goodstreamextractor/build.gradle.kts'.
  • lib/goodstream-extractor/src/main/java/eu/kanade/tachiyomi/lib/goodstramextractor/GoodStreamExtractor.kt
    • File renamed to 'lib/goodstreamextractor/src/main/java/eu/kanade/tachiyomi/lib/goodstramextractor/GoodStreamExtractor.kt'.
  • lib/googledrive-episodes/build.gradle.kts
    • File renamed to 'lib/googledriveepisodes/build.gradle.kts'.
  • lib/googledrive-episodes/src/main/java/eu/kanade/tachiyomi/lib/googledriveepisodes/GoogleDriveEpisodes.kt
    • File renamed to 'lib/googledriveepisodes/src/main/java/eu/kanade/tachiyomi/lib/googledriveepisodes/GoogleDriveEpisodes.kt'.
  • lib/googledrive-extractor/build.gradle.kts
    • File renamed to 'lib/googledriveextractor/build.gradle.kts'.
  • lib/googledrive-extractor/src/main/java/eu/kanade/tachiyomi/lib/googledriveextractor/GoogleDriveExtractor.kt
    • File renamed to 'lib/googledriveextractor/src/main/java/eu/kanade/tachiyomi/lib/googledriveextractor/GoogleDriveExtractor.kt'.
  • lib/javcoverfetcher/src/main/java/eu/kanade/tachiyomi/lib/javcoverfetcher/JavCoverFetcher.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
  • lib/lulu-extractor/build.gradle.kts
    • File renamed to 'lib/luluextractor/build.gradle.kts'.
  • lib/lulu-extractor/src/main/java/eu/kanade/tachiyomi/lib/luluextractor/LuluExtractor.kt
    • File renamed to 'lib/luluextractor/src/main/java/eu/kanade/tachiyomi/lib/luluextractor/LuluExtractor.kt'.
  • lib/lycoris-extractor/build.gradle.kts
    • File renamed to 'lib/lycorisextractor/build.gradle.kts'.
  • lib/lycoris-extractor/src/main/java/eu/kanade/tachiyomi/lib/lycorisextractor/LycorisExtractor.kt
    • File renamed to 'lib/lycorisextractor/src/main/java/eu/kanade/tachiyomi/lib/lycorisextractor/LycorisExtractor.kt'.
  • lib/megacloud-extractor/build.gradle.kts
    • File removed.
  • lib/megacloud-extractor/src/main/java/eu/kanade/tachiyomi/lib/megacloudextractor/MegaCloudExtractor.kt
    • File renamed to 'lib/megacloudextractor/src/main/java/eu/kanade/tachiyomi/lib/megacloudextractor/MegaCloudExtractor.kt'.
  • lib/megacloudextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/megamax-multiserver/build.gradle.kts
    • File renamed to 'lib/megamaxmultiserver/build.gradle.kts'.
  • lib/megamax-multiserver/src/main/java/eu/kanade/tachiyomi/lib/megamaxmultiserver/MegaMaxMultiServer.kt
    • File renamed to 'lib/megamaxmultiserver/src/main/java/eu/kanade/tachiyomi/lib/megamaxmultiserver/MegaMaxMultiServer.kt'.
    • Updated import statement from 'extensions.utils.UrlUtils' to 'keiyoushi.utils.UrlUtils'.
  • lib/megamax-multiserver/src/main/java/eu/kanade/tachiyomi/lib/megamaxmultiserver/dto/IframeDto.kt
    • File renamed to 'lib/megamaxmultiserver/src/main/java/eu/kanade/tachiyomi/lib/megamaxmultiserver/dto/IframeDto.kt'.
  • lib/megamax-multiserver/src/main/java/eu/kanade/tachiyomi/lib/megamaxmultiserver/dto/LeechDto.kt
    • File renamed to 'lib/megamaxmultiserver/src/main/java/eu/kanade/tachiyomi/lib/megamaxmultiserver/dto/LeechDto.kt'.
  • lib/mixdrop-extractor/build.gradle.kts
    • File renamed to 'lib/mixdropextractor/build.gradle.kts'.
  • lib/mixdrop-extractor/src/main/java/eu/kanade/tachiyomi/lib/mixdropextractor/MixDropExtractor.kt
    • File renamed to 'lib/mixdropextractor/src/main/java/eu/kanade/tachiyomi/lib/mixdropextractor/MixDropExtractor.kt'.
  • lib/mp4upload-extractor/build.gradle.kts
    • File removed.
  • lib/mp4upload-extractor/src/main/java/eu/kanade/tachiyomi/lib/mp4uploadextractor/Mp4uploadExtractor.kt
    • File renamed to 'lib/mp4uploadextractor/src/main/java/eu/kanade/tachiyomi/lib/mp4uploadextractor/Mp4uploadExtractor.kt'.
  • lib/mp4uploadextractor/build.gradle.kts
    • Added new file: Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/okru-extractor/build.gradle.kts
    • File removed.
  • lib/okru-extractor/src/main/java/eu/kanade/tachiyomi/lib/okruextractor/OkruExtractor.kt
    • File renamed to 'lib/okruextractor/src/main/java/eu/kanade/tachiyomi/lib/okruextractor/OkruExtractor.kt'.
  • lib/okruextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/playlist-utils/build.gradle.kts
    • File renamed to 'lib/playlistutils/build.gradle.kts'.
  • lib/playlist-utils/src/main/java/eu/kanade/tachiyomi/lib/playlistutils/PlaylistUtils.kt
    • File renamed to 'lib/playlistutils/src/main/java/eu/kanade/tachiyomi/lib/playlistutils/PlaylistUtils.kt'.
    • Updated import statement from 'extensions.utils.commonEmptyHeaders' to 'keiyoushi.utils.commonEmptyHeaders'.
  • lib/rapidcloud-extractor/build.gradle.kts
    • File renamed to 'lib/chillxextractor/build.gradle.kts'.
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/rapidcloud-extractor/src/main/assets/crypto-js.js
    • File renamed to 'lib/rapidcloudextractor/src/main/assets/crypto-js.js'.
  • lib/rapidcloud-extractor/src/main/assets/megacloud.decodedpng.js
    • File renamed to 'lib/rapidcloudextractor/src/main/assets/megacloud.decodedpng.js'.
  • lib/rapidcloud-extractor/src/main/assets/megacloud.getsrcs.js
    • File renamed to 'lib/rapidcloudextractor/src/main/assets/megacloud.getsrcs.js'.
  • lib/rapidcloud-extractor/src/main/java/eu/kanade/tachiyomi/lib/rapidcloudextractor/RapidCloudExtractor.kt
    • File renamed to 'lib/rapidcloudextractor/src/main/java/eu/kanade/tachiyomi/lib/rapidcloudextractor/RapidCloudExtractor.kt'.
  • lib/rapidcloud-extractor/src/main/java/eu/kanade/tachiyomi/lib/rapidcloudextractor/WebViewResolver.kt
    • File renamed to 'lib/rapidcloudextractor/src/main/java/eu/kanade/tachiyomi/lib/rapidcloudextractor/WebViewResolver.kt'.
  • lib/savefile-extractor/build.gradle.kts
    • File removed.
  • lib/savefile-extractor/src/main/java/eu/kanade/tachiyomi/lib/savefileextractor/SavefileExtractor.kt
    • File renamed to 'lib/savefileextractor/src/main/java/eu/kanade/tachiyomi/lib/savefileextractor/SavefileExtractor.kt'.
  • lib/savefileextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/sendvid-extractor/build.gradle.kts
    • File removed.
  • lib/sendvid-extractor/src/main/java/eu/kanade/tachiyomi/lib/sendvidextractor/SendvidExtractor.kt
    • File renamed to 'lib/sendvidextractor/src/main/java/eu/kanade/tachiyomi/lib/sendvidextractor/SendvidExtractor.kt'.
  • lib/sendvidextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/sibnet-extractor/build.gradle.kts
    • File renamed to 'lib/sibnetextractor/build.gradle.kts'.
  • lib/sibnet-extractor/src/main/java/eu/kanade/tachiyomi/lib/sibnetextractor/SibnetExtractor.kt
    • File renamed to 'lib/sibnetextractor/src/main/java/eu/kanade/tachiyomi/lib/sibnetextractor/SibnetExtractor.kt'.
  • lib/streamdav-extractor/build.gradle.kts
    • File renamed to 'lib/streamdavextractor/build.gradle.kts'.
  • lib/streamdav-extractor/src/main/java/eu/kanade/tachiyomi/lib/streamdavextractor/StreamDavExtractor.kt
    • File renamed to 'lib/streamdavextractor/src/main/java/eu/kanade/tachiyomi/lib/streamdavextractor/StreamDavExtractor.kt'.
  • lib/streamhidevid-extractor/build.gradle.kts
    • File removed.
  • lib/streamhidevid-extractor/src/main/java/eu/kanade/tachiyomi/lib/streamhidevidextractor/StreamHideVidExtractor.kt
    • File renamed to 'lib/streamhidevidextractor/src/main/java/eu/kanade/tachiyomi/lib/streamhidevidextractor/StreamHideVidExtractor.kt'.
  • lib/streamhidevidextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
    • Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/streamhub-extractor/build.gradle.kts
    • File removed.
  • lib/streamhub-extractor/src/main/java/eu/kanade/tachiyomi/lib/streamhubextractor/StreamHubExtractor.kt
    • File renamed to 'lib/streamhubextractor/src/main/java/eu/kanade/tachiyomi/lib/streamhubextractor/StreamHubExtractor.kt'.
  • lib/streamhubextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/streamlare-extractor/build.gradle.kts
    • File renamed to 'lib/streamlareextractor/build.gradle.kts'.
  • lib/streamlare-extractor/src/main/java/eu/kanade/tachiyomi/lib/streamlareextractor/StreamlareExtractor.kt
    • File renamed to 'lib/streamlareextractor/src/main/java/eu/kanade/tachiyomi/lib/streamlareextractor/StreamlareExtractor.kt'.
  • lib/streamsilk-extractor/build.gradle.kts
    • File renamed to 'lib/streamsilkextractor/build.gradle.kts'.
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/streamsilk-extractor/src/main/java/eu/kanade/tachiyomi/lib/streamsilkextractor/JsHunter.kt
    • File renamed to 'lib/streamsilkextractor/src/main/java/eu/kanade/tachiyomi/lib/streamsilkextractor/JsHunter.kt'.
  • lib/streamsilk-extractor/src/main/java/eu/kanade/tachiyomi/lib/streamsilkextractor/StreamSilkExtractor.kt
    • File renamed to 'lib/streamsilkextractor/src/main/java/eu/kanade/tachiyomi/lib/streamsilkextractor/StreamSilkExtractor.kt'.
    • Updated import statement from 'extensions.utils.commonEmptyHeaders' to 'keiyoushi.utils.commonEmptyHeaders'.
  • lib/streamtape-extractor/build.gradle.kts
    • File renamed to 'lib/streamtapeextractor/build.gradle.kts'.
  • lib/streamtape-extractor/src/main/java/eu/kanade/tachiyomi/lib/streamtapeextractor/StreamTapeExtractor.kt
    • File renamed to 'lib/streamtapeextractor/src/main/java/eu/kanade/tachiyomi/lib/streamtapeextractor/StreamTapeExtractor.kt'.
  • lib/streamvid-extractor/build.gradle.kts
    • File removed.
  • lib/streamvid-extractor/src/main/java/eu/kanade/tachiyomi/lib/streamvidextractor/StreamVidExtractor.kt
    • File renamed to 'lib/streamvidextractor/src/main/java/eu/kanade/tachiyomi/lib/streamvidextractor/StreamVidExtractor.kt'.
  • lib/streamvidextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
    • Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/streamwish-extractor/build.gradle.kts
    • File removed.
  • lib/streamwish-extractor/src/main/java/eu/kanade/tachiyomi/lib/streamwishextractor/StreamWishExtractor.kt
    • File renamed to 'lib/streamwishextractor/src/main/java/eu/kanade/tachiyomi/lib/streamwishextractor/StreamWishExtractor.kt'.
  • lib/streamwishextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
    • Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/synchrony/src/main/java/eu/kanade/tachiyomi/lib/synchrony/Deobfuscator.kt
    • Removed the '@Suppress("unused")' annotation.
    • Added explicit type for the 'TestInterface' object in 'engine.set'.
  • lib/universal-extractor/build.gradle.kts
    • File removed.
  • lib/universal-extractor/src/main/java/eu/kanade/tachiyomi/lib/universalextractor/UniversalExtractor.kt
    • File renamed to 'lib/universalextractor/src/main/java/eu/kanade/tachiyomi/lib/universalextractor/UniversalExtractor.kt'.
  • lib/universalextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/unpacker/build.gradle.kts
    • Changed the Gradle plugin from 'lib-kotlin' to 'lib-android'.
    • Removed 'java' source and target compatibility configurations.
  • lib/unpacker/src/main/java/eu/kanade/tachiyomi/lib/unpacker/SubstringExtractor.kt
    • Removed the license header.
  • lib/unpacker/src/main/java/eu/kanade/tachiyomi/lib/unpacker/Unpacker.kt
    • Removed the license header.
    • Updated the 'wordRegex' pattern to use '\w+' for conciseness.
  • lib/upstream-extractor/build.gradle.kts
    • File removed.
  • lib/upstream-extractor/src/main/java/eu/kanade/tachiyomi/lib/upstreamextractor/UpstreamExtractor.kt
    • File renamed to 'lib/upstreamextractor/src/main/java/eu/kanade/tachiyomi/lib/upstreamextractor/UpstreamExtractor.kt'.
  • lib/upstreamextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
    • Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/uqload-extractor/build.gradle.kts
    • File renamed to 'lib/uqloadextractor/build.gradle.kts'.
  • lib/uqload-extractor/src/main/java/eu/kanade/tachiyomi/lib/uqloadextractor/UqloadExtractor.kt
    • File renamed to 'lib/uqloadextractor/src/main/java/eu/kanade/tachiyomi/lib/uqloadextractor/UqloadExtractor.kt'.
  • lib/vidbom-extractor/build.gradle.kts
    • File renamed to 'lib/vidbomextractor/build.gradle.kts'.
  • lib/vidbom-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidbomextractor/VidBomExtractor.kt
    • File renamed to 'lib/vidbomextractor/src/main/java/eu/kanade/tachiyomi/lib/vidbomextractor/VidBomExtractor.kt'.
  • lib/vidguard-extractor/build.gradle.kts
    • File renamed to 'lib/vidguardextractor/build.gradle.kts'.
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/vidguard-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidguardextractor/VidGuardExtractor.kt
    • File renamed to 'lib/vidguardextractor/src/main/java/eu/kanade/tachiyomi/lib/vidguardextractor/VidGuardExtractor.kt'.
  • lib/vidhide-extractor/build.gradle.kts
    • File removed.
  • lib/vidhide-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidhideextractor/JsUnpacker.kt
    • File renamed to 'lib/vidhideextractor/src/main/java/eu/kanade/tachiyomi/lib/vidhideextractor/JsUnpacker.kt'.
  • lib/vidhide-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidhideextractor/VidHideExtractor.kt
    • File renamed to 'lib/vidhideextractor/src/main/java/eu/kanade/tachiyomi/lib/vidhideextractor/VidHideExtractor.kt'.
  • lib/vidhideextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/vidland-extractor/build.gradle.kts
    • File removed.
  • lib/vidland-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidlandextractor/VidLandExtractor.kt
    • File renamed to 'lib/vidlandextractor/src/main/java/eu/kanade/tachiyomi/lib/vidlandextractor/VidLandExtractor.kt'.
  • lib/vidlandextractor/build.gradle.kts
    • Added new file: Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/vidmoly-extractor/build.gradle.kts
    • File renamed to 'lib/vidmolyextractor/build.gradle.kts'.
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/vidmoly-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidmolyextractor/VidMolyExtractor.kt
    • File renamed to 'lib/vidmolyextractor/src/main/java/eu/kanade/tachiyomi/lib/vidmolyextractor/VidMolyExtractor.kt'.
    • Updated import statement from 'extensions.utils.commonEmptyHeaders' to 'keiyoushi.utils.commonEmptyHeaders'.
  • lib/vido-extractor/build.gradle.kts
    • File removed.
  • lib/vido-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidoextractor/VidoExtractor.kt
    • File renamed to 'lib/vidoextractor/src/main/java/eu/kanade/tachiyomi/lib/vidoextractor/VidoExtractor.kt'.
  • lib/vidoextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
    • Dependency 'libs.jsunpacker' no longer excludes 'kotlin-stdlib-jdk8'.
  • lib/vidsrc-extractor/build.gradle.kts
    • File removed.
  • lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt
    • File renamed to 'lib/vidsrcextractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt'.
  • lib/vidsrcextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/vk-extractor/build.gradle.kts
    • File renamed to 'lib/vkextractor/build.gradle.kts'.
  • lib/vk-extractor/src/main/java/eu/kanade/tachiyomi/lib/vkextractor/VkExtractor.kt
    • File renamed to 'lib/vkextractor/src/main/java/eu/kanade/tachiyomi/lib/vkextractor/VkExtractor.kt'.
  • lib/voe-extractor/build.gradle.kts
    • File removed.
  • lib/voe-extractor/src/main/java/eu/kanade/tachiyomi/lib/voeextractor/DdosGuardInterceptor.kt
    • File renamed to 'lib/voeextractor/src/main/java/eu/kanade/tachiyomi/lib/voeextractor/DdosGuardInterceptor.kt'.
  • lib/voe-extractor/src/main/java/eu/kanade/tachiyomi/lib/voeextractor/VoeExtractor.kt
    • File renamed to 'lib/voeextractor/src/main/java/eu/kanade/tachiyomi/lib/voeextractor/VoeExtractor.kt'.
  • lib/voeextractor/build.gradle.kts
    • Added new file: Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • lib/vudeo-extractor/build.gradle.kts
    • File renamed to 'lib/vudeoextractor/build.gradle.kts'.
  • lib/vudeo-extractor/src/main/java/eu/kanade/tachiyomi/lib/vudeoextractor/VudeoExtractor.kt
    • File renamed to 'lib/vudeoextractor/src/main/java/eu/kanade/tachiyomi/lib/vudeoextractor/VudeoExtractor.kt'.
  • lib/yourupload-extractor/build.gradle.kts
    • File renamed to 'lib/youruploadextractor/build.gradle.kts'.
  • lib/yourupload-extractor/src/main/java/eu/kanade/tachiyomi/lib/youruploadextractor/YourUploadExtractor.kt
    • File renamed to 'lib/youruploadextractor/src/main/java/eu/kanade/tachiyomi/lib/youruploadextractor/YourUploadExtractor.kt'.
  • src/all/animeonsen/src/eu/kanade/tachiyomi/animeextension/all/animeonsen/AnimeOnsen.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'AnimeOnsen' class.
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/animeonsen/src/eu/kanade/tachiyomi/animeextension/all/animeonsen/dto/AnimeOnsenDto.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/animeworldindia/build.gradle
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • src/all/animeworldindia/src/eu/kanade/tachiyomi/animeextension/all/animeworldindia/AnimeWorldIndia.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'AnimeWorldIndia' class.
    • Applied minor syntax changes for conciseness in conditional blocks.
  • src/all/animeworldindia/src/eu/kanade/tachiyomi/animeextension/all/animeworldindia/AnimeWorldIndiaFilters.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/animexin/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:dailymotion-extractor' to ':lib:dailymotionextractor').
  • src/all/animexin/src/eu/kanade/tachiyomi/animeextension/all/animexin/AnimeXin.kt
    • Changed the class declaration style for 'AnimeXin'.
    • Applied minor syntax changes for conciseness in conditional blocks.
  • src/all/anizone/build.gradle
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • src/all/anizone/src/eu/kanade/tachiyomi/animeextension/all/anizone/AniZone.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'AniZone' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/chineseanime/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:dailymotion-extractor' to ':lib:dailymotionextractor').
  • src/all/chineseanime/src/eu/kanade/tachiyomi/animeextension/all/chineseanime/ChineseAnime.kt
    • Changed the class declaration style for 'ChineseAnime'.
    • Applied minor syntax changes for conciseness in conditional blocks.
  • src/all/debridindex/src/eu/kanade/tachiyomi/animeextension/all/debridindex/DebridIndex.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'DebridIndex' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/googledrive/build.gradle
    • Renamed the dependency from ':lib:googledrive-extractor' to ':lib:googledriveextractor'.
  • src/all/googledrive/src/eu/kanade/tachiyomi/animeextension/all/googledrive/GoogleDrive.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'GoogleDrive' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/googledrive/src/eu/kanade/tachiyomi/animeextension/all/googledrive/GoogleDriveMultiFormReqs.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/googledriveindex/src/eu/kanade/tachiyomi/animeextension/all/googledriveindex/GoogleDriveIndex.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'GoogleDriveIndex' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/hentaitorrent/src/eu/kanade/tachiyomi/animeextension/all/hentaitorrent/HentaiTorrent.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'HentaiTorrent' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/jable/src/eu/kanade/tachiyomi/animeextension/all/jable/Jable.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/jable/src/eu/kanade/tachiyomi/animeextension/all/jable/JableFactory.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/jable/src/eu/kanade/tachiyomi/animeextension/all/jable/JableFilters.kt
    • Applied minor syntax changes for conciseness in class and function declarations.
  • src/all/javgg/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:okru-extractor' to ':lib:okruextractor').
  • src/all/javgg/src/eu/kanade/tachiyomi/animeextension/all/javgg/Javgg.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Javgg' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/javguru/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:streamwish-extractor' to ':lib:streamwishextractor').
  • src/all/javguru/src/eu/kanade/tachiyomi/animeextension/all/javguru/JavGuru.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'JavGuru' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/jellyfin/src/eu/kanade/tachiyomi/animeextension/all/jellyfin/Jellyfin.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'Jellyfin' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/jellyfin/src/eu/kanade/tachiyomi/animeextension/all/jellyfin/Utils.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/jellyfin/src/eu/kanade/tachiyomi/animeextension/all/jellyfin/dto/ItemType.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/lmanime/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:dailymotion-extractor' to ':lib:dailymotionextractor').
  • src/all/lmanime/src/eu/kanade/tachiyomi/animeextension/all/lmanime/LMAnime.kt
    • Changed the class declaration style for 'LMAnime'.
    • Applied minor syntax changes for conciseness in conditional blocks.
  • src/all/missav/build.gradle
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • src/all/missav/src/eu/kanade/tachiyomi/animeextension/all/missav/MissAV.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'MissAV' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/missav/src/eu/kanade/tachiyomi/animeextension/all/missav/MissAVFilters.kt
    • Applied minor syntax changes for conciseness in class declarations.
  • src/all/missav/src/eu/kanade/tachiyomi/animeextension/all/missav/MissAvApi.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/missav/src/eu/kanade/tachiyomi/animeextension/all/missav/MissAvDtoModels.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/myreadingmanga/src/eu/kanade/tachiyomi/animeextension/all/myreadingmanga/MyReadingManga.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the class declaration style for 'MyReadingManga'.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/newgrounds/src/eu/kanade/tachiyomi/animeextension/all/newgrounds/NewGrounds.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'NewGrounds' class.
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/newgrounds/src/eu/kanade/tachiyomi/animeextension/all/newgrounds/NewGroundsFilters.kt
    • Applied minor syntax changes for conciseness in class declarations.
  • src/all/nyaatorrent/src/eu/kanade/tachiyomi/animeextension/all/nyaatorrent/NyaaTorrent.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'NyaaTorrent' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/ptorrent/src/eu/kanade/tachiyomi/animeextension/all/ptorrent/PTorrent.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'PTorrent' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/rouvideo/build.gradle
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • src/all/rouvideo/src/eu/kanade/tachiyomi/animeextension/all/rouvideo/RouVideo.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/rouvideo/src/eu/kanade/tachiyomi/animeextension/all/rouvideo/RouVideoDto.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/rouvideo/src/eu/kanade/tachiyomi/animeextension/all/rouvideo/RouVideoFactory.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/rouvideo/src/eu/kanade/tachiyomi/animeextension/all/rouvideo/RouVideoFilter.kt
    • Applied minor syntax changes for conciseness in class declarations.
  • src/all/shabakatycinemana/src/eu/kanade/tachiyomi/animeextension/all/shabakatycinemana/ShabakatyCinemana.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'ShabakatyCinemana' class.
    • Applied minor syntax changes for conciseness in function declarations and class declarations.
  • src/all/streamingcommunity/build.gradle
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • src/all/streamingcommunity/src/eu/kanade/tachiyomi/animeextension/all/streamingcommunity/Dto.kt
    • Applied minor syntax changes for conciseness in conditional blocks.
  • src/all/streamingcommunity/src/eu/kanade/tachiyomi/animeextension/all/streamingcommunity/Filters.kt
    • Applied minor syntax changes for conciseness in class declarations.
  • src/all/streamingcommunity/src/eu/kanade/tachiyomi/animeextension/all/streamingcommunity/StreamingCommunity.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'StreamingCommunity' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/streamingcommunity/src/eu/kanade/tachiyomi/animeextension/all/streamingcommunity/StreamingCommunityFactory.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/stremio/src/eu/kanade/tachiyomi/animeextension/all/stremio/Dto.kt
    • Updated import statement from 'extensions.utils.tryParse' to 'keiyoushi.utils.tryParse'.
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/stremio/src/eu/kanade/tachiyomi/animeextension/all/stremio/Stremio.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'Stremio' class.
    • Applied minor syntax changes for conciseness in function declarations and class declarations.
  • src/all/stremio/src/eu/kanade/tachiyomi/animeextension/all/stremio/Utils.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/stremio/src/eu/kanade/tachiyomi/animeextension/all/stremio/addon/AddonManager.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
  • src/all/stremio/src/eu/kanade/tachiyomi/animeextension/all/stremio/addon/dto/CatalogDto.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/stremio/src/eu/kanade/tachiyomi/animeextension/all/stremio/addon/dto/ResourceDto.kt
    • Applied minor syntax changes for conciseness in function declarations.
  • src/all/subsplease/src/eu/kanade/tachiyomi/animeextension/all/subsplease/Subsplease.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'Subsplease' class.
    • Applied minor syntax changes for conciseness in conditional blocks.
  • src/all/sudatchi/src/eu/kanade/tachiyomi/animeextension/all/sudatchi/Sudatchi.kt
    • Changed the class declaration style for 'Sudatchi'.
  • src/all/sudatchinsfw/src/eu/kanade/tachiyomi/animeextension/all/sudatchinsfw/Sudatchi.kt
    • Changed the class declaration style for 'Sudatchi'.
  • src/all/supjav/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:streamtape-extractor' to ':lib:streamtapeextractor').
  • src/all/supjav/src/eu/kanade/tachiyomi/animeextension/all/supjav/SupJav.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'SupJav' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/torrentio/src/eu/kanade/tachiyomi/animeextension/all/torrentio/Torrentio.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Torrentio' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/torrentioanime/src/eu/kanade/tachiyomi/animeextension/all/torrentioanime/AniListFilters.kt
    • Applied minor syntax changes for conciseness in inline function declarations and class declarations.
  • src/all/torrentioanime/src/eu/kanade/tachiyomi/animeextension/all/torrentioanime/Torrentio.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Torrentio' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/all/xnxx/src/eu/kanade/tachiyomi/animeextension/all/xnxx/Xnxx.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Xnxx' class.
  • src/all/xvideos/src/eu/kanade/tachiyomi/animeextension/all/xvideos/Xvideos.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Xvideos' class.
    • Applied minor syntax changes for conciseness in function declarations.
  • src/ar/anime4up/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:dood-extractor' to ':lib:doodextractor').
  • src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/Anime4Up.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Anime4Up' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/ar/anime4up/src/eu/kanade/tachiyomi/animeextension/ar/anime4up/Anime4UpFilters.kt
    • Applied minor syntax changes for conciseness in inline function declarations.
  • src/ar/animeblkom/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:mp4upload-extractor' to ':lib:mp4uploadextractor').
  • src/ar/animeblkom/src/eu/kanade/tachiyomi/animeextension/ar/animeblkom/AnimeBlkom.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'AnimeBlkom' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/ar/animeiat/src/eu/kanade/tachiyomi/animeextension/ar/animeiat/Animeiat.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Animeiat' class.
    • Applied minor syntax changes for conciseness in conditional blocks.
  • src/ar/animelek/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:streamtape-extractor' to ':lib:streamtapeextractor').
  • src/ar/animelek/src/eu/kanade/tachiyomi/animeextension/ar/animelek/AnimeLek.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'AnimeLek' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/ar/animerco/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:uqload-extractor' to ':lib:uqloadextractor').
  • src/ar/animerco/src/eu/kanade/tachiyomi/animeextension/ar/animerco/Animerco.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Animerco' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/ar/arabseed/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:dood-extractor' to ':lib:doodextractor').
  • src/ar/arabseed/src/eu/kanade/tachiyomi/animeextension/ar/arabseed/ArabSeed.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'ArabSeed' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/ar/asia2tv/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:dood-extractor' to ':lib:doodextractor').
  • src/ar/asia2tv/src/eu/kanade/tachiyomi/animeextension/ar/asia2tv/Asia2TV.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Asia2TV' class.
    • Applied minor syntax changes for conciseness in function declarations and conditional blocks.
  • src/ar/cimaleek/build.gradle
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • src/ar/cimaleek/src/eu/kanade/tachiyomi/animeextension/ar/cimaleek/Cimaleek.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'Cimaleek' class.
    • Applied minor syntax changes for conciseness in conditional blocks and class declarations.
  • src/ar/egydead/build.gradle
    • Renamed multiple extractor dependencies (e.g., ':lib:dood-extractor' to ':lib:doodextractor').
  • src/ar/egydead/src/eu/kanade/tachiyomi/animeextension/ar/egydead/EgyDead.kt
    • Updated import statement from 'extensions.utils.getPreferencesLazy' to 'keiyoushi.utils.getPreferencesLazy'.
    • Changed the inheritance order for the 'EgyDead' class.
    • Applied minor syntax changes for conciseness in conditional blocks.
  • src/ar/faselhd/build.gradle
    • Renamed the dependency from ':lib:playlist-utils' to ':lib:playlistutils'.
  • src/ar/faselhd/src/eu/kanade/tachiyomi/animeextension/ar/faselhd/FASELHD.kt
    • Updated import statements from 'extensions.utils.' to 'keiyoushi.utils.'.
    • Changed the inheritance order for the 'FASELHD' class.
    • Applied minor syntax changes for conciseness in function declarations and class declarations.
Ignored Files
  • Ignored by pattern: .github/workflows/** (6)
    • .github/workflows/build_pull_request.yml
    • .github/workflows/build_push.yml
    • .github/workflows/codeberg_mirror.yml
    • .github/workflows/issue_moderator.yml
    • .github/workflows/lock.yml
    • .github/workflows/zizmor.yml
Activity
  • The pull request was created by cuong-tran.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request significantly upgrades the Android Gradle Plugin and its dependencies, refactoring code for style and consistency across build scripts, CI configurations, and source code, with a notable performance enhancement in Extensions.kt. However, a high-severity command injection vulnerability was identified in a CI script due to the use of shell=True with untrusted command-line arguments, which could compromise the build environment. It is strongly recommended to avoid using the shell for executing commands and instead pass arguments as a list. Additionally, a minor grammatical issue in CONTRIBUTING.md should be addressed to improve clarity for contributors.

stevenyomi and others added 18 commits February 6, 2026 23:55
(cherry picked from commit 1e7e3f4ab2c62e36b6f78730b14d2f6b87ae3615)
(cherry picked from commit 37830fa93deb36b1771c0fb804cc572789bffbcb)
* Removed `kotlin-tooling-metadata.json`, see https://togithub.com/Kotlin/kotlinx.coroutines/issues/3158#issuecomment-1023151105
  This file includes Gradle version code, so Gradle updates will no longer cause binary changes.

* Removed "META-INF/version-control-info.textproto" introduced in AGP 8.4.1, which causes the binaries to change on each commit.

AGP updates will still cause binaries changes because it produces a required `app-metadata.properties` under `META-INF`,
and the `META-INF/MANIFEST.MF` file in the signature includes AGP version.

It is possible to empty `app-metadata.properties`: https://stackoverflow.com/questions/77745443/how-to-stop-gradle-from-generating-app-metadata-properties-at-compile-time

(cherry picked from commit 601feff28234ea6e8a490b7ab75c8d31ece66dcb)
* Fix Android Manifest hack for new AGP versions

* Minor changes

(cherry picked from commit 08179ad034ef1bb855ff086a9ef25e48ff04bcf9)
(cherry picked from commit 582404b5d2cdc2dd3f01db688fe4d816a37531a3)
(cherry picked from commit ce706d7133870f2e779259800c07fd3509ad32ad)
* Update CI workflows and add security scanning

* Add timeout-minutes

(cherry picked from commit ce9ab5b5896c8eee674bb9c0a0c1894560dae459)
(cherry picked from commit 25afd5b6e842caf7ce870629472090147a4f7787)
* Reinstate versionId field in index.json

* address deprecation

(cherry picked from commit 215d8f9f5421f603131b516eb82f8a0502f101e6)
(cherry picked from commit 86f22f026e2dca6970f1c05c0dde298b3cd7625b)
(cherry picked from commit f250c641e460ad79c22b92c8859e8adbedae2bcd)
* fix infinite recusrsion in getting dependent extensions

* suggestion

(cherry picked from commit 8d00de86978ad9e2c306fad48eed67897961a583)
…12161)

* CI: Fix get_module_list to handle renamed files in git diff output

* cleaner code partially based on review

* oops

* cleaner

(cherry picked from commit d0d08e5ea2657eff6cac7510fb844a272ca59318)
* bump dependencies: gradle, kotlin

first gradle sync passes

* fix sourceset and manifest generation

built some extensions

* bundle kotlin related deps

* cleanup & deprecated gradle features

* align kgp version

* use serialization 1.7.3

* gradle 9.3.1

* review changes

* review changes

* spelling mistake

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
(cherry picked from commit 464acfa1d07627da060a6251629e6d353d5912a7)
(cherry picked from commit 49b76d11cacbfbf672f66c198f4ecc51bf0c6006)
cuong-tran and others added 3 commits February 7, 2026 00:36
* spotless with ktlint

* disable spotless on generated newtoki and wolfdotcom files

* fetch depth

(cherry picked from commit bec7c8d6a32528758873a8345ec685105fedbb69)
@cuong-tran
Copy link
Contributor Author

/gemini review

@cuong-tran cuong-tran requested a review from Copilot February 7, 2026 16:17
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This is an extensive pull request that successfully upgrades the Android Gradle Plugin, Gradle itself, and numerous other dependencies. The changes are thorough, including necessary module renames to comply with the new AGP version, build script updates to modern syntax, and a significant refactoring of utility packages. The code style has also been improved across the board by converting many functions to single-expression bodies. The documentation updates in CONTRIBUTING.md and README.md are also appreciated and align well with the codebase changes. I have one suggestion regarding HLS playlist parsing that could prevent a potential user experience issue.

I am having trouble creating individual review comments. Click here to see my feedback.

lib/playlist-utils/src/main/java/eu/kanade/tachiyomi/lib/playlistutils/PlaylistUtils.kt (166-170)

medium

This change removes the filter for mp4a (audio-only) streams. While the original code had a FIXME, this removal could lead to audio-only streams being parsed as videos, as they often lack a RESOLUTION tag. This might result in items in the video list that are audio-only, which could be confusing for users or cause playback issues. Consider re-introducing a filter, perhaps by checking for the absence of a RESOLUTION tag, to ensure only streams with video are included.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 204 out of 785 changed files in this pull request and generated 8 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@cuong-tran cuong-tran merged commit 13a7dbe into master Feb 9, 2026
8 checks passed
@github-actions github-actions bot deleted the agp branch February 9, 2026 19:15
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 12, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants