Skip to content

Commit 3d08203

Browse files
Merge branch 'main' into LanguageUtil_improve
# Conflicts: # app/src/main/java/org/wikipedia/language/LanguageUtil.kt # app/src/test/java/org/wikipedia/language/LanguageUtilTest.java
2 parents 1042b08 + d6e1601 commit 3d08203

File tree

382 files changed

+12177
-6072
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

382 files changed

+12177
-6072
lines changed

.github/CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33

44
# For more information: https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
55

6-
* @cooltey @dbrant @sharvaniharan
6+
* @cooltey @dbrant

.github/workflows/android.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
run: git rev-parse HEAD > app/build/outputs/apk/alpha/release/rev-hash.txt
3939
- name: Rename APK to universal
4040
run: mv app/build/outputs/apk/alpha/release/app-alpha-release-signed.apk app/build/outputs/apk/alpha/release/app-alpha-universal-release.apk
41-
- uses: dev-drprasad/delete-tag-and-release@v0.2.1
41+
- uses: dev-drprasad/delete-tag-and-release@v1.1
4242
name: Delete latest alpha tag and release
4343
with:
4444
tag_name: latest
@@ -47,7 +47,7 @@ jobs:
4747
- name: Sleep for 30 seconds, to allow the tag to be deleted
4848
run: sleep 30s
4949
shell: bash
50-
- uses: ncipollo/release-action@v1.13.0
50+
- uses: ncipollo/release-action@v1.14.0
5151
name: Create new tag and release and upload artifacts
5252
with:
5353
name: latest

.github/workflows/android_phab.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: Post to Phabricator
2+
3+
on:
4+
pull_request:
5+
types: [opened, closed]
6+
7+
jobs:
8+
post_to_phab:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- name: Post to Phabricator when pull request is opened or closed
12+
if: ${{ github.event_name == 'pull_request' && (github.event.action == 'opened' || github.event.action == 'closed') }}
13+
env:
14+
PR_BODY: ${{ github.event.pull_request.body }}
15+
run: |
16+
message="${{ github.actor }} ${{ github.event.action }} ${{ github.event.pull_request._links.html.href }}"
17+
echo -e "${PR_BODY}" | grep -oEi "(^Bug:\s*T[0-9]+)|(^([*]*phabricator[*]*:[*]*\s*)?https:\/\/phabricator\.wikimedia\.org\/T[0-9]+)" | grep -oEi "T[0-9]+" | while IFS= read -r line; do
18+
echo "Processing: $line"
19+
curl https://phabricator.wikimedia.org/api/maniphest.edit \
20+
-d api.token=${{ secrets.PHAB_BOT_API_KEY }} \
21+
-d transactions[0][type]=comment \
22+
-d transactions[0][value]="${message}" \
23+
-d objectIdentifier=${line}
24+
done

.github/workflows/android_pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
runs-on: ubuntu-latest
1111
steps:
1212
- uses: actions/checkout@v4
13-
- uses: gradle/wrapper-validation-action@v2
13+
- uses: gradle/actions/wrapper-validation@v3
1414
- uses: actions/setup-java@v4
1515
with:
1616
distribution: 'temurin'

.mailmap

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# See: https://git-scm.com/docs/git-shortlog#_mapping_authors
2+
#
3+
Brooke Vibber <bvibber@wikimedia.org>
4+
Brooke Vibber <bvibber@wikimedia.org> <brion@wikimedia.org>
5+
Brooke Vibber <bvibber@wikimedia.org> <brion@pobox.com>

app/build.gradle

Lines changed: 28 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ android {
3737
applicationId 'org.wikipedia'
3838
minSdk 21
3939
targetSdk 34
40-
versionCode 50475
40+
versionCode 50488
4141
testApplicationId 'org.wikipedia.test'
4242
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
4343
testInstrumentationRunnerArguments clearPackageData: 'true'
@@ -65,13 +65,16 @@ android {
6565
buildConfig true
6666
}
6767

68+
androidResources {
69+
generateLocaleConfig = true
70+
}
71+
6872
sourceSets {
6973

70-
prod { java.srcDirs += 'src/extra/java' }
71-
beta { java.srcDirs += 'src/extra/java' }
72-
alpha { java.srcDirs += 'src/extra/java' }
73-
dev { java.srcDirs += 'src/extra/java' }
74-
custom { java.srcDirs += 'src/extra/java' }
74+
[ prod, beta, alpha, dev, custom ].forEach {
75+
it.java.srcDirs += 'src/extra/java'
76+
it.res.srcDirs += 'src/extra/res'
77+
}
7578

7679
androidTest {
7780
assets.srcDirs += files("$projectDir/schemas".toString())
@@ -169,16 +172,17 @@ dependencies {
169172
// Debug with ./gradlew -q app:dependencies --configuration compile
170173

171174
String okHttpVersion = '4.12.0'
172-
String retrofitVersion = '2.9.0'
175+
String retrofitVersion = '2.11.0'
173176
String glideVersion = '4.16.0'
174177
String mockitoVersion = '5.2.0'
175-
String leakCanaryVersion = '2.13'
176-
String kotlinCoroutinesVersion = '1.7.3'
177-
String firebaseMessagingVersion = '23.4.1'
178+
String leakCanaryVersion = '2.14'
179+
String kotlinCoroutinesVersion = '1.8.1'
180+
String firebaseMessagingVersion = '24.0.0'
178181
String mlKitVersion = '17.0.5'
182+
String googlePayVersion = '19.3.0'
179183
String roomVersion = "2.6.1"
180184
String espressoVersion = '3.5.1'
181-
String serialization_version = '1.6.2'
185+
String serialization_version = '1.6.3'
182186
String metricsVersion = '2.4'
183187

184188
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.4'
@@ -188,12 +192,12 @@ dependencies {
188192
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinCoroutinesVersion"
189193
implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:$serialization_version"
190194

191-
implementation "com.google.android.material:material:1.11.0"
195+
implementation 'com.google.android.material:material:1.12.0'
192196
implementation 'androidx.appcompat:appcompat:1.6.1'
193-
implementation "androidx.core:core-ktx:1.12.0"
194-
implementation "androidx.browser:browser:1.7.0"
197+
implementation 'androidx.core:core-ktx:1.13.1'
198+
implementation "androidx.browser:browser:1.8.0"
195199
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
196-
implementation "androidx.fragment:fragment-ktx:1.6.2"
200+
implementation 'androidx.fragment:fragment-ktx:1.7.0'
197201
implementation "androidx.paging:paging-runtime-ktx:3.2.1"
198202
implementation "androidx.palette:palette-ktx:1.0.0"
199203
implementation "androidx.preference:preference-ktx:1.2.1"
@@ -225,7 +229,7 @@ dependencies {
225229
implementation 'com.github.skydoves:balloon:1.6.4'
226230
implementation "com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter:1.0.0"
227231

228-
implementation 'org.maplibre.gl:android-sdk:10.2.0'
232+
implementation 'org.maplibre.gl:android-sdk:10.3.0'
229233
implementation 'org.maplibre.gl:android-plugin-annotation-v9:2.0.2'
230234

231235
implementation("androidx.room:room-runtime:$roomVersion")
@@ -248,12 +252,19 @@ dependencies {
248252
devImplementation "com.google.firebase:firebase-messaging-ktx:$firebaseMessagingVersion"
249253
customImplementation "com.google.firebase:firebase-messaging-ktx:$firebaseMessagingVersion"
250254

255+
// For integrating with Google Pay for donations
256+
prodImplementation "com.google.android.gms:play-services-wallet:$googlePayVersion"
257+
betaImplementation "com.google.android.gms:play-services-wallet:$googlePayVersion"
258+
alphaImplementation "com.google.android.gms:play-services-wallet:$googlePayVersion"
259+
devImplementation "com.google.android.gms:play-services-wallet:$googlePayVersion"
260+
customImplementation "com.google.android.gms:play-services-wallet:$googlePayVersion"
261+
251262
debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion"
252263
implementation "com.squareup.leakcanary:plumber-android:$leakCanaryVersion"
253264

254265
testImplementation 'junit:junit:4.13.2'
255266
testImplementation "org.mockito:mockito-inline:$mockitoVersion"
256-
testImplementation 'org.robolectric:robolectric:4.11.1'
267+
testImplementation 'org.robolectric:robolectric:4.12.1'
257268
testImplementation "com.squareup.okhttp3:okhttp:$okHttpVersion"
258269
testImplementation "com.squareup.okhttp3:mockwebserver:$okHttpVersion"
259270
testImplementation 'org.hamcrest:hamcrest:2.2'

0 commit comments

Comments
 (0)