diff --git a/.github/workflows/build_push.yml b/.github/workflows/build_push.yml deleted file mode 100644 index 31c6655a..00000000 --- a/.github/workflows/build_push.yml +++ /dev/null @@ -1,102 +0,0 @@ -name: CI -on: - push: - branches: - - master - tags: - - v* - -jobs: - build: - name: Build app - runs-on: ubuntu-latest - - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.0 - with: - access_token: ${{ github.token }} - all_but_latest: true - - - name: Clone repo - uses: actions/checkout@v4 - - - name: Validate Gradle Wrapper - uses: gradle/wrapper-validation-action@v1 - - - name: Set up JDK 11 - uses: actions/setup-java@v3 - with: - java-version: 11 - distribution: adopt - - - name: Build app and run unit tests - uses: gradle/gradle-command-action@v2 - with: - arguments: assembleStandardRelease testStandardReleaseUnitTest - - # Sign APK and create release for tags - - - name: Get tag name - if: startsWith(github.ref, 'refs/tags/') && github.repository == 'tachiyomiorg/tachiyomi' - run: | - set -x - echo "VERSION_TAG=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV - - - name: Sign APK - if: startsWith(github.ref, 'refs/tags/') && github.repository == 'tachiyomiorg/tachiyomi' - uses: r0adkll/sign-android-release@v1 - with: - releaseDirectory: app/build/outputs/apk/standard/release - signingKeyBase64: ${{ secrets.SIGNING_KEY }} - alias: ${{ secrets.ALIAS }} - keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }} - keyPassword: ${{ secrets.KEY_PASSWORD }} - - - name: Clean up build artifacts - if: startsWith(github.ref, 'refs/tags/') && github.repository == 'tachiyomiorg/tachiyomi' - run: | - set -e - - mv app/build/outputs/apk/standard/release/app-standard-universal-release-unsigned-signed.apk tachiyomi-${{ env.VERSION_TAG }}.apk - sha=`sha256sum tachiyomi-${{ env.VERSION_TAG }}.apk | awk '{ print $1 }'` - echo "APK_UNIVERSAL_SHA=$sha" >> $GITHUB_ENV - - cp app/build/outputs/apk/standard/release/app-standard-arm64-v8a-release-unsigned-signed.apk tachiyomi-arm64-v8a-${{ env.VERSION_TAG }}.apk - sha=`sha256sum tachiyomi-arm64-v8a-${{ env.VERSION_TAG }}.apk | awk '{ print $1 }'` - echo "APK_ARM64_V8A_SHA=$sha" >> $GITHUB_ENV - - cp app/build/outputs/apk/standard/release/app-standard-armeabi-v7a-release-unsigned-signed.apk tachiyomi-armeabi-v7a-${{ env.VERSION_TAG }}.apk - sha=`sha256sum tachiyomi-armeabi-v7a-${{ env.VERSION_TAG }}.apk | awk '{ print $1 }'` - echo "APK_ARMEABI_V7A_SHA=$sha" >> $GITHUB_ENV - - cp app/build/outputs/apk/standard/release/app-standard-x86-release-unsigned-signed.apk tachiyomi-x86-${{ env.VERSION_TAG }}.apk - sha=`sha256sum tachiyomi-x86-${{ env.VERSION_TAG }}.apk | awk '{ print $1 }'` - echo "APK_X86_SHA=$sha" >> $GITHUB_ENV - - - name: Create Release - if: startsWith(github.ref, 'refs/tags/') && github.repository == 'tachiyomiorg/tachiyomi' - uses: softprops/action-gh-release@v1 - with: - tag_name: ${{ env.VERSION_TAG }} - name: Tachiyomi ${{ env.VERSION_TAG }} - body: | - --- - - ### Checksums - - | Variant | SHA-256 | - | ------- | ------- | - | Universal | ${{ env.APK_UNIVERSAL_SHA }} - | arm64-v8a | ${{ env.APK_ARM64_V8A_SHA }} - | armeabi-v7a | ${{ env.APK_ARMEABI_V7A_SHA }} - | x86 | ${{ env.APK_X86_SHA }} | - files: | - tachiyomi-${{ env.VERSION_TAG }}.apk - tachiyomi-arm64-v8a-${{ env.VERSION_TAG }}.apk - tachiyomi-armeabi-v7a-${{ env.VERSION_TAG }}.apk - tachiyomi-x86-${{ env.VERSION_TAG }}.apk - draft: true - prerelease: false - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/issue-moderator.yml b/.github/workflows/issue-moderator.yml index c2303a5b..ea96c1af 100644 --- a/.github/workflows/issue-moderator.yml +++ b/.github/workflows/issue-moderator.yml @@ -14,8 +14,16 @@ jobs: uses: tachiyomiorg/issue-moderator-action@v2 with: repo-token: ${{ secrets.GITHUB_TOKEN }} + duplicate-label: Duplicate + duplicate-check-enabled: true - duplicate-check-label: Source request + duplicate-check-labels: | + ["Source request", "Domain changed"] + + existing-check-enabled: true + existing-check-labels: | + ["Source request", "Domain changed"] + auto-close-rules: | [ { @@ -31,19 +39,35 @@ jobs: { "type": "title", "regex": ".*(Source name|Short description).*", - "message": "You did not fill out the description in the title" + "message": "You did not fill out the description in the title." + }, + { + "type": "both", + "regex": ".*(hq\\s*dragon|manga\\s*host|supermangas|superhentais|union\\s*mangas|yes\\s*mangas|manhuascan|manhwahot|leitor\\.?net|manga\\s*livre|tsuki\\s*mangas|manga\\s*yabu|mangas\\.in|mangas\\.pw|hentaikai|toptoon\\+?|colamanhua|mangadig|hitomi\\.la|copymanga|neox|1manga\\.co|mangafox\\.fun|mangahere\\.onl|mangakakalot\\.fun|manganel(?!o)|mangaonline\\.fun|mangatoday|manga\\.town|onemanga\\.info|koushoku|ksk\\.moe|comikey|leercapitulo|c[uứ]u\\s*truy[eệ]n|day\\s*comics?|reaper\\s*scans|constellar\\s*scans|mode\\s*scanlator|bakai|japscan|izakaya|blackout\\s*comics|anchira).*", + "ignoreCase": true, + "labels": ["invalid"], + "message": "{match} will not be added back as it is too difficult to maintain. Read [this](https://github.com/tachiyomiorg/tachiyomi-extensions/blob/master/REMOVED_SOURCES.md) for more information." + }, + { + "type": "both", + "regex": ".*(komiktap|gourmet\\s*scans|mangawow|hikari\\s*scans|knightnoscanlations|mangasy|nartag|xxx\\s*yaoi|luminous|hunters\\s*scan|reset(?:\\s*|-)scan|astra\\s*scans|manga(?:-|\\s*)pro|shinobiscans|plot ?twist ?no ?fansub(?: ?scans?)?|plot-twistnf-scans(?:\\.com)?|mhscans|aresmanga|realm ?scans?|mono ?manga|dat(?:\\s*|-)?gar\\s*scan|remangas|moon ?daisy(?: scans?)?).*", + "ignoreCase": true, + "labels": ["invalid"], + "message": "{match} will not be added back as the scanlator team has requested it to be removed. Read [this](https://github.com/tachiyomiorg/tachiyomi-extensions/blob/master/REMOVED_SOURCES.md) for more information." }, { "type": "both", - "regex": ".*(mangago|mangafox|hq\\s*dragon|manga\\s*host|supermangas|superhentais|union\\s*mangas|yes\\s*mangas|manhuascan|heroscan|manhwahot|leitor\\.?net|manga\\s*livre|tsuki\\s*mangas|manga\\s*yabu|mangas\\.in|mangas\\.pw|hentaikai|toptoon\\+?|read\\s*comic\\s*online|coco\\s*manhua|hitomi\\.la).*", + "regex": ".*(?:fail(?:ed|ure|s)?|can\\s*(?:no|')?t|(?:not|un).*able|(?