summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/deploy_github_releases.yml30
-rw-r--r--.github/workflows/deploy_library_releases.yml6
-rw-r--r--.github/workflows/deploy_snapshot.yml6
-rw-r--r--.github/workflows/draft_new_release.yml10
-rw-r--r--.github/workflows/pull_request.yml54
-rw-r--r--.github/workflows/shadow_job.yml6
-rw-r--r--.github/workflows/sync_crowdin.yml8
-rw-r--r--.github/workflows/update_publicsuffix_data.yml10
-rw-r--r--.github/workflows/validate_gradle_wrapper.yml4
9 files changed, 67 insertions, 67 deletions
diff --git a/.github/workflows/deploy_github_releases.yml b/.github/workflows/deploy_github_releases.yml
index ce28f89b..ba98f68f 100644
--- a/.github/workflows/deploy_github_releases.yml
+++ b/.github/workflows/deploy_github_releases.yml
@@ -10,10 +10,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
@@ -27,7 +27,7 @@ jobs:
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Build release binaries
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: :app:assembleFreeRelease :app:assembleNonFreeRelease :app:bundleNonFreeRelease
gradle-home-cache-cleanup: true
@@ -35,19 +35,19 @@ jobs:
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
- name: Upload non-free release APK
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: APS Non-Free Release APK
path: app/build/outputs/apk/nonFree/release/app-nonFree-release.apk
- name: Upload non-free release Bundle
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: APS Non-Free Release Bundle
path: app/build/outputs/bundle/nonFreeRelease/app-nonFree-release.aab
- name: Upload free release APK
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: APS Free Release APK
path: app/build/outputs/apk/free/release/app-free-release.apk
@@ -62,36 +62,36 @@ jobs:
needs: build
steps:
- name: Checkout
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
- name: Get Non-Free Release APK
- uses: actions/download-artifact@v3.0.1
+ uses: actions/download-artifact@9782bd6a9848b53b110e712e20e42d89988822b7 # v3.0.1
with:
name: APS Non-Free Release APK
path: artifacts/nonFree
- name: Get Non-Free Bundle
- uses: actions/download-artifact@v3.0.1
+ uses: actions/download-artifact@9782bd6a9848b53b110e712e20e42d89988822b7 # v3.0.1
with:
name: APS Non-Free Release Bundle
path: artifacts/nonFree
- name: Get Free Release APK
- uses: actions/download-artifact@v3.0.1
+ uses: actions/download-artifact@9782bd6a9848b53b110e712e20e42d89988822b7 # v3.0.1
with:
name: APS Free Release APK
path: artifacts/free
- name: Get Changelog Entry
id: changelog_reader
- uses: mindsers/changelog-reader-action@v2.2.1
+ uses: mindsers/changelog-reader-action@8f405204c383ffc2ff8646e9ae4daf7aa3a8b213 # v2.2.1
with:
version: ${{ github.ref }}
path: ./CHANGELOG.md
- name: Create Release
id: create_release
- uses: actions/create-release@v1.1.4
+ uses: actions/create-release@0cb9c9b65d5d1901c1f53e5e66eaf4afd303e70e # v1.1.4
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
@@ -106,7 +106,7 @@ jobs:
run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/}
- name: Upload Non-Free Release Apk
- uses: actions/upload-release-asset@v1.0.2
+ uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
@@ -116,7 +116,7 @@ jobs:
asset_content_type: application/vnd.android.package-archive
- name: Upload Non-Free Release Bundle
- uses: actions/upload-release-asset@v1.0.2
+ uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
@@ -126,7 +126,7 @@ jobs:
asset_content_type: application/octet-stream
- name: Upload Free Release Apk
- uses: actions/upload-release-asset@v1.0.2
+ uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
diff --git a/.github/workflows/deploy_library_releases.yml b/.github/workflows/deploy_library_releases.yml
index a2e408f8..b8e1cab3 100644
--- a/.github/workflows/deploy_library_releases.yml
+++ b/.github/workflows/deploy_library_releases.yml
@@ -9,16 +9,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
- name: Upload binaries
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: --no-configuration-cache :autofill-parser:publishAllPublicationsToMavenCentralRepository
gradle-home-cache-cleanup: true
diff --git a/.github/workflows/deploy_snapshot.yml b/.github/workflows/deploy_snapshot.yml
index 67415453..791bdf2e 100644
--- a/.github/workflows/deploy_snapshot.yml
+++ b/.github/workflows/deploy_snapshot.yml
@@ -10,12 +10,12 @@ jobs:
if: "!contains(github.event.head_commit.message, '[ci skip]')"
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
with:
fetch-depth: 0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
@@ -29,7 +29,7 @@ jobs:
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Build release app
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
env:
SNAPSHOT: "true"
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
diff --git a/.github/workflows/draft_new_release.yml b/.github/workflows/draft_new_release.yml
index 6c667247..59c53f07 100644
--- a/.github/workflows/draft_new_release.yml
+++ b/.github/workflows/draft_new_release.yml
@@ -32,23 +32,23 @@ jobs:
echo "PR_BASE=release-${BRANCH_VERSION}" >> $GITHUB_ENV
echo "PR_HEAD=release-prep" >> $GITHUB_ENV
- - uses: actions/checkout@v3.1.0
+ - uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
with:
ref: ${{ env.CHECKOUT_REF }}
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
- name: Update changelog
- uses: thomaseizinger/keep-a-changelog-new-release@1.3.0
+ uses: thomaseizinger/keep-a-changelog-new-release@5bc232893483441c5d6cd6c9dcb1e48abf9a2bae # 1.3.0
with:
version: ${{ github.event.milestone.title }}
- name: Setup Gradle caching
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
gradle-home-cache-cleanup: true
@@ -84,7 +84,7 @@ jobs:
git commit -m "build: bump version"
- name: Create Pull Request
- uses: peter-evans/create-pull-request@v4.2.0
+ uses: peter-evans/create-pull-request@b4d51739f96fca8047ad065eccef63442d8e99f7 # v4.2.0
with:
author: GitHub Actions <noreply@github.com>
body: This is an automated pull request to bump the changelog for the ${{ github.event.milestone.title }} release.
diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml
index f04533b2..361bae01 100644
--- a/.github/workflows/pull_request.yml
+++ b/.github/workflows/pull_request.yml
@@ -14,10 +14,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
- name: Check if relevant files have changed
- uses: actions/github-script@v6.3.3
+ uses: actions/github-script@d556feaca394842dc55e4734bf3bb9f685482fa0 # v6.3.3
id: service-changed
with:
result-encoding: string
@@ -35,12 +35,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
with:
fetch-depth: 0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
@@ -49,14 +49,14 @@ jobs:
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Check codestyle
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: ktfmtCheck
gradle-home-cache-cleanup: true
- name: Upload Kotlin build report
if: "${{ always() }}"
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: Build report
path: build/reports/kotlin-build/
@@ -66,12 +66,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
with:
fetch-depth: 0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
@@ -80,21 +80,21 @@ jobs:
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Run unit tests
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: test -PslimTests
gradle-home-cache-cleanup: true
- name: (Fail-only) Upload test report
if: "${{ failure() }}"
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: Test report
path: app/build/reports
- name: Upload Kotlin build report
if: "${{ always() }}"
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: Build report
path: build/reports/kotlin-build/
@@ -104,12 +104,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
with:
fetch-depth: 0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
@@ -118,14 +118,14 @@ jobs:
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Build debug APKs
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: assembleFreeDebug assembleNonFreeDebug assembleNonFreeRelease
gradle-home-cache-cleanup: true
- name: Upload Kotlin build report
if: "${{ always() }}"
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: Build report
path: build/reports/kotlin-build/
@@ -135,12 +135,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
with:
fetch-depth: 0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
@@ -149,14 +149,14 @@ jobs:
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Check library API
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: metalavaCheckCompatibilityRelease
gradle-home-cache-cleanup: true
- name: Upload Kotlin build report
if: "${{ always() }}"
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: Build report
path: build/reports/kotlin-build/
@@ -166,12 +166,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
with:
fetch-depth: 0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
@@ -180,14 +180,14 @@ jobs:
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Run Lint on debug variants
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: lintDebug
gradle-home-cache-cleanup: true
- name: Upload Kotlin build report
if: "${{ always() }}"
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: Build report
path: build/reports/kotlin-build/
@@ -197,12 +197,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
with:
fetch-depth: 0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
@@ -211,14 +211,14 @@ jobs:
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Run detekt
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: detekt
gradle-home-cache-cleanup: true
- name: Upload Kotlin build report
if: "${{ always() }}"
- uses: actions/upload-artifact@v3.1.1
+ uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # v3.1.1
with:
name: Build report
path: build/reports/kotlin-build/
diff --git a/.github/workflows/shadow_job.yml b/.github/workflows/shadow_job.yml
index 74ae9287..50eb159b 100644
--- a/.github/workflows/shadow_job.yml
+++ b/.github/workflows/shadow_job.yml
@@ -25,12 +25,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
with:
fetch-depth: 0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: ${{ matrix.java-version }}
@@ -39,7 +39,7 @@ jobs:
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Run checks
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
env:
DEP_OVERRIDE: true
DEP_OVERRIDE_agp: ${{ matrix.agp-version }}
diff --git a/.github/workflows/sync_crowdin.yml b/.github/workflows/sync_crowdin.yml
index cd7cf05f..b447260d 100644
--- a/.github/workflows/sync_crowdin.yml
+++ b/.github/workflows/sync_crowdin.yml
@@ -9,16 +9,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
- name: Download new translations from Crowdin
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: --no-configuration-cache crowdin
gradle-home-cache-cleanup: true
@@ -32,7 +32,7 @@ jobs:
- name: Create Pull Request
id: cpr
- uses: peter-evans/create-pull-request@v4.2.0
+ uses: peter-evans/create-pull-request@b4d51739f96fca8047ad065eccef63442d8e99f7 # v4.2.0
if: "env.UPDATED == 'true'"
with:
author: GitHub Actions <noreply@github.com>
diff --git a/.github/workflows/update_publicsuffix_data.yml b/.github/workflows/update_publicsuffix_data.yml
index e6518d45..68db2902 100644
--- a/.github/workflows/update_publicsuffix_data.yml
+++ b/.github/workflows/update_publicsuffix_data.yml
@@ -9,16 +9,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
- name: Set up JDK
- uses: actions/setup-java@v3.6.0
+ uses: actions/setup-java@de1bb2b0c5634f0fc4438d7aa9944e68f9bf86cc # v3.6.0
with:
distribution: temurin
java-version: 18
- name: Download new publicsuffix data
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
with:
arguments: updatePSL
gradle-home-cache-cleanup: true
@@ -27,7 +27,7 @@ jobs:
run: if [[ $(git diff --binary --stat) != "" ]]; then echo "UPDATED=true" >> $GITHUB_ENV; fi
- name: Verify update publicsuffixes file
- uses: gradle/gradle-build-action@v2.3.3
+ uses: gradle/gradle-build-action@3fbe033aaae657f011f88f29be9e65ed26bd29ef # v2.3.3
if: "${{ env.UPDATED == 'true' }}"
with:
arguments: :autofill-parser:test -PslimTests
@@ -35,7 +35,7 @@ jobs:
- name: Create Pull Request
id: cpr
- uses: peter-evans/create-pull-request@v4.2.0
+ uses: peter-evans/create-pull-request@b4d51739f96fca8047ad065eccef63442d8e99f7 # v4.2.0
if: "${{ env.UPDATED == 'true' }}"
with:
author: GitHub Actions <noreply@github.com>
diff --git a/.github/workflows/validate_gradle_wrapper.yml b/.github/workflows/validate_gradle_wrapper.yml
index b4c1844d..4248cc73 100644
--- a/.github/workflows/validate_gradle_wrapper.yml
+++ b/.github/workflows/validate_gradle_wrapper.yml
@@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3.1.0
+ uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
- name: Validate Gradle Wrapper
- uses: gradle/wrapper-validation-action@v1.0.5
+ uses: gradle/wrapper-validation-action@55e685c48d84285a5b0418cd094606e199cca3b6 # v1.0.5