diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index dcbba0597..f92f51a43 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -1,7 +1,7 @@ name: "\U0001F41E Bug report" description: Create a report to help us improve. title: "[Bug]: " -type: Bug # Retained to categorize the issue as per organization-level type +labels: ["bug"] body: - type: markdown attributes: @@ -70,7 +70,7 @@ body: required: false - type: textarea attributes: - label: Screenshots + label: Screen-shots description: Add screenshots related to the issue (if available). Can be created by pressing the Volume Down and Power Button at the same time on Android 4.0 and higher. validations: required: false diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index bc8b03c9e..7a1e7c030 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -12,17 +12,17 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v3 - name: Set up JDK - uses: actions/setup-java@v4 + uses: actions/setup-java@v3 with: distribution: 'temurin' java-version: '17' - name: Cache packages id: cache-packages - uses: actions/cache@v4 + uses: actions/cache@v3 with: path: | ~/.gradle/caches @@ -37,7 +37,7 @@ jobs: - name: AVD cache if: github.event_name != 'pull_request' - uses: actions/cache@v4 + uses: actions/cache@v3 id: avd-cache with: path: | @@ -89,7 +89,7 @@ jobs: run: bash ./gradlew assembleBetaDebug --stacktrace - name: Upload betaDebug APK - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 with: name: betaDebugAPK path: app/build/outputs/apk/beta/debug/app-*.apk @@ -98,17 +98,7 @@ jobs: run: bash ./gradlew assembleProdDebug --stacktrace - name: Upload prodDebug APK - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 with: name: prodDebugAPK path: app/build/outputs/apk/prod/debug/app-*.apk - - - name: Create and PR number artifact - run: | - echo "{\"pr_number\": ${{ github.event.pull_request.number || 'null' }}}" > pr_number.json - - - name: Upload PR number artifact - uses: actions/upload-artifact@v4 - with: - name: pr_number - path: ./pr_number.json diff --git a/.github/workflows/build-beta.yml b/.github/workflows/build-beta.yml deleted file mode 100644 index 8e1a26e15..000000000 --- a/.github/workflows/build-beta.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: Build beta only - -on: [workflow_dispatch] - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - - name: set up JDK 17 - uses: actions/setup-java@v4 - with: - java-version: '17' - distribution: 'temurin' - cache: gradle - - - name: Access test login credentials - run: | - echo "TEST_USER_NAME=${{ secrets.TEST_USER_NAME }}" >> local.properties - echo "TEST_USER_PASSWORD=${{ secrets.TEST_USER_PASSWORD }}" >> local.properties - - - name: Grant execute permission for gradlew - run: chmod +x gradlew - - - name: Set env - run: echo "COMMIT_SHA=$(git log -n 1 --format='%h')" >> $GITHUB_ENV - - - name: Generate betaDebug APK - run: ./gradlew assembleBetaDebug --stacktrace - - - name: Rename betaDebug APK - run: mv app/build/outputs/apk/beta/debug/app-*.apk app/build/outputs/apk/beta/debug/apps-android-commons-betaDebug-$COMMIT_SHA.apk - - - name: Upload betaDebug APK - uses: actions/upload-artifact@v4 - with: - name: apps-android-commons-betaDebugAPK-${{ env.COMMIT_SHA }} - path: app/build/outputs/apk/beta/debug/*.apk - retention-days: 30 diff --git a/.github/workflows/comment_artifacts_on_PR.yml b/.github/workflows/comment_artifacts_on_PR.yml deleted file mode 100644 index ee4ae7c46..000000000 --- a/.github/workflows/comment_artifacts_on_PR.yml +++ /dev/null @@ -1,96 +0,0 @@ -name: Comment Artifacts on PR - -on: - workflow_run: - workflows: [ "Android CI" ] - types: [ completed ] - -permissions: - pull-requests: write - contents: read - -concurrency: - group: comment-${{ github.event.workflow_run.id }} - cancel-in-progress: true - -jobs: - comment: - runs-on: ubuntu-latest - if: ${{ github.event.workflow_run.conclusion == 'success' && github.event.workflow_run.event == 'pull_request' }} - steps: - - name: Download and process artifacts - uses: actions/github-script@v7 - with: - github-token: ${{ secrets.GITHUB_TOKEN }} - script: | - const fs = require('fs'); - const runId = context.payload.workflow_run.id; - - const allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({ - owner: context.repo.owner, - repo: context.repo.repo, - run_id: runId, - }); - - const prNumberArtifact = allArtifacts.data.artifacts.find(artifact => artifact.name === "pr_number"); - if (!prNumberArtifact) { - console.log("pr_number artifact not found."); - return; - } - - const download = await github.rest.actions.downloadArtifact({ - owner: context.repo.owner, - repo: context.repo.repo, - artifact_id: prNumberArtifact.id, - archive_format: 'zip', - }); - - fs.writeFileSync(`${process.env.GITHUB_WORKSPACE}/pr_number.zip`, Buffer.from(download.data)); - const { execSync } = require('child_process'); - execSync('unzip -q pr_number.zip -d ./pr_number/'); - fs.unlinkSync('pr_number.zip'); - - const prData = JSON.parse(fs.readFileSync('./pr_number/pr_number.json', 'utf8')); - const prNumber = prData.pr_number; - - if (!prNumber || prNumber === 'null') { - console.log("No valid PR number found in pr_number.json. Skipping."); - return; - } - - const artifactsToLink = allArtifacts.data.artifacts.filter(artifact => artifact.name !== "pr_number"); - if (artifactsToLink.length === 0) { - console.log("No artifacts to link found."); - return; - } - - const comments = await github.rest.issues.listComments({ - owner: context.repo.owner, - repo: context.repo.repo, - issue_number: Number(prNumber), - }); - - const oldComments = comments.data.filter(comment => - comment.body.startsWith("✅ Generated APK variants!") - ); - for (const comment of oldComments) { - await github.rest.issues.deleteComment({ - owner: context.repo.owner, - repo: context.repo.repo, - comment_id: comment.id, - }); - console.log(`Deleted old comment ID: ${comment.id}`); - }; - - const commentBody = `✅ Generated APK variants!\n` + - artifactsToLink.map(artifact => { - const artifactUrl = `https://github.com/${context.repo.owner}/${context.repo.repo}/actions/runs/${runId}/artifacts/${artifact.id}`; - return `- 🤖 [Download ${artifact.name}](${artifactUrl})`; - }).join('\n'); - - await github.rest.issues.createComment({ - owner: context.repo.owner, - repo: context.repo.repo, - issue_number: Number(prNumber), - body: commentBody - }); diff --git a/.gitignore b/.gitignore index 7fa4767a7..e54ea2551 100644 --- a/.gitignore +++ b/.gitignore @@ -46,5 +46,4 @@ captures/* # Test and other output app/jacoco.exec -app/CommonsContributions -app/.* +app/CommonsContributions \ No newline at end of file diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml index ea0cb3b07..5c297a65e 100644 --- a/.idea/codeStyles/Project.xml +++ b/.idea/codeStyles/Project.xml @@ -16,7 +16,6 @@