Skip to content

Commit 01aeca7

Browse files
committed
Merge branch 'release/26.03.0'
2 parents 4fa16b6 + d604f78 commit 01aeca7

File tree

1,265 files changed

+5114
-3964
lines changed

Some content is hidden

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

1,265 files changed

+5114
-3964
lines changed

.github/workflows/build.yml

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,20 @@ jobs:
2525
group: ${{ github.ref == 'refs/heads/develop' && format('build-develop-{0}-{1}', matrix.variant, github.sha) || format('build-{0}-{1}', matrix.variant, github.ref) }}
2626
cancel-in-progress: true
2727
steps:
28+
- name: Free Disk Space (Ubuntu)
29+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
30+
with:
31+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
32+
tool-cache: true
33+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
34+
android: false
35+
dotnet: true
36+
haskell: true
37+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
38+
large-packages: false
39+
docker-images: true
40+
swap-storage: false
41+
2842
- uses: actions/checkout@v6
2943
with:
3044
# Ensure we are building the branch and not the branch after being merged on develop
@@ -60,16 +74,6 @@ jobs:
6074
path: |
6175
app/build/outputs/apk/gplay/debug/*-universal-debug.apk
6276
app/build/outputs/apk/fdroid/debug/*-universal-debug.apk
63-
- name: Upload x86_64 APK for Maestro
64-
if: ${{ matrix.variant == 'debug' }}
65-
uses: actions/upload-artifact@v6
66-
with:
67-
name: elementx-apk-maestro
68-
path: |
69-
app/build/outputs/apk/gplay/debug/app-gplay-x86_64-debug.apk
70-
retention-days: 5
71-
overwrite: true
72-
if-no-files-found: error
7377
- uses: rnkdsh/action-upload-diawi@4e1421305be7cfc510d05f47850262eeaf345108 # v1.5.12
7478
id: diawi
7579
# Do not fail the whole build if Diawi upload fails

.github/workflows/build_enterprise.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,20 @@ jobs:
2727
group: ${{ github.ref == 'refs/heads/develop' && format('build-develop-enterprise-{0}-{1}', matrix.variant, github.sha) || format('build-enterprise-{0}-{1}', matrix.variant, github.ref) }}
2828
cancel-in-progress: true
2929
steps:
30+
- name: Free Disk Space (Ubuntu)
31+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
32+
with:
33+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
34+
tool-cache: true
35+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
36+
android: false
37+
dotnet: true
38+
haskell: true
39+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
40+
large-packages: false
41+
docker-images: true
42+
swap-storage: false
43+
3044
- uses: actions/checkout@v6
3145
with:
3246
# Ensure we are building the branch and not the branch after being merged on develop

.github/workflows/maestro-local.yml

Lines changed: 33 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,24 @@ jobs:
1818
build-apk:
1919
name: Build APK
2020
runs-on: ubuntu-latest
21-
# Allow one per PR.
2221
concurrency:
23-
group: ${{ format('maestro-{0}', github.ref) }}
22+
group: ${{ format('maestro-build-{0}', github.ref) }}
2423
cancel-in-progress: true
2524
steps:
25+
- name: Free Disk Space (Ubuntu)
26+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
27+
with:
28+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
29+
tool-cache: true
30+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
31+
android: false
32+
dotnet: true
33+
haskell: true
34+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
35+
large-packages: false
36+
docker-images: true
37+
swap-storage: false
38+
2639
- uses: actions/checkout@v6
2740
with:
2841
# Ensure we are building the branch and not the branch after being merged on develop
@@ -57,10 +70,10 @@ jobs:
5770
name: Maestro test suite
5871
runs-on: ubuntu-latest
5972
needs: [ build-apk ]
60-
# Allow one per PR.
73+
# Allow only one to run at a time, since they use the same environment.
74+
# Otherwise, tests running in parallel can break each other.
6175
concurrency:
62-
group: ${{ format('maestro-{0}', github.ref) }}
63-
cancel-in-progress: true
76+
group: maestro-test
6477
steps:
6578
- uses: actions/checkout@v6
6679
if: (github.event_name == 'pull_request' && github.event.pull_request.fork == null) || github.event_name == 'workflow_dispatch'
@@ -110,6 +123,21 @@ jobs:
110123
retention-days: 5
111124
overwrite: true
112125
if-no-files-found: error
126+
- name: Update summary (success)
127+
if: steps.maestro_test.outcome == 'success'
128+
run: |
129+
echo "### Maestro tests worked :rocket:!"
130+
- name: Update summary (failure)
131+
if: steps.maestro_test.outcome != 'success'
132+
run: |
133+
LOG_FILE=$(find ~/.maestro/tests/ -name maestro.log)
134+
echo "Log file: $LOG_FILE"
135+
LOG_LINES="$(tail -n 30 $LOG_FILE)"
136+
echo "### :x: Maestro tests failed...
137+
138+
\`\`\`
139+
$LOG_LINES
140+
\`\`\`" >> $GITHUB_STEP_SUMMARY
113141
- name: Fail the workflow in case of error in test
114142
if: steps.maestro_test.outcome != 'success'
115143
run: |

.github/workflows/nightly.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,20 @@ jobs:
1616
runs-on: ubuntu-latest
1717
if: ${{ github.repository == 'element-hq/element-x-android' }}
1818
steps:
19+
- name: Free Disk Space (Ubuntu)
20+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
21+
with:
22+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
23+
tool-cache: true
24+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
25+
android: false
26+
dotnet: true
27+
haskell: true
28+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
29+
large-packages: false
30+
docker-images: true
31+
swap-storage: false
32+
1933
- uses: actions/checkout@v6
2034
- name: Use JDK 21
2135
uses: actions/setup-java@v5

.github/workflows/nightlyReports.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,20 @@ jobs:
1717
runs-on: ubuntu-latest
1818
if: ${{ github.repository == 'element-hq/element-x-android' }}
1919
steps:
20+
- name: Free Disk Space (Ubuntu)
21+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
22+
with:
23+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
24+
tool-cache: true
25+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
26+
android: false
27+
dotnet: true
28+
haskell: true
29+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
30+
large-packages: false
31+
docker-images: true
32+
swap-storage: false
33+
2034
- name: ⏬ Checkout with LFS
2135
uses: nschloe/action-cached-lfs-checkout@f46300cd8952454b9f0a21a3d133d4bd5684cfc2 # v1.2.3
2236

.github/workflows/quality.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,20 @@ jobs:
1717
name: Search for forbidden patterns
1818
runs-on: ubuntu-latest
1919
steps:
20+
- name: Free Disk Space (Ubuntu)
21+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
22+
with:
23+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
24+
tool-cache: true
25+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
26+
android: false
27+
dotnet: true
28+
haskell: true
29+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
30+
large-packages: false
31+
docker-images: true
32+
swap-storage: false
33+
2034
- uses: actions/checkout@v6
2135
- name: Add SSH private keys for submodule repositories
2236
uses: webfactory/ssh-agent@a6f90b1f127823b31d4d4a8d96047790581349bd # v0.9.1

.github/workflows/recordScreenshots.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,20 @@ jobs:
1717
if: github.event_name == 'workflow_dispatch' || github.event.label.name == 'Record-Screenshots'
1818

1919
steps:
20+
- name: Free Disk Space (Ubuntu)
21+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
22+
with:
23+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
24+
tool-cache: true
25+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
26+
android: false
27+
dotnet: true
28+
haskell: true
29+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
30+
large-packages: false
31+
docker-images: true
32+
swap-storage: false
33+
2034
- name: Remove Record-Screenshots label
2135
if: github.event.label.name == 'Record-Screenshots'
2236
uses: actions-ecosystem/action-remove-labels@2ce5d41b4b6aa8503e285553f75ed56e0a40bae0 # v1.3.0

.github/workflows/release.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,20 @@ jobs:
1818
group: ${{ format('build-release-main-gplay-{0}', github.sha) }}
1919
cancel-in-progress: true
2020
steps:
21+
- name: Free Disk Space (Ubuntu)
22+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
23+
with:
24+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
25+
tool-cache: true
26+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
27+
android: false
28+
dotnet: true
29+
haskell: true
30+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
31+
large-packages: false
32+
docker-images: true
33+
swap-storage: false
34+
2135
- uses: actions/checkout@v6
2236
- name: Use JDK 21
2337
uses: actions/setup-java@v5
@@ -88,6 +102,20 @@ jobs:
88102
group: ${{ format('build-release-main-fdroid-{0}', github.sha) }}
89103
cancel-in-progress: true
90104
steps:
105+
- name: Free Disk Space (Ubuntu)
106+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
107+
with:
108+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
109+
tool-cache: true
110+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
111+
android: false
112+
dotnet: true
113+
haskell: true
114+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
115+
large-packages: false
116+
docker-images: true
117+
swap-storage: false
118+
91119
- uses: actions/checkout@v6
92120
- name: Use JDK 21
93121
uses: actions/setup-java@v5

.github/workflows/scripts/maestro/maestro-local-with-screen-recording.sh

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,13 @@
88
# Please see LICENSE in the repository root for full details.
99
#
1010

11+
# First we disable the onboarding flow on Chrome, which is a source of issues
12+
# (see https://stackoverflow.com/a/64629745)
13+
echo "Disabling Chrome onboarding flow"
14+
adb shell am set-debug-app --persistent com.android.chrome
15+
adb shell 'echo "chrome --disable-fre --no-default-browser-check --no-first-run" > /data/local/tmp/chrome-command-line'
16+
adb shell am start -n com.android.chrome/com.google.android.apps.chrome.Main
17+
1118
adb install -r $1
1219
echo "Starting the screen recording..."
1320
adb push .github/workflows/scripts/maestro/local-recording.sh /data/local/tmp/

.github/workflows/sonar.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,20 @@ jobs:
2222
group: ${{ format('sonar-{0}', github.ref) }}
2323
cancel-in-progress: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}
2424
steps:
25+
- name: Free Disk Space (Ubuntu)
26+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
27+
with:
28+
# This might remove tools that are actually needed, if set to "true" but frees about 6 GB
29+
tool-cache: true
30+
# All of these default to true, but we should only need the 'android' one (and maybe swap-storage?)
31+
android: false
32+
dotnet: true
33+
haskell: true
34+
# This takes way too long to run (~2 minutes) and it saves only ~5.5GB
35+
large-packages: false
36+
docker-images: true
37+
swap-storage: false
38+
2539
- uses: actions/checkout@v6
2640
with:
2741
# Ensure we are building the branch and not the branch after being merged on develop

0 commit comments

Comments
 (0)