From 406590e317d9ab001cc0db568db0ccb33da80b07 Mon Sep 17 00:00:00 2001 From: Mykola Mokhnach Date: Sat, 21 Oct 2023 09:26:07 +0200 Subject: [PATCH] chore: Update various packages (#561) --- .eslintignore | 3 +++ .github/workflows/functional-test.yml | 2 +- .github/workflows/publish.js.yml | 4 +-- .github/workflows/unit-test.yml | 2 +- app/build.gradle | 27 ++++++++++++++----- .../uiautomator2/utils/XMLHelpersTests.java | 1 + build.gradle | 2 +- gradle.properties | 11 +++++--- gradle/wrapper/gradle-wrapper.properties | 2 +- package.json | 4 +-- 10 files changed, 40 insertions(+), 18 deletions(-) create mode 100644 .eslintignore diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 000000000..bb54b3559 --- /dev/null +++ b/.eslintignore @@ -0,0 +1,3 @@ +app +doc +gen diff --git a/.github/workflows/functional-test.yml b/.github/workflows/functional-test.yml index 08c6b8705..682618c40 100644 --- a/.github/workflows/functional-test.yml +++ b/.github/workflows/functional-test.yml @@ -46,7 +46,7 @@ jobs: - uses: actions/setup-java@v3 with: distribution: 'temurin' - java-version: '11' + java-version: '17' - run: nohup adb logcat > logcat.log & name: Capture Logcat - uses: reactivecircus/android-emulator-runner@v2 diff --git a/.github/workflows/publish.js.yml b/.github/workflows/publish.js.yml index 85d6cb157..d54965fa0 100644 --- a/.github/workflows/publish.js.yml +++ b/.github/workflows/publish.js.yml @@ -15,10 +15,10 @@ jobs: uses: actions/setup-node@v3 with: node-version: lts/* - - name: Set up JDK 11 + - name: Set up JDK uses: actions/setup-java@v2 with: - java-version: '11' + java-version: '17' distribution: 'temurin' cache: gradle - run: npm install --no-package-lock diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 66eabd678..82fbf2c9d 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -40,7 +40,7 @@ jobs: - uses: actions/setup-java@v3 with: distribution: 'temurin' - java-version: '11' + java-version: '17' - run: npm install --no-package-lock name: Install dev dependencies - run: npm run lint:java diff --git a/app/build.gradle b/app/build.gradle index 58d446c1a..f68ed43b8 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -5,7 +5,7 @@ buildscript { maven { url 'https://jitpack.io' } } dependencies { - classpath 'com.android.tools.build:gradle:7.4.2' + classpath 'com.android.tools.build:gradle:8.1.2' classpath 'com.github.bjoernq:unmockplugin:0.7.9' } } @@ -14,7 +14,7 @@ apply plugin: 'com.android.application' apply plugin: 'de.mobilej.unmock' android { - compileSdkVersion 30 + compileSdk 30 defaultConfig { applicationId 'io.appium.uiautomator2' minSdkVersion 21 @@ -50,7 +50,23 @@ android { } } testOptions { - unitTests.returnDefaultValues = true + unitTests { + includeAndroidResources = true + returnDefaultValues = true + all { + it.jvmArgs([ + '--add-opens', 'java.base/java.lang=ALL-UNNAMED', + '--add-opens', 'java.base/java.time=ALL-UNNAMED', + '--add-opens', 'java.base/java.time.format=ALL-UNNAMED', + '--add-opens', 'java.base/java.util=ALL-UNNAMED', + '--add-opens', 'java.base/java.util.concurrent=ALL-UNNAMED', + '--add-exports', 'java.base/sun.nio.ch=ALL-UNNAMED', + '--add-opens', 'java.base/java.lang.reflect=ALL-UNNAMED', + '--add-opens', 'java.base/java.io=ALL-UNNAMED', + '--add-exports', 'jdk.unsupported/sun.misc=ALL-UNNAMED', + ]) + } + } } packagingOptions { resources { @@ -76,7 +92,7 @@ dependencies { implementation 'androidx.test.uiautomator:uiautomator:2.2.0' implementation 'androidx.test:core:1.4.0' implementation 'androidx.test:runner:1.4.0' - implementation 'com.google.code.gson:gson:2.8.9' + implementation 'com.google.code.gson:gson:2.10.1' //noinspection GradleDependency implementation 'commons-io:commons-io:2.6' implementation 'io.netty:netty-all:4.0.41.Final' @@ -86,7 +102,6 @@ dependencies { implementation 'com.github.vbmacher:java-cup-runtime:11b-20160615-1' //noinspection GradleDependency implementation 'com.ibm.icu:icu4j:60.2' - unmock 'org.robolectric:android-all:7.1.0_r7-robolectric-0' testImplementation 'androidx.test.ext:junit:1.1.3' //noinspection GradleDependency testImplementation 'junit:junit:4.12' @@ -95,7 +110,7 @@ dependencies { testImplementation 'org.powermock:powermock-classloading-xstream:2.0.9' testImplementation 'org.powermock:powermock-module-junit4-rule:2.0.9' testImplementation 'org.powermock:powermock-module-junit4:2.0.9' - testImplementation 'org.robolectric:robolectric:4.5.1' + testImplementation 'org.robolectric:robolectric:4.10.3' androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'com.squareup.okhttp:okhttp:2.7.5' androidTestImplementation 'androidx.test.espresso:espresso-web:3.4.0' diff --git a/app/src/test/java/io/appium/uiautomator2/utils/XMLHelpersTests.java b/app/src/test/java/io/appium/uiautomator2/utils/XMLHelpersTests.java index f3f801391..b7d6271e1 100644 --- a/app/src/test/java/io/appium/uiautomator2/utils/XMLHelpersTests.java +++ b/app/src/test/java/io/appium/uiautomator2/utils/XMLHelpersTests.java @@ -256,6 +256,7 @@ public void parsesComplexXpath2() { } @Test + @Ignore("robolectric depends on com.ibm.icu:icu4j:72.1 while psychopath requires 60.2") public void parsesXpath2UsingIcu() { String query = "//android.widget.TextView[substring(@text, 1) = 'some, text']"; List nodes = findNodesUsingXpath2(XML, query, false); diff --git a/build.gradle b/build.gradle index 7d86f055a..521b858a9 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { maven { url 'https://jitpack.io' } } dependencies { - classpath 'com.android.tools.build:gradle:7.4.2' + classpath 'com.android.tools.build:gradle:8.1.2' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files diff --git a/gradle.properties b/gradle.properties index 09de94a2e..136633b90 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,12 +9,15 @@ # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. -# Default value: -Xmx10248m -XX:MaxPermSize=256m -# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 +# Default value: -Xmx10248m +# org.gradle.jvmargs=-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects -# org.gradle.parallel=true -org.gradle.jvmargs=-Xms512m -Xmx2048m -XX\:MaxPermSize\=1g -XX\:MaxMetaspaceSize\=1g +org.gradle.parallel=true +org.gradle.jvmargs=-Xms512m -Xmx2048m -XX\:MaxMetaspaceSize\=1g android.useAndroidX=true +android.defaults.buildfeatures.buildconfig=true +android.nonTransitiveRClass=false +android.nonFinalResIds=false diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 21c0633e7..87c407c04 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip diff --git a/package.json b/package.json index e98bad44a..abe1d2dde 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "test": "./gradlew testServerDebugUnitTest" }, "devDependencies": { - "@appium/eslint-config-appium": "^6.0.0", + "@appium/eslint-config-appium": "^8.0.0", "@semantic-release/changelog": "^6.0.1", "@semantic-release/git": "^10.0.1", "android-apidemos": "^4.0.0", @@ -50,7 +50,7 @@ "bluebird": "^3.7.2", "conventional-changelog-conventionalcommits": "^7.0.1", "fancy-log": "^2.0.0", - "eslint": "^7.32.0", + "eslint": "^8.40.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-promise": "^6.0.0", "semantic-release": "^22.0.5",