diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8e0263e0..59241aa2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,18 +7,14 @@ env: jobs: build: - strategy: - matrix: - os: [ubuntu-20.04, macos-11] - runs-on: ${{ matrix.os }} - + runs-on: macos-11 steps: - uses: actions/checkout@v3 - uses: gradle/wrapper-validation-action@v1 - uses: actions/setup-java@v3 with: - distribution: "adopt-hotspot" - java-version: "11.0.11+9" + distribution: 'temurin' + java-version: '11' - uses: actions/cache@v3 with: @@ -55,21 +51,17 @@ jobs: -PRELEASE_SIGNING_ENABLED=false \ publishToMavenLocal fi - if: ${{ runner.os == 'macOS' && github.repository_owner == 'JuulLabs' }} - run: ./gradlew jacocoTestReport - if: runner.os == 'Linux' - - uses: EnricoMi/publish-unit-test-result-action@v1 + - uses: EnricoMi/publish-unit-test-result-action/composite@v1 with: files: '**/build/test-results/**/*.xml' report_individual_runs: 'true' - if: runner.os == 'Linux' - uses: codecov/codecov-action@v3 with: fail_ci_if_error: true - if: runner.os == 'Linux' - run: | rm -f ~/.gradle/caches/modules-2/modules-2.lock diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 58bbaa9c..03f3050b 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -16,8 +16,8 @@ jobs: - uses: gradle/wrapper-validation-action@v1 - uses: actions/setup-java@v3 with: - distribution: "adopt-hotspot" - java-version: "11.0.11+9" + distribution: 'temurin' + java-version: '11' - uses: actions/cache@v3 with: @@ -34,9 +34,8 @@ jobs: - run: ./gradlew dokkaHtmlMultiModule - - uses: JamesIves/github-pages-deploy-action@v4.3.3 + - uses: JamesIves/github-pages-deploy-action@v4.3.4 with: - branch: gh-pages folder: build/gh-pages - run: | diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c39ec135..7d3047cb 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -16,8 +16,8 @@ jobs: - uses: gradle/wrapper-validation-action@v1 - uses: actions/setup-java@v3 with: - distribution: "adopt-hotspot" - java-version: "11.0.11+9" + distribution: 'temurin' + java-version: '11' - uses: actions/cache@v3 with: @@ -32,7 +32,10 @@ jobs: ${{ runner.os }}-publish- ${{ runner.os }}- - - run: ./gradlew check + # Enabled new memory model for tests to workaround `MockEngine` freezing issue (after upgrading to Ktor 2.0.0). + # https://github.com/JuulLabs/tuulbox/pull/168 + - run: ./gradlew -Pkotlin.native.binary.memoryModel=experimental check + - run: >- ./gradlew --no-parallel diff --git a/build.gradle.kts b/build.gradle.kts index d683e6bb..9b8d1b18 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -12,7 +12,7 @@ buildscript { // > As a workaround, it is possible to manually update 'kotlinx-metadata-jvm' version in your project. // // todo: Remove when binary-compatibility-validator bundles support for metadata 1.7.x. - classpath("org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.4.2") + classpath("org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.5.0") } } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 03adc81f..b45b1ced 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -4,7 +4,7 @@ coroutines = "1.6.3" coroutines-native = "1.6.1-native-mt!!" jacoco = "0.8.7" kotlin = "1.7.0" -ktor = "2.0.2" +ktor = "2.0.3" [libraries] androidx-startup = { module = "androidx.startup:startup-runtime", version = "1.1.1" } @@ -12,7 +12,7 @@ kotlinx-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutine kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" } kotlinx-coroutines-native = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines-native" } kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" } -kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version = "0.3.3" } +kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version = "0.4.0" } ktor-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" } ktor-logging = { module = "io.ktor:ktor-client-logging", version.ref = "ktor" } ktor-mock = { module = "io.ktor:ktor-client-mock", version.ref = "ktor" }