Skip to content

Commit 16d291a

Browse files
authored
Merge pull request #1298 from WalletConnect/develop
BOM_1.22.0
2 parents ffd7af3 + 830962c commit 16d291a

551 files changed

Lines changed: 9764 additions & 3991 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
name: 'Setup Required files'
2+
description: 'Setup required files for building samples'
3+
4+
inputs:
5+
GOOGLE_SERVICES_JSON:
6+
description: 'Google Services Json file'
7+
required: true
8+
FIREBASE_SERVICE_CREDENTIALS:
9+
description: 'Firebase Service Credentials file'
10+
required: true
11+
SECRETS_PROPERTIES:
12+
description: 'Secrets properties file'
13+
required: true
14+
ENCODED_STRING_DEBUG:
15+
description: 'Encoded string for debug keystore'
16+
required: true
17+
SIGNING_KEY_STORE_PATH_DEBUG:
18+
description: 'Path to store debug keystore'
19+
required: true
20+
ENCODED_STRING_INTERNAL:
21+
description: 'Encoded string for internal keystore'
22+
required: true
23+
SIGNING_KEY_STORE_PATH_INTERNAL:
24+
description: 'Path to store internal keystore'
25+
required: true
26+
ENCODED_STRING_UPLOAD:
27+
description: 'Encoded string for upload keystore'
28+
required: true
29+
SIGNING_KEY_STORE_PATH_UPLOAD:
30+
description: 'Path to store upload keystore'
31+
required: true
32+
33+
34+
runs:
35+
using: "composite"
36+
steps:
37+
- name: Setup Java 17
38+
uses: actions/setup-java@v3
39+
with:
40+
distribution: 'zulu'
41+
java-version: '17'
42+
architecture: x86_64
43+
cache: 'gradle'
44+
45+
- name: Create Google Services Json File
46+
shell: bash
47+
env:
48+
GOOGLE_SERVICES_JSON: ${{ inputs.GOOGLE_SERVICES_JSON }}
49+
run: echo $GOOGLE_SERVICES_JSON > ./sample/${{ matrix.conf.name}}/google-services.json
50+
51+
- name: Create Firebase Service Credentials file
52+
shell: bash
53+
env:
54+
FIREBASE_SERVICE_CREDENTIALS: ${{ inputs.FIREBASE_SERVICE_CREDENTIALS }}
55+
run: echo $FIREBASE_SERVICE_CREDENTIALS | base64 --decode > credentials.json
56+
57+
- name: Fetch Properties File
58+
shell: bash
59+
env:
60+
SECRETS_PROPERTIES: ${{ inputs.SECRETS_PROPERTIES }}
61+
run: echo $SECRETS_PROPERTIES | base64 --decode > secrets.properties
62+
63+
- name: Decode Debug Keystore
64+
shell: bash
65+
env:
66+
ENCODED_STRING_DEBUG: ${{ inputs.ENCODED_STRING_DEBUG }}
67+
SIGNING_KEY_STORE_PATH_DEBUG: ${{ inputs.SIGNING_KEY_STORE_PATH_DEBUG }}
68+
run: |
69+
echo $ENCODED_STRING_DEBUG > keystore-b64-debug.txt
70+
base64 -d keystore-b64-debug.txt > $SIGNING_KEY_STORE_PATH_DEBUG
71+
72+
- name: Decode Internal Keystore
73+
shell: bash
74+
env:
75+
ENCODED_STRING_INTERNAL: ${{ inputs.ENCODED_STRING_INTERNAL }}
76+
SIGNING_KEY_STORE_PATH_INTERNAL: ${{ inputs.SIGNING_KEY_STORE_PATH_INTERNAL }}
77+
run: |
78+
echo $ENCODED_STRING_INTERNAL > keystore-b64-internal.txt
79+
base64 -d keystore-b64-internal.txt > $SIGNING_KEY_STORE_PATH_INTERNAL
80+
81+
- name: Decode Upload Keystore
82+
shell: bash
83+
env:
84+
ENCODED_STRING_UPLOAD: ${{ inputs.ENCODED_STRING_UPLOAD }}
85+
SIGNING_KEY_STORE_PATH_UPLOAD: ${{ inputs.SIGNING_KEY_STORE_PATH_UPLOAD }}
86+
run: |
87+
echo $ENCODED_STRING_UPLOAD > keystore-b64.txt
88+
base64 -d keystore-b64.txt > $SIGNING_KEY_STORE_PATH_UPLOAD
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
name: Release Samples - Debug
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
release_samples_debug:
8+
strategy:
9+
matrix:
10+
conf: [
11+
{ name: wallet, command: ":sample:wallet:assembleDebug :sample:wallet:appDistributionUploadDebug" },
12+
{ name: dapp, command: ":sample:dapp:assembleDebug :sample:dapp:appDistributionUploadDebug" },
13+
{ name: modal, command: ":sample:modal:assembleDebug :sample:modal:appDistributionUploadDebug" }
14+
]
15+
name: ${{ matrix.conf.name }}
16+
runs-on: ubuntu-latest
17+
steps:
18+
- uses: actions/checkout@v3
19+
20+
- name: Setup Java 17
21+
uses: actions/setup-java@v3
22+
with:
23+
distribution: 'zulu'
24+
java-version: '17'
25+
architecture: x86_64
26+
cache: 'gradle'
27+
28+
- name: Cache Gradle
29+
uses: actions/cache@v3
30+
with:
31+
path: |
32+
~/.gradle/caches
33+
~/.gradle/wrapper
34+
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
35+
restore-keys: |
36+
${{ runner.os }}-gradle-
37+
38+
- name: Setup Required files to build samples
39+
with:
40+
GOOGLE_SERVICES_JSON: ${{ secrets.GOOGLE_SERVICES_JSON }}
41+
FIREBASE_SERVICE_CREDENTIALS: ${{ secrets.FIREBASE_SERVICE_CREDENTIALS }}
42+
SECRETS_PROPERTIES: ${{ secrets.SECRETS_PROPERTIES }}
43+
ENCODED_STRING_DEBUG: ${{ secrets.WC_KOTLIN_DEBUG_KEYSTORE }}
44+
SIGNING_KEY_STORE_PATH_DEBUG: ${{ secrets.WC_KOTLIN_DEBUG_KEYSTORE_PATH }}
45+
ENCODED_STRING_INTERNAL: ${{ secrets.WC_KOTLIN_INTERNAL_KEYSTORE }}
46+
SIGNING_KEY_STORE_PATH_INTERNAL: ${{ secrets.WC_KOTLIN_INTERNAL_KEYSTORE_PATH }}
47+
ENCODED_STRING_UPLOAD: ${{ secrets.WC_KOTLIN_UPLOAD_KEYSTORE }}
48+
SIGNING_KEY_STORE_PATH_UPLOAD: ${{ secrets.WC_KOTLIN_UPLOAD_KEYSTORE_PATH }}
49+
uses: ./.github/actions/ci_setup
50+
51+
- name: Release sample - Debug
52+
env:
53+
WC_CLOUD_PROJECT_ID: ${{ secrets.WC_CLOUD_PROJECT_ID }}
54+
FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
55+
NOTIFY_INTEGRATION_TESTS_PROJECT_ID: ${{ secrets.NOTIFY_INTEGRATION_TESTS_PROJECT_ID }}
56+
NOTIFY_INTEGRATION_TESTS_SECRET: ${{ secrets.NOTIFY_INTEGRATION_TESTS_SECRET }}
57+
run: ./gradlew ${{ matrix.conf.command }}
58+
59+
- name: Stop Gradle
60+
run: ./gradlew --stop

.github/workflows/ci_instrumented_tests.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,8 @@ jobs:
8989
testTimeoutSeconds: ${{ github.event.inputs.testTimeoutSeconds || env.TEST_TIMEOUT_SECONDS }} # Prioritise dispatch input timeout over env one
9090

9191
- name: Run Notify instrumented tests
92-
if: ${{ steps.what_modules_changed.outputs.CORE_MODULE_CHANGED == 'true' || steps.what_modules_changed.outputs.NOTIFY_MODULE_CHANGED == 'true' || github.event_name == 'workflow_dispatch' }}
92+
if: false
93+
# if: ${{ steps.what_modules_changed.outputs.CORE_MODULE_CHANGED == 'true' || steps.what_modules_changed.outputs.NOTIFY_MODULE_CHANGED == 'true' || github.event_name == 'workflow_dispatch' }}
9394
uses: ./.github/actions/ci_instrumented_tests
9495
with:
9596
name: "Notify_SDK"

.github/workflows/ci_internal_sample.yml

Lines changed: 23 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,24 @@
11
name: Release Samples - Internal
22

33
on:
4-
workflow_dispatch:
4+
push:
5+
branches:
6+
- develop
7+
paths:
8+
- 'foundation/**'
9+
- 'core/**'
10+
- 'protocol/**'
11+
- 'product/**'
12+
- 'sample/**'
513

614
jobs:
715
release_samples_internal:
816
strategy:
917
matrix:
1018
conf: [
11-
{ name: wallet, command: ":sample:wallet:assembleInternal --full-stacktrace :sample:wallet:appDistributionUploadInternal" },
12-
{ name: dapp, command: ":sample:dapp:assembleRelease :sample:dapp:appDistributionUploadRelease" },
13-
{ name: modal, command: ":sample:modal:assembleRelease :sample:modal:appDistributionUploadRelease" }
19+
{ name: wallet, command: ":sample:wallet:assembleInternal :sample:wallet:appDistributionUploadInternal" },
20+
{ name: dapp, command: ":sample:dapp:assembleInternal :sample:dapp:appDistributionUploadInternal" },
21+
{ name: modal, command: ":sample:modal:assembleInternal :sample:modal:appDistributionUploadInternal" }
1422
]
1523
name: ${{ matrix.conf.name }}
1624
runs-on: ubuntu-latest
@@ -35,35 +43,26 @@ jobs:
3543
restore-keys: |
3644
${{ runner.os }}-gradle-
3745
38-
- name: Create Google Services Json File
39-
env:
46+
- name: Setup Required files to build samples
47+
with:
4048
GOOGLE_SERVICES_JSON: ${{ secrets.GOOGLE_SERVICES_JSON }}
41-
run: echo $GOOGLE_SERVICES_JSON > ./sample/${{ matrix.conf.name}}/google-services.json
42-
43-
- name: Fetch Properties File
44-
env:
45-
SECRETS_PROPERTIES: ${{ secrets.SECRETS_PROPERTIES }}
46-
run: echo $SECRETS_PROPERTIES | base64 --decode > secrets.properties
47-
48-
- name: Create Firebase Service Credentials file
49-
env:
5049
FIREBASE_SERVICE_CREDENTIALS: ${{ secrets.FIREBASE_SERVICE_CREDENTIALS }}
51-
run: echo $FIREBASE_SERVICE_CREDENTIALS > firebase_service_credentials.json
52-
53-
- name: Decode Internal Keystore
54-
env:
50+
SECRETS_PROPERTIES: ${{ secrets.SECRETS_PROPERTIES }}
51+
ENCODED_STRING_DEBUG: ${{ secrets.WC_KOTLIN_DEBUG_KEYSTORE }}
52+
SIGNING_KEY_STORE_PATH_DEBUG: ${{ secrets.WC_KOTLIN_DEBUG_KEYSTORE_PATH }}
5553
ENCODED_STRING_INTERNAL: ${{ secrets.WC_KOTLIN_INTERNAL_KEYSTORE }}
5654
SIGNING_KEY_STORE_PATH_INTERNAL: ${{ secrets.WC_KOTLIN_INTERNAL_KEYSTORE_PATH }}
57-
run: |
58-
echo $ENCODED_STRING_INTERNAL > keystore-b64.txt
59-
base64 -d keystore-b64.txt > $SIGNING_KEY_STORE_PATH_INTERNAL
55+
ENCODED_STRING_UPLOAD: ${{ secrets.WC_KOTLIN_UPLOAD_KEYSTORE }}
56+
SIGNING_KEY_STORE_PATH_UPLOAD: ${{ secrets.WC_KOTLIN_UPLOAD_KEYSTORE_PATH }}
57+
uses: ./.github/actions/ci_setup
6058

6159
- name: Release sample - Internal
6260
env:
6361
WC_CLOUD_PROJECT_ID: ${{ secrets.WC_CLOUD_PROJECT_ID }}
6462
FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
65-
PROD_GM_PROJECT_ID: ${{ secrets.PROD_GM_PROJECT_ID }}
66-
PROD_GM_SECRET: ${{ secrets.PROD_GM_SECRET }}
63+
NOTIFY_INTEGRATION_TESTS_PROJECT_ID: ${{ secrets.NOTIFY_INTEGRATION_TESTS_PROJECT_ID }}
64+
NOTIFY_INTEGRATION_TESTS_SECRET: ${{ secrets.NOTIFY_INTEGRATION_TESTS_SECRET }}
65+
MIX_PANEL: ${{ secrets.MIX_PANEL }}
6766
run: ./gradlew ${{ matrix.conf.command }}
6867

6968
- name: Stop Gradle

.github/workflows/ci_release_sample.yml

Lines changed: 6 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
name: Release Samples
22

33
on:
4-
workflow_dispatch:
54
release:
65
types: [ published ]
76

@@ -37,31 +36,18 @@ jobs:
3736
restore-keys: |
3837
${{ runner.os }}-gradle-
3938
40-
- name: Create Google Services Json File
41-
env:
39+
- name: Setup Required files to build samples
40+
with:
4241
GOOGLE_SERVICES_JSON: ${{ secrets.GOOGLE_SERVICES_JSON }}
43-
run: echo $GOOGLE_SERVICES_JSON > ./sample/${{ matrix.conf.name}}/google-services.json
44-
45-
- name: Fetch Properties File
46-
env:
42+
FIREBASE_SERVICE_CREDENTIALS: ${{ secrets.FIREBASE_SERVICE_CREDENTIALS }}
4743
SECRETS_PROPERTIES: ${{ secrets.SECRETS_PROPERTIES }}
48-
run: echo $SECRETS_PROPERTIES | base64 --decode > secrets.properties
49-
50-
- name: Decode Internal Keystore
51-
env:
44+
ENCODED_STRING_DEBUG: ${{ secrets.WC_KOTLIN_DEBUG_KEYSTORE }}
45+
SIGNING_KEY_STORE_PATH_DEBUG: ${{ secrets.WC_KOTLIN_DEBUG_KEYSTORE_PATH }}
5246
ENCODED_STRING_INTERNAL: ${{ secrets.WC_KOTLIN_INTERNAL_KEYSTORE }}
5347
SIGNING_KEY_STORE_PATH_INTERNAL: ${{ secrets.WC_KOTLIN_INTERNAL_KEYSTORE_PATH }}
54-
run: |
55-
echo $ENCODED_STRING_INTERNAL > keystore-b64.txt
56-
base64 -d keystore-b64.txt > $SIGNING_KEY_STORE_PATH_INTERNAL
57-
58-
- name: Decode Upload Keystore
59-
env:
6048
ENCODED_STRING_UPLOAD: ${{ secrets.WC_KOTLIN_UPLOAD_KEYSTORE }}
6149
SIGNING_KEY_STORE_PATH_UPLOAD: ${{ secrets.WC_KOTLIN_UPLOAD_KEYSTORE_PATH }}
62-
run: |
63-
echo $ENCODED_STRING_UPLOAD > keystore-b64.txt
64-
base64 -d keystore-b64.txt > $SIGNING_KEY_STORE_PATH_UPLOAD
50+
uses: ./.github/actions/ci_setup
6551

6652
- name: Release sample
6753
env:

.gitignore

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,3 @@ lint/tmp/
8989

9090
# Android Profiling
9191
*.hprof
92-
93-
# Snapshots
94-
*/*/src/test/snapshots/*

ReadMe.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,12 @@ The communications protocol for web3, WalletConnect brings the ecosystem togethe
66
WalletConnect v2 protocols for Android applications.
77

88
####
9+
910
## SDK Chart
1011

1112
| BOM | [Core SDK](core/android) | [Sign SDK](protocol/sign) | [Auth SDK](protocol/auth) | [Chat SDK](protocol/chat) | [Notify SDK](protocol/notify) | [web3wallet](product/web3wallet) | [web3modal](product/web3modal) | [WalletConnectModal](product/walletconnectmodal) |
1213
|-----------------------------------------------------------------------------------------|--------------------------|---------------------------|---------------------------|---------------------------|:------------------------------|----------------------------------|--------------------------------|--------------------------------------------------|
14+
| 1.22.0 | 1.27.0 | 2.25.0 | 1.25.0 | 1.0.0.beta23 | 1.0.0 | 1.20.0 | 1.2.0 | 1.2.0 |
1315
| 1.21.1 | 1.26.0 | 2.24.0 | 1.24.0 | 1.0.0.beta23 | 1.0.0-beta04 | 1.19.0 | 1.1.1 | 1.1.1 |
1416
| 1.21.0 | 1.26.0 | 2.24.0 | 1.24.0 | 1.0.0.beta23 | 1.0.0-beta04 | 1.19.0 | 1.1.0 | 1.1.0 |
1517
| 1.20.0 | 1.25.0 | 2.23.0 | 1.23.0 | 1.0.0.beta22 | 1.0.0-beta03 | 1.18.0 | 1.0.0 | 1.0.0-beta02 |

build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import com.android.build.gradle.BaseExtension
33
plugins {
44
id("io.github.gradle-nexus.publish-plugin") version "1.1.0"
55
id("release-scripts")
6+
id("version-bump")
67
}
78

89
buildscript {

buildSrc/build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,6 @@ dependencies {
1414
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.8.21") // when changing, remember to change version in Versions.kt in buildSrc module
1515
implementation("org.jetbrains.dokka:dokka-gradle-plugin:1.7.10") // when changing, remember to change version in Versions.kt in buildSrc module
1616
implementation("com.google.firebase:firebase-appdistribution-gradle:4.0.0") // when changing, remember to change version in root build.gradle.kts
17+
18+
testImplementation("junit:junit:4.13.2") // when changing, remember to change version in Versions.kt in buildSrc module
1719
}

buildSrc/scripts/check_modules.sh

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
#!/bin/bash
2+
3+
4+
# Check if exactly one argument is provided
5+
if [ $# -ne 1 ]; then
6+
echo "Error: Exactly one argument is required."
7+
echo "Usage: $0 path_to_output_file"
8+
exit 1
9+
fi
10+
11+
12+
# Fetch latest tag
13+
git tag -l | xargs git tag -d >/dev/null
14+
git fetch --tags --quiet
15+
tag=$(git ls-remote --quiet --tags --sort=committerdate | grep -o 'BOM.*' | tail -1)
16+
17+
echo "Latest release: $tag"
18+
19+
check_changes() {
20+
local module_path=$1
21+
local output_variable_name=$2
22+
23+
changes=$(git diff --name-only "$tag" -- "$module_path/")
24+
25+
if [ -n "$changes" ]; then
26+
export "${output_variable_name}=true"
27+
else
28+
export "${output_variable_name}=false"
29+
fi
30+
}
31+
32+
check_changes "foundation" "FOUNDATION_MODULE_CHANGED"
33+
check_changes "core/android" "CORE_MODULE_CHANGED"
34+
check_changes "core/modal" "MODAL_CORE_MODULE_CHANGED"
35+
check_changes "protocol/sign" "SIGN_MODULE_CHANGED"
36+
check_changes "protocol/auth" "AUTH_MODULE_CHANGED"
37+
check_changes "protocol/chat" "CHAT_MODULE_CHANGED"
38+
check_changes "protocol/notify" "NOTIFY_MODULE_CHANGED"
39+
check_changes "product/web3wallet" "WEB_3_WALLET_MODULE_CHANGED"
40+
check_changes "product/walletconnectmodal" "WC_MODAL_MODULE_CHANGED"
41+
check_changes "product/web3modal" "WEB_3_MODAL_MODULE_CHANGED"
42+
43+
echo "Module changes output saved to $1"
44+
45+
echo "FOUNDATION_MODULE_CHANGED=$FOUNDATION_MODULE_CHANGED" >> "$1"
46+
echo "CORE_MODULE_CHANGED=$CORE_MODULE_CHANGED" >> "$1"
47+
echo "MODAL_CORE_MODULE_CHANGED=$MODAL_CORE_MODULE_CHANGED" >> "$1"
48+
echo "SIGN_MODULE_CHANGED=$SIGN_MODULE_CHANGED" >> "$1"
49+
echo "AUTH_MODULE_CHANGED=$AUTH_MODULE_CHANGED" >> "$1"
50+
echo "CHAT_MODULE_CHANGED=$CHAT_MODULE_CHANGED" >> "$1"
51+
echo "NOTIFY_MODULE_CHANGED=$NOTIFY_MODULE_CHANGED" >> "$1"
52+
echo "WEB_3_WALLET_MODULE_CHANGED=$WEB_3_WALLET_MODULE_CHANGED" >> "$1"
53+
echo "WC_MODAL_MODULE_CHANGED=$WC_MODAL_MODULE_CHANGED" >> "$1"
54+
echo "WEB_3_MODAL_MODULE_CHANGED=$WEB_3_MODAL_MODULE_CHANGED" >> "$1"

0 commit comments

Comments
 (0)