Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: quran/quran_android
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: qaloon-v1.0.0
Choose a base ref
...
head repository: quran/quran_android
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Loading
Showing 1,359 changed files with 65,961 additions and 30,673 deletions.
11 changes: 11 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# top-most EditorConfig file
root = true

# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true
indent_style = space
indent_size = 2
continuation_indent_size = 4
charset = utf-8
114 changes: 114 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
name: Pull Request
on:
pull_request:
branches:
- main
merge_group:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
name: Validate PR
runs-on: ubuntu-latest
if: github.event_name != 'merge_group'
steps:
- name: Checkout the Code
uses: actions/checkout@v4

- name: Setup JDK
uses: actions/setup-java@v4
with:
distribution: zulu
java-version: 17

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4

- name: Build debug APK
run: ./gradlew assembleMadaniDebug

- name: Run lint
run: ./gradlew lintMadaniDebug

- name: Upload lint results
uses: actions/upload-artifact@v4
if: failure()
with:
name: lint_report
path: app/build/reports/lint-results-madaniDebug.html

- name: Run SqlDelight migration tests
run: ./gradlew verifySqlDelightMigration

- name: Run tests
run: ./gradlew testMadaniDebug -PdisableFirebase

- name: Upload test report
uses: actions/upload-artifact@v4
if: failure()
with:
name: unit_test_report
path: app/build/reports/tests/testMadaniDebugUnitTest/

- name: Download Previous Debug APK
uses: dawidd6/action-download-artifact@v9
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
workflow: post_merge.yml
name: latest-apk

- name: Run Apk Diff
run: |
gh release download -p '*.jar' -R jakewharton/diffuse 0.1.0
java -jar diffuse-0.1.0-binary.jar diff app-madani-debug.apk app/build/outputs/apk/madani/debug/app-madani-debug.apk > apk_differences.txt
{ echo "\`\`\`"; head -n 17 apk_differences.txt; echo "\`\`\`"; echo; } >> apk_differences_summary.txt
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Upload Apk Diff Results
uses: actions/upload-artifact@v4
if: success()
with:
name: apk_differences
path: apk_differences_summary.txt

- name: Get dependencies list
run: ./gradlew :app:dependencies --configuration madaniReleaseRuntimeClasspath > current_dependencies.txt

- name: Download Previous Dependencies List
uses: dawidd6/action-download-artifact@v9
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
workflow: post_merge.yml
name: dependencies

- name: Download and run dependency-diff-tldr
run: |
gh release download -p '*.jar' -R careem/dependency-diff-tldr v0.0.2
echo "Running Dependency Diff"
java -jar dependency-diff-tldr-r8.jar dependencies.txt current_dependencies.txt > difference.txt
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Upload Dependency Diff Results
uses: actions/upload-artifact@v4
if: success()
with:
name: dependency_differences
path: difference.txt

- name: Write the PR Number
run: |
echo ${{ github.event.number }} > pr.txt
- name: Upload PR Number
uses: actions/upload-artifact@v4
with:
name: pr
path: pr.txt

env:
GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx8G -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParallelGC -Dfile.encoding=UTF-8"
28 changes: 28 additions & 0 deletions .github/workflows/merge.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Merge Queue
on:
pull_request:
merge_group:

jobs:
build:
name: Merge
runs-on: ubuntu-latest
if: github.event_name != 'pull_request'
steps:
- name: Checkout the Code
uses: actions/checkout@v4

- name: Setup JDK
uses: actions/setup-java@v4
with:
distribution: zulu
java-version: 17

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4

- name: Build debug APK
run: ./gradlew assembleMadaniDebug

env:
GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx8G -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParallelGC -Dfile.encoding=UTF-8"
53 changes: 53 additions & 0 deletions .github/workflows/post_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Comment on the pull request

on:
workflow_run:
workflows: ["Pull Request"]
types:
- completed

jobs:
comment:
name: Comment on Pull Request
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'success' }}
steps:
- name: Download PR Number
uses: dawidd6/action-download-artifact@v9
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
run_id: ${{ github.event.workflow_run.id }}
workflow: build.yml
name: pr

- name: Download Apk Diff Results
uses: dawidd6/action-download-artifact@v9
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
run_id: ${{ github.event.workflow_run.id }}
workflow: build.yml
name: apk_differences

- name: Comment with Apk Diff Results
run: |
export PR=`cat pr.txt | head -1`
gh pr -R quran/quran_android comment $PR -F apk_differences_summary.txt
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Download Dependency Diff Results
uses: dawidd6/action-download-artifact@v9
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
run_id: ${{ github.event.workflow_run.id }}
workflow: build.yml
name: dependency_differences

- name: Comment with Dependency Diff Results
run: |
if [ -s difference.txt ]; then
export PR=`cat pr.txt | head -1`
gh pr -R quran/quran_android comment $PR -F difference.txt
fi
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
47 changes: 47 additions & 0 deletions .github/workflows/post_merge.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Upload Dependency List and Debug App
on:
push:
branches:
- main
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
apkdeps:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout the Code
uses: actions/checkout@v4

- name: Setup JDK
uses: actions/setup-java@v4
with:
distribution: zulu
java-version: 17

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4

- name: Build debug Apk
run: ./gradlew assembleDebug

- name: Upload Debug Apk
uses: actions/upload-artifact@v4
if: success()
with:
name: latest-apk
path: "app/build/outputs/apk/madani/debug/app-madani-debug.apk"

- name: Get dependencies list
run: ./gradlew :app:dependencies --configuration madaniReleaseRuntimeClasspath > dependencies.txt

- name: Upload dependencies list
uses: actions/upload-artifact@v4
if: success()
with:
name: dependencies
path: dependencies.txt
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
.project
.settings
.kotlin
bin
gen
out
@@ -12,9 +13,12 @@ gen-external-apklibs
classes
ApiKeys.java
.gradle
app/src/beta
app/src/release
app/seed.txt
build/
*/crashlytics.properties
crashlytics-build.properties
com_crashlytics_export_strings.xml
com_crashlytics_export_strings.xml
extras
app/google-services.json
63 changes: 63 additions & 0 deletions CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
Quran Android Contributors
==========================

### Code

* [Asim Mohiuddin](https://github.com/asimmohiuddin) - images, gapless audio
and work on the Naskh version
* [g360230](https://github.com/g360230) - images and work on the Qaloon
version
* [Shuhrat Dehkanov](https://github.com/ozbek)
* [Ahmed Farra](https://github.com/afarra)
* [Hussein Maher](https://twitter.com/husseinmaher)
* [Wael Nafee](https://twitter.com/wnafee)
* [Ahmed Fouad](https://twitter.com/fo2ad)
* [Mahmoud Hossam](https://github.com/mahmoudhossam)
* [Rehab Mohamed](https://twitter.com/hams_rrr)
* [Ahmed Essam](https://twitter.com/neo_4583)
* [Hosain Al Ahmad](https://github.com/hosainnet)
* [Ahmed Abdelaal](https://github.com/Ahmed9914)
* [Saïd B](https://github.com/sbou88)


### Audio

* [Anas Saiyed](https://github.com/anassaiyed) - scripts and support for migrating many shuyookh from gapped to gapless.
* [Nacer Tahri](https://github.com/nacer80)
* [Abdullah Hussein](https://abdullahhussein.com)
* [M. Jayyusi](https://github.com/MJayyusi)


### UI and Designer

* [Ahmad Galal](https://twitter.com/ahmadgalal)
* [Somaia Gabr](https://twitter.com/somaiagabr).


### Translators

* Farsi for version 2.0 by [M. Jafar Nakar](https://github.com/mjnanakar).
* Farsi for version 1.6 by [khajavi](https://github.com/khajavi).
* Turkish by Mehmed Mahmudoglu.
* Turkish updates by [Shuhrat Dehkanov](https://github.com/ozbek).
* Russian by Rinat [Ринат Валеев](https://github.com/Valey).
* Kurdish by [Goran Gharib](https://github.com/GoRaN909).
* French by Yasser [yasserkad](https://github.com/yasserkad).
* French updates by [Abdullah ibn Nadjo](https://github.com/abdullahibnnadjo).
* French updates 1441 Ramadan 13 (06/05/2020) [Saïd B](https://github.com/sbou88).
* German by [Armin Supuk](https://github.com/ArminSupuk).
* Chinese by [Bo Li](https://twitter.com/liboat).
* Uyghur by Abduqadir Abliz [Sahran](https://github.com/Sahran).
* Indonesian by [Saiful Khaliq](https://twitter.com/saifious).
* Malaysian by [Ahmad Syazwan](https://github.com/asyazwan).
* Spanish by [Alexander J. Salas B.](https://github.com/ajsb85).
* Uzbek by [Shuhrat Dehkanov](https://github.com/ozbek").
* Hungarian by [Dvornik László](mailto:laulicus@zoho.com)
* Bosnian by [Amar Luckin](https://github.com/aluckin3)
* Croatian by [Amar Luckin](https://github.com/aluckin3)
* Serbian by [Amar Luckin](https://github.com/aluckin3)


### and many more
* everyone we missed from the above lists - may Allah reward you!
* everyone who notified us about any bugs, made du3a for us, or that shared the app with family and friends.
Loading