mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2025-03-18 20:29:10 +03:00
Merge branch 'develop' into feature/ons/voice_message_scrubbing
This commit is contained in:
commit
2c611790db
691 changed files with 15454 additions and 36283 deletions
42
.github/PULL_REQUEST_TEMPLATE.md
vendored
42
.github/PULL_REQUEST_TEMPLATE.md
vendored
|
@ -1,9 +1,41 @@
|
|||
### Pull Request Checklist
|
||||
<!-- Please read [CONTRIBUTING.md](https://github.com/vector-im/element-android/blob/develop/CONTRIBUTING.md) before submitting your pull request -->
|
||||
|
||||
## Type of change
|
||||
|
||||
<!--
|
||||
Please read [CONTRIBUTING.md](https://github.com/vector-im/element-android/blob/develop/CONTRIBUTING.md) before submitting your pull request
|
||||
Depending on the Pull Request content, it can be acceptable if some of the following checkboxes stay unchecked.
|
||||
-->
|
||||
- [ ] Feature
|
||||
- [ ] Bugfix
|
||||
- [ ] Technical
|
||||
- [ ] Other :
|
||||
|
||||
## Content
|
||||
|
||||
<!-- Describe shortly what has been changed -->
|
||||
|
||||
## Motivation and context
|
||||
|
||||
<!-- Provide link to the corresponding issue if applicable or explain the context -->
|
||||
|
||||
## Screenshots / GIFs
|
||||
|
||||
<!-- Only if UI have been changed -->
|
||||
|
||||
## Tests
|
||||
|
||||
<!-- Explain how you tested your development -->
|
||||
|
||||
- Step 1
|
||||
- Step 2
|
||||
- Step ...
|
||||
|
||||
## Tested devices
|
||||
|
||||
- [ ] Physical
|
||||
- [ ] Emulator
|
||||
- OS version(s):
|
||||
|
||||
## Checklist
|
||||
|
||||
<!-- Depending on the Pull Request content, it can be acceptable if some of the following checkboxes stay unchecked. -->
|
||||
|
||||
- [ ] Changes has been tested on an Android device or Android emulator with API 21
|
||||
- [ ] UI change has been tested on both light and dark themes
|
||||
|
|
5
.github/workflows/build.yml
vendored
5
.github/workflows/build.yml
vendored
|
@ -20,6 +20,10 @@ jobs:
|
|||
fail-fast: false
|
||||
matrix:
|
||||
target: [ Gplay, Fdroid ]
|
||||
# Allow all jobs on develop. Just one per PR.
|
||||
concurrency:
|
||||
group: ${{ github.ref == 'refs/heads/develop' && format('integration-tests-develop-{0}-{1}', matrix.target, github.sha) || format('build-debug-{0}-{1}', matrix.target, github.ref) }}
|
||||
cancel-in-progress: true
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/cache@v2
|
||||
|
@ -43,6 +47,7 @@ jobs:
|
|||
name: Build unsigned GPlay APKs
|
||||
runs-on: ubuntu-latest
|
||||
if: github.ref == 'refs/heads/main'
|
||||
# Only runs on main, no concurrency.
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/cache@v2
|
||||
|
|
|
@ -5,6 +5,7 @@ jobs:
|
|||
validation:
|
||||
name: "Validation"
|
||||
runs-on: ubuntu-latest
|
||||
# No concurrency required, this is a prerequisite to other actions and should run every time.
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
|
|
210
.github/workflows/integration_tests.yml
vendored
210
.github/workflows/integration_tests.yml
vendored
|
@ -1,210 +0,0 @@
|
|||
name: Integration Tests
|
||||
|
||||
on:
|
||||
pull_request: { }
|
||||
push:
|
||||
branches: [ main, develop ]
|
||||
|
||||
# Enrich gradle.properties for CI/CD
|
||||
env:
|
||||
CI_GRADLE_ARG_PROPERTIES: >
|
||||
-Porg.gradle.jvmargs=-Xmx2g
|
||||
-Porg.gradle.parallel=false
|
||||
|
||||
jobs:
|
||||
# Build Android Tests [Matrix SDK]
|
||||
build-android-test-matrix-sdk:
|
||||
name: Matrix SDK - Build Android Tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Build Android Tests for matrix-sdk-android
|
||||
run: ./gradlew clean matrix-sdk-android:assembleAndroidTest $CI_GRADLE_ARG_PROPERTIES --stacktrace -PallWarningsAsErrors=false
|
||||
|
||||
# Build Android Tests [Matrix APP]
|
||||
build-android-test-app:
|
||||
name: App - Build Android Tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Build Android Tests for vector
|
||||
run: ./gradlew clean vector:assembleAndroidTest $CI_GRADLE_ARG_PROPERTIES --stacktrace -PallWarningsAsErrors=false
|
||||
|
||||
# Run Android Tests
|
||||
integration-tests:
|
||||
name: Matrix SDK - Running Integration Tests
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
api-level: [ 28 ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: 11
|
||||
- name: Set up Python 3.8
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: 3.8
|
||||
- name: Cache pip
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.cache/pip
|
||||
key: ${{ runner.os }}-pip
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pip-
|
||||
${{ runner.os }}-
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Start synapse server
|
||||
run: |
|
||||
python3 -m venv .synapse
|
||||
source .synapse/bin/activate
|
||||
pip install synapse matrix-synapse
|
||||
curl https://raw.githubusercontent.com/matrix-org/synapse/develop/demo/start.sh -o start.sh
|
||||
chmod 777 start.sh
|
||||
./start.sh --no-rate-limit
|
||||
# package: org.matrix.android.sdk.session
|
||||
- name: Run integration tests for Matrix SDK [org.matrix.android.sdk.session] API[${{ matrix.api-level }}]
|
||||
continue-on-error: true
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: ./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.package='org.matrix.android.sdk.session' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sdk.session]
|
||||
continue-on-error: true
|
||||
id: get-comment-body-session
|
||||
run: |
|
||||
body="$(cat ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml | grep "<testsuite" | sed "s@.*tests=\(.*\)time=.*@\1@")"
|
||||
echo "::set-output name=session::passed=$body"
|
||||
# package: org.matrix.android.sdk.account
|
||||
- name: Run integration tests for Matrix SDK [org.matrix.android.sdk.account] API[${{ matrix.api-level }}]
|
||||
continue-on-error: true
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: ./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.package='org.matrix.android.sdk.account' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sdk.account]
|
||||
continue-on-error: true
|
||||
id: get-comment-body-account
|
||||
run: |
|
||||
body="$(cat ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml | grep "<testsuite" | sed "s@.*tests=\(.*\)time=.*@\1@")"
|
||||
echo "::set-output name=account::passed=$body"
|
||||
# package: org.matrix.android.sdk.internal
|
||||
- name: Run integration tests for Matrix SDK [org.matrix.android.sdk.internal] API[${{ matrix.api-level }}]
|
||||
continue-on-error: true
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: ./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.package='org.matrix.android.sdk.internal' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sdk.internal]
|
||||
continue-on-error: true
|
||||
id: get-comment-body-internal
|
||||
run: |
|
||||
body="$(cat ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml | grep "<testsuite" | sed "s@.*tests=\(.*\)time=.*@\1@")"
|
||||
echo "::set-output name=internal::passed=$body"
|
||||
# package: org.matrix.android.sdk.ordering
|
||||
- name: Run integration tests for Matrix SDK [org.matrix.android.sdk.ordering] API[${{ matrix.api-level }}]
|
||||
continue-on-error: true
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: ./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.package='org.matrix.android.sdk.ordering' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sdk.ordering]
|
||||
continue-on-error: true
|
||||
id: get-comment-body-ordering
|
||||
run: |
|
||||
body="$(cat ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml | grep "<testsuite" | sed "s@.*tests=\(.*\)time=.*@\1@")"
|
||||
echo "::set-output name=ordering::passed=$body"
|
||||
# package: class PermalinkParserTest
|
||||
- name: Run integration tests for Matrix SDK class [org.matrix.android.sdk.PermalinkParserTest] API[${{ matrix.api-level }}]
|
||||
continue-on-error: true
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: ./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.class='org.matrix.android.sdk.PermalinkParserTest' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sd.PermalinkParserTest]
|
||||
continue-on-error: true
|
||||
id: get-comment-body-permalink
|
||||
run: |
|
||||
body="$(cat ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml | grep "<testsuite" | sed "s@.*tests=\(.*\)time=.*@\1@")"
|
||||
echo "::set-output name=permalink::passed=$body"
|
||||
- name: Find Comment
|
||||
if: github.event_name == 'pull_request'
|
||||
uses: peter-evans/find-comment@v1
|
||||
id: fc
|
||||
with:
|
||||
issue-number: ${{ github.event.pull_request.number }}
|
||||
comment-author: 'github-actions[bot]'
|
||||
body-includes: Integration Tests Results
|
||||
- name: Publish results to PR
|
||||
if: github.event_name == 'pull_request'
|
||||
uses: peter-evans/create-or-update-comment@v1
|
||||
with:
|
||||
comment-id: ${{ steps.fc.outputs.comment-id }}
|
||||
issue-number: ${{ github.event.pull_request.number }}
|
||||
body: |
|
||||
### Matrix SDK
|
||||
## Integration Tests Results:
|
||||
- `[org.matrix.android.sdk.session]`<br>${{ steps.get-comment-body-session.outputs.session }}
|
||||
- `[org.matrix.android.sdk.account]`<br>${{ steps.get-comment-body-account.outputs.account }}
|
||||
- `[org.matrix.android.sdk.internal]`<br>${{ steps.get-comment-body-internal.outputs.internal }}
|
||||
- `[org.matrix.android.sdk.ordering]`<br>${{ steps.get-comment-body-ordering.outputs.ordering }}
|
||||
- `[org.matrix.android.sdk.PermalinkParserTest]`<br>${{ steps.get-comment-body-permalink.outputs.permalink }}
|
||||
edit-mode: replace
|
||||
## Useful commands
|
||||
# script: ./integration_tests_script.sh
|
||||
# script: ./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.package='org.matrix.android.sdk.session' matrix-sdk-android:connectedDebugAndroidTest --info
|
||||
# script: ./gradlew $CI_GRADLE_ARG_PROPERTIES matrix-sdk-android:connectedAndroidTest --info
|
||||
# script: ./gradlew $CI_GRADLE_ARG_PROPERTIES -PallWarningsAsErrors=false connectedCheck --stacktrace
|
||||
# script: ./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.class=org.matrix.android.sdk.session.room.timeline.ChunkEntityTest matrix-sdk-android:connectedAndroidTest --info
|
357
.github/workflows/nightly.yml
vendored
Normal file
357
.github/workflows/nightly.yml
vendored
Normal file
|
@ -0,0 +1,357 @@
|
|||
name: Nightly Tests
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ release/* ]
|
||||
schedule:
|
||||
# At 20:00 every day UTC
|
||||
- cron: '0 20 * * *'
|
||||
workflow_dispatch:
|
||||
|
||||
# Enrich gradle.properties for CI/CD
|
||||
env:
|
||||
CI_GRADLE_ARG_PROPERTIES: >
|
||||
-Porg.gradle.jvmargs=-Xmx4g
|
||||
-Porg.gradle.parallel=false
|
||||
-PallWarningsAsErrors=false
|
||||
jobs:
|
||||
# Build Android Tests [Matrix SDK]
|
||||
build-android-test-matrix-sdk:
|
||||
name: Matrix SDK - Build Android Tests
|
||||
runs-on: macos-latest
|
||||
# No concurrency required, runs every time on a schedule.
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: 11
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Build Android Tests for matrix-sdk-android
|
||||
run: ./gradlew clean matrix-sdk-android:assembleAndroidTest $CI_GRADLE_ARG_PROPERTIES --stacktrace
|
||||
|
||||
# Build Android Tests [Matrix APP]
|
||||
build-android-test-app:
|
||||
name: App - Build Android Tests
|
||||
runs-on: macos-latest
|
||||
# No concurrency required, runs every time on a schedule.
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: 11
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Build Android Tests for vector
|
||||
run: ./gradlew clean vector:assembleAndroidTest $CI_GRADLE_ARG_PROPERTIES --stacktrace
|
||||
|
||||
# Run Android Tests
|
||||
integration-tests:
|
||||
name: Matrix SDK - Running Integration Tests
|
||||
runs-on: macos-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
api-level: [ 28 ]
|
||||
# No concurrency required, runs every time on a schedule.
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: 11
|
||||
- name: Set up Python 3.8
|
||||
uses: actions/setup-python@v3
|
||||
with:
|
||||
python-version: 3.8
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Start synapse server
|
||||
run: |
|
||||
pip install matrix-synapse
|
||||
curl https://raw.githubusercontent.com/matrix-org/synapse/develop/demo/start.sh -o start.sh
|
||||
chmod 777 start.sh
|
||||
./start.sh --no-rate-limit
|
||||
# package: org.matrix.android.sdk.session
|
||||
- name: Run integration tests for Matrix SDK [org.matrix.android.sdk.session] API[${{ matrix.api-level }}]
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: |
|
||||
adb root
|
||||
adb logcat -c
|
||||
touch emulator-session.log
|
||||
chmod 777 emulator-session.log
|
||||
adb logcat >> emulator-session.log &
|
||||
./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.package='org.matrix.android.sdk.session' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sdk.session]
|
||||
if: always()
|
||||
id: get-comment-body-session
|
||||
run: python3 ./tools/ci/render_test_output.py session ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml
|
||||
- name: Remove adb logcat
|
||||
if: always()
|
||||
run: pkill -9 adb
|
||||
- name: Run integration tests for Matrix SDK [org.matrix.android.sdk.account] API[${{ matrix.api-level }}]
|
||||
if: always()
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: |
|
||||
adb root
|
||||
adb logcat -c
|
||||
touch emulator-account.log
|
||||
chmod 777 emulator-account.log
|
||||
adb logcat >> emulator-account.log &
|
||||
./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.package='org.matrix.android.sdk.account' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sdk.account]
|
||||
if: always()
|
||||
id: get-comment-body-account
|
||||
run: python3 ./tools/ci/render_test_output.py account ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml
|
||||
- name: Remove adb logcat
|
||||
if: always()
|
||||
run: pkill -9 adb
|
||||
# package: org.matrix.android.sdk.internal
|
||||
- name: Run integration tests for Matrix SDK [org.matrix.android.sdk.internal] API[${{ matrix.api-level }}]
|
||||
if: always()
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: |
|
||||
adb root
|
||||
adb logcat -c
|
||||
touch emulator-internal.log
|
||||
chmod 777 emulator-internal.log
|
||||
adb logcat >> emulator-internal.log &
|
||||
./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.package='org.matrix.android.sdk.internal' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sdk.internal]
|
||||
if: always()
|
||||
id: get-comment-body-internal
|
||||
run: python3 ./tools/ci/render_test_output.py internal ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml
|
||||
- name: Remove adb logcat
|
||||
if: always()
|
||||
run: pkill -9 adb
|
||||
# package: org.matrix.android.sdk.ordering
|
||||
- name: Run integration tests for Matrix SDK [org.matrix.android.sdk.ordering] API[${{ matrix.api-level }}]
|
||||
if: always()
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: |
|
||||
adb root
|
||||
adb logcat -c
|
||||
touch emulator-ordering.log
|
||||
chmod 777 emulator-ordering.log
|
||||
adb logcat >> emulator-ordering.log &
|
||||
./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.package='org.matrix.android.sdk.ordering' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sdk.ordering]
|
||||
if: always()
|
||||
id: get-comment-body-ordering
|
||||
run: python3 ./tools/ci/render_test_output.py ordering ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml
|
||||
- name: Remove adb logcat
|
||||
if: always()
|
||||
run: pkill -9 adb
|
||||
# package: class PermalinkParserTest
|
||||
- name: Run integration tests for Matrix SDK class [org.matrix.android.sdk.PermalinkParserTest] API[${{ matrix.api-level }}]
|
||||
if: always()
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822
|
||||
script: |
|
||||
adb root
|
||||
adb logcat -c
|
||||
touch emulator-permalink.log
|
||||
chmod 777 emulator-permalink.log
|
||||
adb logcat >> emulator-permalink.log &
|
||||
./gradlew $CI_GRADLE_ARG_PROPERTIES -Pandroid.testInstrumentationRunnerArguments.class='org.matrix.android.sdk.PermalinkParserTest' matrix-sdk-android:connectedDebugAndroidTest
|
||||
- name: Read Results [org.matrix.android.sdk.PermalinkParserTest]
|
||||
if: always()
|
||||
id: get-comment-body-permalink
|
||||
run: python3 ./tools/ci/render_test_output.py permalink ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml
|
||||
- name: Remove adb logcat
|
||||
if: always()
|
||||
run: pkill -9 adb
|
||||
# package: class PermalinkParserTest
|
||||
- name: Find Comment
|
||||
if: always() && github.event_name == 'pull_request'
|
||||
uses: peter-evans/find-comment@v1
|
||||
id: fc
|
||||
with:
|
||||
issue-number: ${{ github.event.pull_request.number }}
|
||||
comment-author: 'github-actions[bot]'
|
||||
body-includes: Integration Tests Results
|
||||
- name: Publish results to PR
|
||||
if: always() && github.event_name == 'pull_request'
|
||||
uses: peter-evans/create-or-update-comment@v1
|
||||
with:
|
||||
comment-id: ${{ steps.fc.outputs.comment-id }}
|
||||
issue-number: ${{ github.event.pull_request.number }}
|
||||
body: |
|
||||
### Matrix SDK
|
||||
## Integration Tests Results:
|
||||
- `[org.matrix.android.sdk.session]`<br>${{ steps.get-comment-body-session.outputs.session }}
|
||||
- `[org.matrix.android.sdk.account]`<br>${{ steps.get-comment-body-account.outputs.account }}
|
||||
- `[org.matrix.android.sdk.internal]`<br>${{ steps.get-comment-body-internal.outputs.internal }}
|
||||
- `[org.matrix.android.sdk.ordering]`<br>${{ steps.get-comment-body-ordering.outputs.ordering }}
|
||||
- `[org.matrix.android.sdk.PermalinkParserTest]`<br>${{ steps.get-comment-body-permalink.outputs.permalink }}
|
||||
edit-mode: replace
|
||||
- name: Upload Test Report Log
|
||||
uses: actions/upload-artifact@v2
|
||||
if: always()
|
||||
with:
|
||||
name: integrationtest-error-results
|
||||
path: |
|
||||
emulator-permalink.log
|
||||
emulator-internal.log
|
||||
emulator-ordering.log
|
||||
emulator-account.log
|
||||
emulator-session.log
|
||||
|
||||
ui-tests:
|
||||
name: UI Tests (Synapse)
|
||||
runs-on: macos-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
api-level: [ 28 ]
|
||||
# No concurrency required, runs every time on a schedule.
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python 3.8
|
||||
uses: actions/setup-python@v3
|
||||
with:
|
||||
python-version: 3.8
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Start synapse server
|
||||
run: |
|
||||
pip install matrix-synapse
|
||||
curl -sL https://raw.githubusercontent.com/matrix-org/synapse/develop/demo/start.sh \
|
||||
| sed s/127.0.0.1/0.0.0.0/g | sed 's/http:\/\/localhost/http:\/\/10.0.2.2/g' | bash -s -- --no-rate-limit
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: '11'
|
||||
- name: Run sanity tests on API ${{ matrix.api-level }}
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: ${{ matrix.api-level }}
|
||||
arch: x86
|
||||
profile: Nexus 5X
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
emulator-build: 7425822 # workaround to emulator bug: https://github.com/ReactiveCircus/android-emulator-runner/issues/160
|
||||
script: |
|
||||
adb root
|
||||
adb logcat -c
|
||||
touch emulator.log
|
||||
chmod 777 emulator.log
|
||||
adb logcat >> emulator.log &
|
||||
./gradlew $CI_GRADLE_ARG_PROPERTIES -PallWarningsAsErrors=false connectedGplayDebugAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=im.vector.app.ui.UiAllScreensSanityTest || (adb pull storage/emulated/0/Pictures/failure_screenshots && exit 1 )
|
||||
- name: Upload Test Report Log
|
||||
uses: actions/upload-artifact@v2
|
||||
if: always()
|
||||
with:
|
||||
name: uitest-error-results
|
||||
path: |
|
||||
emulator.log
|
||||
failure_screenshots/
|
||||
|
||||
sonarqube:
|
||||
runs-on: macos-latest
|
||||
if: always()
|
||||
needs:
|
||||
- integration-tests
|
||||
- ui-tests
|
||||
# - unit-tests TODO: code coverage from here too
|
||||
- build-android-test-matrix-sdk
|
||||
- build-android-test-app
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: '11'
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- run: ./gradlew sonarqube $CI_GRADLE_ARG_PROPERTIES
|
||||
env:
|
||||
ORG_GRADLE_PROJECT_SONAR_LOGIN: ${{ secrets.SONAR_TOKEN }}
|
||||
|
||||
# Notify the channel about scheduled runs, do not notify for manually triggered runs
|
||||
notify:
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
- integration-tests
|
||||
- ui-tests
|
||||
# - unit-tests
|
||||
- build-android-test-matrix-sdk
|
||||
- build-android-test-app
|
||||
- sonarqube
|
||||
if: always() && github.event_name != 'workflow_dispatch'
|
||||
# No concurrency required, runs every time on a schedule.
|
||||
steps:
|
||||
- uses: michaelkaye/matrix-hookshot-action@v0.3.0
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
matrix_access_token: ${{ secrets.ELEMENT_ANDROID_NOTIFICATION_ACCESS_TOKEN }}
|
||||
matrix_room_id: ${{ secrets.ELEMENT_ANDROID_INTERNAL_ROOM_ID }}
|
||||
text_template: "Nightly test run: {{#each job_statuses }}{{#with this }}{{#if completed }} {{name}} {{conclusion}} at {{completed_at}}, {{/if}}{{/with}}{{/each}}"
|
||||
html_template: "Nightly test run results: {{#each job_statuses }}{{#with this }}{{#if completed }}<br />{{name}} {{conclusion}} at {{completed_at}} <a href=\"{{html_url}}\">[details]</a>{{/if}}{{/with}}{{/each}}"
|
12
.github/workflows/quality.yml
vendored
12
.github/workflows/quality.yml
vendored
|
@ -18,6 +18,10 @@ jobs:
|
|||
ktlint:
|
||||
name: Kotlin Linter
|
||||
runs-on: ubuntu-latest
|
||||
# Allow all jobs on main and develop. Just one per PR.
|
||||
concurrency:
|
||||
group: ${{ github.ref == 'refs/heads/main' && format('ktlint-main-{0}', github.sha) || github.ref == 'refs/heads/develop' && format('ktlint-develop-{0}', github.sha) || format('ktlint-{0}', github.ref) }}
|
||||
cancel-in-progress: true
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Run ktlint
|
||||
|
@ -87,6 +91,10 @@ jobs:
|
|||
android-lint:
|
||||
name: Android Linter
|
||||
runs-on: ubuntu-latest
|
||||
# Allow all jobs on main and develop. Just one per PR.
|
||||
concurrency:
|
||||
group: ${{ github.ref == 'refs/heads/main' && format('android-lint-main-{0}', github.sha) || github.ref == 'refs/heads/develop' && format('android-lint-develop-{0}', github.sha) || format('android-lint-{0}', github.ref) }}
|
||||
cancel-in-progress: true
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/cache@v2
|
||||
|
@ -116,6 +124,10 @@ jobs:
|
|||
fail-fast: false
|
||||
matrix:
|
||||
target: [ Gplay, Fdroid ]
|
||||
# Allow all jobs on develop. Just one per PR.
|
||||
concurrency:
|
||||
group: ${{ github.ref == 'refs/heads/develop' && format('apk-lint-develop-{0}-{1}', matrix.target, github.sha) || format('apk-lint-{0}-{1}', matrix.target, github.ref) }}
|
||||
cancel-in-progress: true
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/cache@v2
|
||||
|
|
78
.github/workflows/sanity_test.yml
vendored
78
.github/workflows/sanity_test.yml
vendored
|
@ -1,78 +0,0 @@
|
|||
name: Sanity Test
|
||||
|
||||
on:
|
||||
schedule:
|
||||
# At 20:00 every day UTC
|
||||
- cron: '0 20 * * *'
|
||||
|
||||
# Enrich gradle.properties for CI/CD
|
||||
env:
|
||||
CI_GRADLE_ARG_PROPERTIES: >
|
||||
-Porg.gradle.jvmargs=-Xmx2g
|
||||
-Porg.gradle.parallel=false
|
||||
|
||||
jobs:
|
||||
integration-tests:
|
||||
name: Sanity Tests (Synapse)
|
||||
runs-on: macos-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
api-level: [ 29 ]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
ref: develop
|
||||
- name: Set up Python 3.8
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: 3.8
|
||||
- name: Cache pip
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.cache/pip
|
||||
key: ${{ runner.os }}-pip
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pip-
|
||||
${{ runner.os }}-
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Start synapse server
|
||||
run: |
|
||||
python3 -m venv .synapse
|
||||
source .synapse/bin/activate
|
||||
pip install synapse matrix-synapse
|
||||
curl -sL https://raw.githubusercontent.com/matrix-org/synapse/develop/demo/start.sh \
|
||||
| sed s/127.0.0.1/0.0.0.0/g | sed 's/http:\/\/localhost/http:\/\/10.0.2.2/g' | bash -s -- --no-rate-limit
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'adopt'
|
||||
java-version: '11'
|
||||
- name: Run sanity tests on API ${{ matrix.api-level }}
|
||||
uses: reactivecircus/android-emulator-runner@v2
|
||||
with:
|
||||
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
api-level: ${{ matrix.api-level }}
|
||||
profile: 24 # Pixel 5
|
||||
emulator-build: 7425822 # workaround to emulator bug: https://github.com/ReactiveCircus/android-emulator-runner/issues/160
|
||||
script: |
|
||||
adb root
|
||||
adb logcat -c
|
||||
touch emulator.log
|
||||
chmod 777 emulator.log
|
||||
adb logcat >> emulator.log &
|
||||
./gradlew $CI_GRADLE_ARG_PROPERTIES -PallWarningsAsErrors=false connectedGplayDebugAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=im.vector.app.ui.UiAllScreensSanityTest || adb pull storage/emulated/0/Pictures/failure_screenshots && exit 1
|
||||
- name: Upload Failing Test Report Log
|
||||
uses: actions/upload-artifact@v2
|
||||
if: failure()
|
||||
with:
|
||||
name: sanity-error-results
|
||||
path: |
|
||||
emulator.log
|
||||
failure_screenshots/
|
23
.github/workflows/sync-from-external-sources.yml
vendored
23
.github/workflows/sync-from-external-sources.yml
vendored
|
@ -9,20 +9,13 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
# Skip in forks
|
||||
if: github.repository == 'vector-im/element-android'
|
||||
# No concurrency required, runs every time on a schedule.
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python 3.8
|
||||
uses: actions/setup-python@v2
|
||||
uses: actions/setup-python@v3
|
||||
with:
|
||||
python-version: 3.8
|
||||
- name: Cache pip
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.cache/pip
|
||||
key: ${{ runner.os }}-pip
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pip-
|
||||
${{ runner.os }}-
|
||||
- name: Install Prerequisite dependencies
|
||||
run: |
|
||||
pip install BeautifulSoup4
|
||||
|
@ -43,20 +36,13 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
# Skip in forks
|
||||
if: github.repository == 'vector-im/element-android'
|
||||
# No concurrency required, runs every time on a schedule.
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python 3.8
|
||||
uses: actions/setup-python@v2
|
||||
uses: actions/setup-python@v3
|
||||
with:
|
||||
python-version: 3.8
|
||||
- name: Cache pip
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.cache/pip
|
||||
key: ${{ runner.os }}-pip
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pip-
|
||||
${{ runner.os }}-
|
||||
- name: Install Prerequisite dependencies
|
||||
run: |
|
||||
pip install requests
|
||||
|
@ -76,6 +62,7 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
# Skip in forks
|
||||
if: github.repository == 'vector-im/element-android'
|
||||
# No concurrency required, runs every time on a schedule.
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Run analytics import script
|
||||
|
|
4
.github/workflows/tests.yml
vendored
4
.github/workflows/tests.yml
vendored
|
@ -15,6 +15,10 @@ jobs:
|
|||
unit-tests:
|
||||
name: Run Unit Tests
|
||||
runs-on: ubuntu-latest
|
||||
# Allow all jobs on main and develop. Just one per PR.
|
||||
concurrency:
|
||||
group: ${{ github.ref == 'refs/heads/main' && format('unit-tests-main-{0}', github.sha) || github.ref == 'refs/heads/develop' && format('unit-tests-develop-{0}', github.sha) || format('unit-tests-{0}', github.ref) }}
|
||||
cancel-in-progress: true
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/cache@v2
|
||||
|
|
1
.idea/dictionaries/bmarty.xml
generated
1
.idea/dictionaries/bmarty.xml
generated
|
@ -28,6 +28,7 @@
|
|||
<w>previewable</w>
|
||||
<w>previewables</w>
|
||||
<w>pstn</w>
|
||||
<w>rageshake</w>
|
||||
<w>riotx</w>
|
||||
<w>signin</w>
|
||||
<w>signout</w>
|
||||
|
|
BIN
.idea/icon.png
generated
Normal file
BIN
.idea/icon.png
generated
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
79
CHANGES.md
79
CHANGES.md
|
@ -1,3 +1,82 @@
|
|||
Changes in Element v1.4.2 (2022-02-22 Palindrome Day!)
|
||||
======================================================
|
||||
|
||||
Features ✨
|
||||
----------
|
||||
- Open the room when user accepts an invite from the room list ([#3771](https://github.com/vector-im/element-android/issues/3771))
|
||||
- Add completion for @room to notify everyone in a room ([#5123](https://github.com/vector-im/element-android/issues/5123))
|
||||
- Improve UI of reactions in timeline, including quick add reaction. ([#5204](https://github.com/vector-im/element-android/issues/5204))
|
||||
- Support creating disclosed polls ([#5290](https://github.com/vector-im/element-android/issues/5290))
|
||||
|
||||
Bugfixes 🐛
|
||||
----------
|
||||
- Remove redundant highlight on add poll option button ([#5178](https://github.com/vector-im/element-android/issues/5178))
|
||||
- Reliably display crash report prompt ([#5195](https://github.com/vector-im/element-android/issues/5195))
|
||||
- Fix for rooms with virtual rooms not showing call status events in the timeline. ([#5198](https://github.com/vector-im/element-android/issues/5198))
|
||||
- Fix for call transfer with consult failing to make outgoing consultation call. ([#5201](https://github.com/vector-im/element-android/issues/5201))
|
||||
- Fix crash during account registration when redirecting to Web View ([#5218](https://github.com/vector-im/element-android/issues/5218))
|
||||
- Analytics: Fixes missing use case identity values from within the onboarding flow ([#5234](https://github.com/vector-im/element-android/issues/5234))
|
||||
- Fixing crash when adding room by QR code after accepting the camera permission for the first time ([#5295](https://github.com/vector-im/element-android/issues/5295))
|
||||
|
||||
SDK API changes ⚠️
|
||||
------------------
|
||||
- `join` and `leave` methods moved from MembershipService to RoomService and SpaceService to split logic for rooms and spaces ([#5183](https://github.com/vector-im/element-android/issues/5183))
|
||||
- Deprecates Matrix.initialize and Matrix.getInstance in favour of the client providing its own singleton instance via Matrix.createInstance ([#5185](https://github.com/vector-im/element-android/issues/5185))
|
||||
- Adds support for MSC3283, additional homeserver capabilities ([#5207](https://github.com/vector-im/element-android/issues/5207))
|
||||
|
||||
Other changes
|
||||
-------------
|
||||
- Right align the notifications badge in the rooms list (and DMs) so that it's always in a consistent place on the screen. ([#4640](https://github.com/vector-im/element-android/issues/4640))
|
||||
- Collapse successive ACLs events in room timeline ([#2782](https://github.com/vector-im/element-android/issues/2782))
|
||||
- Home screen: Replacing search icon by filter icon in the top right menu ([#4643](https://github.com/vector-im/element-android/issues/4643))
|
||||
- Make Space creation screens more consistent ([#5104](https://github.com/vector-im/element-android/issues/5104))
|
||||
- Defensive coding to ensure encryption when room was once e2e ([#5136](https://github.com/vector-im/element-android/issues/5136))
|
||||
- Reduce verbosity of debug logging, ([#5209](https://github.com/vector-im/element-android/issues/5209))
|
||||
- Standardise emulator versions of GHA integration tests. ([#5210](https://github.com/vector-im/element-android/issues/5210))
|
||||
- Replacing color "vctr_unread_room_badge" by "vctr_content_secondary" ([#5225](https://github.com/vector-im/element-android/issues/5225))
|
||||
- Change preferred jitsi domain from `jitsi.riot.im` to `meet.element.io` ([#5254](https://github.com/vector-im/element-android/issues/5254))
|
||||
- Analytics screen events are now tracked on screen enter instead of screen leave ([#5256](https://github.com/vector-im/element-android/issues/5256))
|
||||
- Improves bitmap memory usage by caching the shortcut images ([#5276](https://github.com/vector-im/element-android/issues/5276))
|
||||
- Changes unread marker in room list from green to grey ([#5294](https://github.com/vector-im/element-android/issues/5294))
|
||||
- Improve some internal realm usages. ([#5297](https://github.com/vector-im/element-android/issues/5297))
|
||||
|
||||
Translations 🗣
|
||||
--------------
|
||||
- Improved Japanese translations (special thanks to Suguru Hirahara!)
|
||||
|
||||
|
||||
Changes in Element v1.4.0 (2022-02-09)
|
||||
======================================
|
||||
|
||||
Features ✨
|
||||
----------
|
||||
- Initial implementation of thread messages ([#4746](https://github.com/vector-im/element-android/issues/4746))
|
||||
- Support message bubbles in timeline. ([#4937](https://github.com/vector-im/element-android/issues/4937))
|
||||
- Support generic location pin ([#5146](https://github.com/vector-im/element-android/issues/5146))
|
||||
- Retrieve map style url from .well-known ([#5175](https://github.com/vector-im/element-android/issues/5175))
|
||||
|
||||
Bugfixes 🐛
|
||||
----------
|
||||
- Fixes non sans-serif font weights being ignored ([#3907](https://github.com/vector-im/element-android/issues/3907))
|
||||
- Fixing missing/intermittent notifications on the google play variant when wifi is enabled ([#5038](https://github.com/vector-im/element-android/issues/5038))
|
||||
- Fixes call statuses in the timeline for missed/rejected calls and connected calls. ([#5088](https://github.com/vector-im/element-android/issues/5088))
|
||||
- Fix fallback permalink when threads are disabled ([#5128](https://github.com/vector-im/element-android/issues/5128))
|
||||
- Analytics: aligns use case identifying with iOS implementation ([#5142](https://github.com/vector-im/element-android/issues/5142))
|
||||
- Fix location rendering in timeline if map cannot be loaded ([#5143](https://github.com/vector-im/element-android/issues/5143))
|
||||
|
||||
Other changes
|
||||
-------------
|
||||
- "Invite users to space" dialog now closed when user choose invite method ([#4295](https://github.com/vector-im/element-android/issues/4295))
|
||||
- Changed layout for space card and room card used at "explore room" screen and space/room invite dialogs ([#4304](https://github.com/vector-im/element-android/issues/4304))
|
||||
- Removed spaces restricted search hint dialogs ([#4315](https://github.com/vector-im/element-android/issues/4315))
|
||||
- Remove Search from room options if not available ([#4641](https://github.com/vector-im/element-android/issues/4641))
|
||||
- Qr code scanning fragments merged into one ([#4873](https://github.com/vector-im/element-android/issues/4873))
|
||||
- Fix CI/CD errors after merges for quality and integration tests ([#5118](https://github.com/vector-im/element-android/issues/5118))
|
||||
- Added automation for the Z-FTUE label to add issues to the FTUE Project Board ([#5120](https://github.com/vector-im/element-android/issues/5120))
|
||||
- Added automation for WTF labels to move to WTF project board ([#5148](https://github.com/vector-im/element-android/issues/5148))
|
||||
- Update WTF automation to fix it ([#5173](https://github.com/vector-im/element-android/issues/5173))
|
||||
|
||||
|
||||
Changes in Element v1.3.18 (2022-02-03)
|
||||
=======================================
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ It is a total rewrite of [Riot-Android](https://github.com/vector-im/riot-androi
|
|||
[<img src="resources/img/google-play-badge.png" alt="Get it on Google Play" height="60">](https://play.google.com/store/apps/details?id=im.vector.app)
|
||||
[<img src="resources/img/f-droid-badge.png" alt="Get it on F-Droid" height="60">](https://f-droid.org/app/im.vector.app)
|
||||
|
||||
Nightly build: [](https://buildkite.com/matrix-dot-org/element-android/builds?branch=develop) Nighly sanity test status: [](https://github.com/vector-im/element-android/actions/workflows/sanity_test.yml)
|
||||
Nightly build: [](https://buildkite.com/matrix-dot-org/element-android/builds?branch=develop) Nighly test status: [](https://github.com/vector-im/element-android/actions/workflows/nightly.yml)
|
||||
|
||||
|
||||
# New Android SDK
|
||||
|
|
13
build.gradle
13
build.gradle
|
@ -19,8 +19,8 @@ buildscript {
|
|||
classpath libs.gradle.hiltPlugin
|
||||
classpath 'com.google.gms:google-services:4.3.10'
|
||||
classpath 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:3.3'
|
||||
classpath 'com.google.android.gms:oss-licenses-plugin:0.10.4'
|
||||
classpath "com.likethesalad.android:string-reference:1.2.2"
|
||||
classpath 'com.google.android.gms:oss-licenses-plugin:0.10.5'
|
||||
classpath "com.likethesalad.android:stem-plugin:2.0.0"
|
||||
|
||||
// NOTE: Do not place your application dependencies here; they belong
|
||||
// in the individual module build.gradle files
|
||||
|
@ -109,7 +109,7 @@ apply plugin: 'org.sonarqube'
|
|||
|
||||
// To run a sonar analysis:
|
||||
// Run './gradlew sonarqube -Dsonar.login=<REPLACE_WITH_SONAR_KEY>'
|
||||
// The SONAR_KEY is stored in passbolt
|
||||
// The SONAR_KEY is stored in passbolt as Token Sonar Cloud Bma
|
||||
|
||||
sonarqube {
|
||||
properties {
|
||||
|
@ -138,17 +138,12 @@ project(":vector") {
|
|||
}
|
||||
}
|
||||
|
||||
project(":diff-match-patch") {
|
||||
project(":library:diff-match-patch") {
|
||||
sonarqube {
|
||||
skipProject = true
|
||||
}
|
||||
}
|
||||
|
||||
// Global configurations across all modules
|
||||
ext {
|
||||
isThreadingEnabled = true
|
||||
}
|
||||
|
||||
//project(":matrix-sdk-android") {
|
||||
// sonarqube {
|
||||
// properties {
|
||||
|
|
1
changelog.d/3296.bugfix
Normal file
1
changelog.d/3296.bugfix
Normal file
|
@ -0,0 +1 @@
|
|||
Typing notifications moved from the header to the bottom of the timeline.
|
|
@ -1 +0,0 @@
|
|||
Fixes non sans-serif font weights being ignored
|
|
@ -1 +0,0 @@
|
|||
"Invite users to space" dialog now closed when user choose invite method
|
|
@ -1 +0,0 @@
|
|||
Changed layout for space card and room card used at "explore room" screen and space/room invite dialogs
|
|
@ -1 +0,0 @@
|
|||
Removed spaces restricted search hint dialogs
|
1
changelog.d/4319.bugfix
Normal file
1
changelog.d/4319.bugfix
Normal file
|
@ -0,0 +1 @@
|
|||
Open direct message screen when clicking on DM button in the space members list
|
1
changelog.d/4498.misc
Normal file
1
changelog.d/4498.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Override task affinity to prevent unknown activities running in our app tasks.
|
|
@ -1 +0,0 @@
|
|||
Remove Search from room options if not available
|
|
@ -1 +0,0 @@
|
|||
Initial implementation of thread messages
|
|
@ -1 +0,0 @@
|
|||
Qr code scanning fragments merged into one
|
|
@ -1 +0,0 @@
|
|||
Support message bubbles in timeline.
|
1
changelog.d/5005.feature
Normal file
1
changelog.d/5005.feature
Normal file
|
@ -0,0 +1 @@
|
|||
Add possibility to save media from Gallery + reorder choices in message context menu
|
|
@ -1 +0,0 @@
|
|||
Fixing missing/intermittent notifications on the google play variant when wifi is enabled
|
|
@ -1 +0,0 @@
|
|||
Fixes call statuses in the timeline for missed/rejected calls and connected calls.
|
|
@ -1 +0,0 @@
|
|||
Fix CI/CD errors after merges for quality and integration tests
|
|
@ -1 +0,0 @@
|
|||
Added automation for the Z-FTUE label to add issues to the FTUE Project Board
|
|
@ -1 +0,0 @@
|
|||
Fix fallback permalink when threads are disabled
|
|
@ -1 +0,0 @@
|
|||
Analytics: aligns use case identifying with iOS implementation
|
|
@ -1 +0,0 @@
|
|||
Fix location rendering in timeline if map cannot be loaded
|
|
@ -1 +0,0 @@
|
|||
Support generic location pin
|
|
@ -1 +0,0 @@
|
|||
Added automation for WTF labels to move to WTF project board
|
1
changelog.d/5158.wip
Normal file
1
changelog.d/5158.wip
Normal file
|
@ -0,0 +1 @@
|
|||
Starts the FTUE account personalisation flow by adding an account created screen behind a feature flag
|
|
@ -1 +0,0 @@
|
|||
Update WTF automation to fix it
|
|
@ -1 +0,0 @@
|
|||
Retrieve map style url from .well-known
|
1
changelog.d/5269.misc
Normal file
1
changelog.d/5269.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Tentatively fixing the UI sanity test being unable to click on the space menu items
|
1
changelog.d/5303.misc
Normal file
1
changelog.d/5303.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Improve Bubble layouts rendering.
|
1
changelog.d/5309.misc
Normal file
1
changelog.d/5309.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Moves attachment-viewer, diff-match-patch, and multipicker modules to subfolders under library
|
1
changelog.d/5312.misc
Normal file
1
changelog.d/5312.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Log the `since` token used and `next_batch` token returned when doing an incremental sync.
|
1
changelog.d/5313.misc
Normal file
1
changelog.d/5313.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Update reaction button layout.
|
1
changelog.d/5314.misc
Normal file
1
changelog.d/5314.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Notify element-android channel each time a nightly build completes.
|
1
changelog.d/5318.misc
Normal file
1
changelog.d/5318.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Log the `since` token used and `next_batch` token returned when doing an incremental sync.
|
1
changelog.d/5325.feature
Normal file
1
changelog.d/5325.feature
Normal file
|
@ -0,0 +1 @@
|
|||
Adds forceLoginFallback feature flag and usages to FTUE login and registration
|
1
changelog.d/5326.misc
Normal file
1
changelog.d/5326.misc
Normal file
|
@ -0,0 +1 @@
|
|||
[Export e2ee keys] use appName instead of element
|
1
changelog.d/5330.misc
Normal file
1
changelog.d/5330.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Continue improving realm usage.
|
1
changelog.d/5330.sdk
Normal file
1
changelog.d/5330.sdk
Normal file
|
@ -0,0 +1 @@
|
|||
Change name of getTimeLineEvent and getTimeLineEventLive methods to getTimelineEvent and getTimelineEventLive.
|
1
changelog.d/5348.misc
Normal file
1
changelog.d/5348.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Upgrade the plugin which generate strings with template from 1.2.2 to 2.0.0
|
1
changelog.d/5352.misc
Normal file
1
changelog.d/5352.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Remove about 700 unused strings and their translations
|
1
changelog.d/5361.misc
Normal file
1
changelog.d/5361.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Creates dedicated VectorOverrides for forcing behaviour for local testing/development
|
1
changelog.d/5379.misc
Normal file
1
changelog.d/5379.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Cleanup unused threads build configurations
|
1
changelog.d/5392.misc
Normal file
1
changelog.d/5392.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Upgrades material dependency version from 1.4.0 to 1.5.0
|
1
changelog.d/5394.bugfix
Normal file
1
changelog.d/5394.bugfix
Normal file
|
@ -0,0 +1 @@
|
|||
Fix incorrect media cache size in settings
|
1
changelog.d/5402.bugfix
Normal file
1
changelog.d/5402.bugfix
Normal file
|
@ -0,0 +1 @@
|
|||
[Create room] Setting an avatar when creating a room had no effect
|
1
changelog.d/5418.feature
Normal file
1
changelog.d/5418.feature
Normal file
|
@ -0,0 +1 @@
|
|||
Improves settings error dialog messaging when changing avatar or display name fails
|
|
@ -71,8 +71,7 @@ ext.libs = [
|
|||
'espressoIntents' : "androidx.test.espresso:espresso-intents:$espresso"
|
||||
],
|
||||
google : [
|
||||
// TODO There is 1.6.0?
|
||||
'material' : "com.google.android.material:material:1.4.0"
|
||||
'material' : "com.google.android.material:material:1.5.0"
|
||||
],
|
||||
dagger : [
|
||||
'dagger' : "com.google.dagger:dagger:$dagger",
|
||||
|
|
|
@ -29,9 +29,10 @@ ext.groups = [
|
|||
'com\\.google\\.android\\..*',
|
||||
],
|
||||
group: [
|
||||
'com.google.firebase',
|
||||
'com.android',
|
||||
'com.android.tools',
|
||||
'com.google.firebase',
|
||||
'com.google.testing.platform',
|
||||
]
|
||||
],
|
||||
mavenCentral: [
|
||||
|
@ -63,6 +64,8 @@ ext.groups = [
|
|||
'com.github.piasy',
|
||||
'com.github.shyiko.klob',
|
||||
'com.google',
|
||||
'com.google.android',
|
||||
'com.google.api.grpc',
|
||||
'com.google.auto.service',
|
||||
'com.google.auto.value',
|
||||
'com.google.code.findbugs',
|
||||
|
@ -111,10 +114,13 @@ ext.groups = [
|
|||
'io.arrow-kt',
|
||||
'io.github.detekt.sarif4k',
|
||||
'io.github.reactivecircus.flowbinding',
|
||||
'io.grpc',
|
||||
'io.jsonwebtoken',
|
||||
'io.kindedj',
|
||||
'io.mockk',
|
||||
'io.netty',
|
||||
'io.noties.markwon',
|
||||
'io.opencensus',
|
||||
'io.reactivex.rxjava2',
|
||||
'io.realm',
|
||||
'it.unimi.dsi',
|
||||
|
@ -175,6 +181,7 @@ ext.groups = [
|
|||
'org.sonatype.oss',
|
||||
'org.testng',
|
||||
'org.threeten',
|
||||
'org.webjars',
|
||||
'ru.noties',
|
||||
'xerces',
|
||||
'xml-apis',
|
||||
|
|
|
@ -104,3 +104,76 @@ fun initAccount() {
|
|||
existingSession = createAccountAndSync(matrix, userName, password, true)
|
||||
}
|
||||
```
|
||||
|
||||
### Contributing to the UiAllScreensSanityTest
|
||||
|
||||
The `UiAllScreensSanityTest` makes use of the Robot pattern in order to model pages, components and interactions.
|
||||
Each Robot aims to return the UI back to its original state after the interaction, allowing for a reusable and consistent DSL.
|
||||
|
||||
```kotlin
|
||||
// launches and closes settings after executing the block
|
||||
elementRobot.settings {
|
||||
// whilst in the settings, launches and closes the advanced settings sub screen
|
||||
advancedSettings {
|
||||
// crawls all the pages within the advanced settings
|
||||
crawl()
|
||||
}
|
||||
}
|
||||
|
||||
// enables developer mode by navigating to the settings, enabling the toggle and then returning to the starting point to execute the block
|
||||
// on block completion the Robot disables developer mode by navigating back to the settings and finally returning to the original starting point
|
||||
elementRobot.withDeveloperMode {
|
||||
// the same starting point as the example above
|
||||
settings {
|
||||
advancedSettings { crawlDeveloperOptions() }
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
The Robots used in the example above...
|
||||
|
||||
```kotlin
|
||||
class ElementRobot {
|
||||
fun settings(block: SettingsRobot.() -> Unit) {
|
||||
// double check we're where we think we are
|
||||
waitUntilViewVisible(withId(R.id.bottomNavigationView))
|
||||
|
||||
// navigate to the settings
|
||||
openDrawer()
|
||||
clickOn(R.id.homeDrawerHeaderSettingsView)
|
||||
|
||||
// execute the robot with the context of the settings screen
|
||||
block(SettingsRobot())
|
||||
|
||||
// close the settings and ensure we're back at the starting point
|
||||
pressBack()
|
||||
waitUntilViewVisible(withId(R.id.bottomNavigationView))
|
||||
}
|
||||
|
||||
fun withDeveloperMode(block: ElementRobot.() -> Unit) {
|
||||
settings { toggleDeveloperMode() }
|
||||
block()
|
||||
settings { toggleDeveloperMode() }
|
||||
}
|
||||
}
|
||||
|
||||
class SettingsRobot {
|
||||
fun toggleDeveloperMode() {
|
||||
advancedSettings {
|
||||
toggleDeveloperMode()
|
||||
}
|
||||
}
|
||||
|
||||
fun advancedSettings(block: SettingsAdvancedRobot.() -> Unit) {
|
||||
clickOn(R.string.settings_advanced_settings)
|
||||
block(SettingsAdvancedRobot())
|
||||
pressBack()
|
||||
}
|
||||
}
|
||||
|
||||
class SettingsAdvancedRobot {
|
||||
fun toggleDeveloperMode() {
|
||||
clickOn(R.string.settings_developer_mode_summary)
|
||||
}
|
||||
}
|
||||
```
|
2
fastlane/metadata/android/cs-CZ/changelogs/40103170.txt
Normal file
2
fastlane/metadata/android/cs-CZ/changelogs/40103170.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Hlavní změny v této verzi: odeslání svojí polohy do libovolné místnosti. Úpravy anket.
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases/tag/v1.3.17
|
2
fastlane/metadata/android/cs-CZ/changelogs/40103180.txt
Normal file
2
fastlane/metadata/android/cs-CZ/changelogs/40103180.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Hlavní změny v této verzi: odeslání svojí polohy do libovolné místnosti. Úpravy anket.
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases/tag/v1.3.18
|
2
fastlane/metadata/android/cs-CZ/changelogs/40104000.txt
Normal file
2
fastlane/metadata/android/cs-CZ/changelogs/40104000.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Hlavní změny v této verzi: Počáteční implementace vláken zpráv. Bubliny zpráv.
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases/tag/v1.4.0
|
2
fastlane/metadata/android/cs-CZ/changelogs/40104020.txt
Normal file
2
fastlane/metadata/android/cs-CZ/changelogs/40104020.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Hlavní změny v této verzi: přidána podpora pro @room a tajné hlasování a mnoho dalších drobných změn
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases/tag/v1.4.2
|
2
fastlane/metadata/android/de-DE/changelogs/40103170.txt
Normal file
2
fastlane/metadata/android/de-DE/changelogs/40103170.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Wichtigste Änderungen in dieser Version: Versende deinen Standort an jeden Raum deiner Wahl. Bearbeite Umfragen.
|
||||
Alle Änderungen: https://github.com/vector-im/element-android/releases/tag/v1.3.17
|
2
fastlane/metadata/android/de-DE/changelogs/40103180.txt
Normal file
2
fastlane/metadata/android/de-DE/changelogs/40103180.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Wichtigste Änderungen in dieser Version: Versende deinen Standort an jeden Raum deiner Wahl. Bearbeite Umfragen.
|
||||
Alle Änderungen: https://github.com/vector-im/element-android/releases/tag/v1.3.18
|
2
fastlane/metadata/android/en-US/changelogs/40104000.txt
Normal file
2
fastlane/metadata/android/en-US/changelogs/40104000.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Main changes in this version: Initial implementation of thread messages. Message bubbles.
|
||||
Full changelog: https://github.com/vector-im/element-android/releases/tag/v1.4.0
|
2
fastlane/metadata/android/en-US/changelogs/40104020.txt
Normal file
2
fastlane/metadata/android/en-US/changelogs/40104020.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Main changes in this version: add support to @room and undisclosed polls among many other little changes.
|
||||
Full changelog: https://github.com/vector-im/element-android/releases/tag/v1.4.2
|
2
fastlane/metadata/android/et/changelogs/40103170.txt
Normal file
2
fastlane/metadata/android/et/changelogs/40103170.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Põhilised muutused selles versioonis: oma asukoha saatmine jututuppa ja küsitluste muutmise võimalus.
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases/tag/v1.3.17
|
2
fastlane/metadata/android/et/changelogs/40103180.txt
Normal file
2
fastlane/metadata/android/et/changelogs/40103180.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Põhilised muutused selles versioonis: oma asukoha saatmine jututuppa ja küsitluste muutmise võimalus.
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases/tag/v1.3.18
|
2
fastlane/metadata/android/et/changelogs/40104000.txt
Normal file
2
fastlane/metadata/android/et/changelogs/40104000.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Põhilised muutused selles versioonis: jutulõngade esmane lahendus ja jutumullid.
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases/tag/v1.4.0
|
2
fastlane/metadata/android/et/changelogs/40104020.txt
Normal file
2
fastlane/metadata/android/et/changelogs/40104020.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Põhilised muutused selles versioonis: @jututuba tugi, mitteavalikud küsitlused ning pisiparandused.
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases/tag/v1.4.2
|
2
fastlane/metadata/android/fa/changelogs/40103170.txt
Normal file
2
fastlane/metadata/android/fa/changelogs/40103170.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
تغییرات عمده در این نگارش: فرستادن مکانتان به هر اتاقی. ویرایش نظرسنجی.
|
||||
گزارش دگرگونی کامل: https://github.com/vector-im/element-android/releases/tag/v1.3.17
|
2
fastlane/metadata/android/fa/changelogs/40103180.txt
Normal file
2
fastlane/metadata/android/fa/changelogs/40103180.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
تغییرات عمده در این نگارش: فرستادن مکانتان به هر اتاقی. ویرایش نظرسنجی.
|
||||
گزارش دگرگونی کامل: https://github.com/vector-im/element-android/releases/tag/v1.3.18
|
2
fastlane/metadata/android/hu-HU/changelogs/40103170.txt
Normal file
2
fastlane/metadata/android/hu-HU/changelogs/40103170.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Fő változás ebben a verzióban: földrajzi helyzet elküldése bármelyik szobába. Szavazás szerkesztése.
|
||||
Teljes változásnapló: https://github.com/vector-im/element-android/releases/tag/v1.3.17
|
2
fastlane/metadata/android/hu-HU/changelogs/40103180.txt
Normal file
2
fastlane/metadata/android/hu-HU/changelogs/40103180.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Fő változás ebben a verzióban: földrajzi helyzet elküldése bármelyik szobába. Szavazás szerkesztése.
|
||||
Teljes változásnapló: https://github.com/vector-im/element-android/releases/tag/v1.3.18
|
2
fastlane/metadata/android/hu-HU/changelogs/40104000.txt
Normal file
2
fastlane/metadata/android/hu-HU/changelogs/40104000.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Fő változás ebben a verzióban: Üzenetszálak kezdeti implementációja. Buborék üzenetek.
|
||||
Teljes változásnapló: https://github.com/vector-im/element-android/releases/tag/v1.4.0
|
2
fastlane/metadata/android/hu-HU/changelogs/40104020.txt
Normal file
2
fastlane/metadata/android/hu-HU/changelogs/40104020.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
Fő változás ebben a verzióban: @room támogatás és nem nyilvános szavazások mellett kisebb változtatások.
|
||||
Teljes változásnapló: https://github.com/vector-im/element-android/releases/tag/v1.4.2
|
|
@ -1,2 +1,2 @@
|
|||
Versi baru ini terutama berisi perbaikan bug dan peningkatan. Mengirim pesan sekarang jauh lebih cepat.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.10
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.10
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Versi baru ini terutama berisi antarmuka pengguna dan peningkatan pengalaman pengguna. Sekarang Anda dapat mengundang teman, dan membuat sebuah DM sangat cepat dengan memindai kode QR.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.11
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.11
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: Pratinjau URL, keyboard Emoji baru, kemampuan pengaturan ruangan baru, dan salju untuk Natal!
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.12
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.12
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: Pratinjau URL, keyboard Emoji baru, kemampuan pengaturan ruangan baru, dan salju untuk Natal!
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.13
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.13
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: Edit izin ruangan, tema cahaya/gelap otomatis, dan banyak perbaikan bug.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.14
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.14
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: Dukungan login sosial.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.15
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.15
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: Dukungan login sosial.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.15 dan https://github.com/vector-im/element-android/releases/tag/v1.0.16
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.15 dan https://github.com/vector-im/element-android/releases/tag/v1.0.16
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: perbaikan bug!
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.17
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.0.17
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: perbaikan VoIP (panggilan audio dan video dalam DM) dan perbaikan bug!
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.0
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.0
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: peningkatan kinerja dan perbaikan bug!
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.1
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.1
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: peningkatan kinerja dan perbaikan bug!
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.2
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.2
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: peningkatan kinerja dan perbaikan bug!
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.3
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.3
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: peningkatan kinerja dan perbaikan bug!
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.4
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.4
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: perbaikan hot-fix untuk 1.1.4
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.5
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.5
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: perbaikan hot-fix untuk 1.1.5
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.6
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.6
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: dukungan beta untuk Spaces. Kompres video sebelum mengirim.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.7
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.7
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: perbaikan untuk Spaces.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.8
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.8
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: menambahkan dukungan untuk jaringan gitter.im.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.9
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.9
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: pembaruan tema dan gaya dan fitur-fitur baru untuk Spaces.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.10
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.10
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: pembaruan tema dan gaya dan fitur baru untuk spaces (perbaikan bug untuk 1.1.10)
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.11
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.11
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: pembaruan tema dan gaya dan perbaiki crash setelah panggilan video
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.12
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.12
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
Perubahan utama dalam versi ini: terutama pembaruan stabilitas dan perbaikan bug.
|
||||
Changelog lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.13
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.1.13
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue