mirror of
https://github.com/vector-im/riotX-android
synced 2025-10-06 08:12:46 +02:00
Compare commits
5 Commits
tech/upgra
...
task/eric/
Author | SHA1 | Date | |
---|---|---|---|
|
4205925cf6 | ||
|
c148805db7 | ||
|
b37800a5eb | ||
|
72689c76de | ||
|
184aeaa5c8 |
2
.github/ISSUE_TEMPLATE/enhancement.yml
vendored
2
.github/ISSUE_TEMPLATE/enhancement.yml
vendored
@@ -5,7 +5,7 @@ body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thank you for taking the time to propose an enhancement to an existing feature. If you would like to propose a new feature or a major cross-platform change, please [start a discussion here](https://github.com/vector-im/element-meta/discussions/new?category=ideas).
|
||||
Thank you for taking the time to propose a new feature or make a suggestion.
|
||||
- type: textarea
|
||||
id: usecase
|
||||
attributes:
|
||||
|
13
.github/ISSUE_TEMPLATE/release.yml
vendored
13
.github/ISSUE_TEMPLATE/release.yml
vendored
@@ -20,25 +20,28 @@ body:
|
||||
- [ ] Check the update of the store descriptions (using Google Translate if necessary) to ensure that the changes are acceptable to be published to the stores.
|
||||
- [ ] While Weblate is locked, and after the PR from Weblate has been merged, handle all the TODOs in the main `strings.xml` file
|
||||
- [ ] Run the script `./tools/release/pushPlayStoreMetaData.sh`. You can check in the GooglePlay console the Activity log to check the effect.
|
||||
|
||||
- [ ] Ensure all [the required PRs](https://github.com/vector-im/element-android/pulls?q=is%3Aopen+is%3Apr+label%3AZ-NextRelease) have been merged
|
||||
|
||||
### Do the release
|
||||
|
||||
- [ ] Make sure `develop` and `main` are up to date and create a release with gitflow: `git checkout main; git pull; git checkout develop; git pull; git flow release start '1.2.3'`
|
||||
- [ ] Make sure `develop` and `main` are up to date (git pull)
|
||||
- [ ] Checkout develop and create a release with gitflow, branch name `release/1.2.3`
|
||||
- [ ] Check the crashes from the PlayStore
|
||||
- [ ] Check the rageshake with the current dev version: https://github.com/matrix-org/element-android-rageshakes/labels/1.2.3-dev
|
||||
- [ ] Run the integration test, and especially `UiAllScreensSanityTest.allScreensTest()`
|
||||
- [ ] Create an account on matrix.org and do some smoke tests that the sanity test does not cover like: 1-1 call, 1-1 video call, Jitsi call for instance
|
||||
- [ ] Run towncrier: `towncrier build --version v1.2.3 --draft` (remove `--draft` do write the file CHANGES.md)
|
||||
- [ ] Check that the folder `changelog.d` is empty. It can happen that some remaining files stay here
|
||||
- [ ] Check the file CHANGES.md consistency. It's possible to reorder items (most important changes first) or change their section if relevant. Also an opportunity to fix some typo, or rewrite things
|
||||
- [ ] Add file for fastlane under ./fastlane/metadata/android/en-US/changelogs
|
||||
- [ ] (optional) Push the branch and start a draft PR (will not be merged), to check that the CI is happy with all the changes.
|
||||
- [ ] Finish release with gitflow, delete the draft PR (if created): `git flow release finish '1.2.3'`
|
||||
- [ ] Push `main` and the new tag `v1.2.3` to origin: `git push origin main; git push origin 'v1.2.3'`
|
||||
- [ ] Checkout `develop`: `git checkout develop`
|
||||
- [ ] Finish release with gitflow, delete the draft PR (if created)
|
||||
- [ ] Push `main` and the new tag `v1.2.3` to origin
|
||||
- [ ] Checkout `develop`
|
||||
- [ ] Increase version (versionPatch + 2) in `./vector/build.gradle`
|
||||
- [ ] Change the value of SDK_VERSION in the file `./matrix-sdk-android/build.gradle`
|
||||
- [ ] Commit and push `develop`: `git commit -m 'version++'; git push origin develop`
|
||||
- [ ] Commit and push `develop`
|
||||
- [ ] Wait for [Buildkite](https://buildkite.com/matrix-dot-org/element-android/builds?branch=main) to build the `main` branch.
|
||||
- [ ] Run the script `~/scripts/releaseElement.sh`. It will download the APKs from Buildkite check them and sign them.
|
||||
- [ ] Install the APK on your phone to check that the upgrade went well (no init sync, etc.)
|
||||
|
2
.github/workflows/danger.yml
vendored
2
.github/workflows/danger.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
||||
- run: |
|
||||
npm install --save-dev @babel/plugin-transform-flow-strip-types
|
||||
- name: Danger
|
||||
uses: danger/danger-js@11.1.4
|
||||
uses: danger/danger-js@11.1.3
|
||||
with:
|
||||
args: "--dangerfile tools/danger/dangerfile.js"
|
||||
env:
|
||||
|
2
.github/workflows/docs.yml
vendored
2
.github/workflows/docs.yml
vendored
@@ -10,7 +10,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Build docs
|
||||
run: ./gradlew dokkaHtml
|
||||
|
4
.github/workflows/post-pr.yml
vendored
4
.github/workflows/post-pr.yml
vendored
@@ -52,7 +52,7 @@ jobs:
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Start synapse server
|
||||
uses: michaelkaye/setup-matrix-synapse@v1.0.4
|
||||
uses: michaelkaye/setup-matrix-synapse@v1.0.3
|
||||
with:
|
||||
uploadLogs: true
|
||||
httpPort: 8080
|
||||
@@ -94,7 +94,7 @@ jobs:
|
||||
needs:
|
||||
- should-i-run
|
||||
- ui-tests
|
||||
if: always() && (needs.should-i-run.result == 'success' ) && (needs.ui-tests.result != 'success')
|
||||
if: always() && (needs.should-i-run.result == 'success' ) && ((needs.codecov-units.result != 'success' ) || (needs.ui-tests.result != 'success') || (needs.integration-tests.result != 'success'))
|
||||
# No concurrency required, runs every time on a schedule.
|
||||
steps:
|
||||
- uses: michaelkaye/matrix-hookshot-action@v1.0.0
|
||||
|
2
.github/workflows/quality.yml
vendored
2
.github/workflows/quality.yml
vendored
@@ -66,7 +66,7 @@ jobs:
|
||||
yarn add danger-plugin-lint-report --dev
|
||||
- name: Danger lint
|
||||
if: always()
|
||||
uses: danger/danger-js@11.1.4
|
||||
uses: danger/danger-js@11.1.3
|
||||
with:
|
||||
args: "--dangerfile tools/danger/dangerfile-lint.js"
|
||||
env:
|
||||
|
2
.github/workflows/tests.yml
vendored
2
.github/workflows/tests.yml
vendored
@@ -50,7 +50,7 @@ jobs:
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.8
|
||||
- uses: michaelkaye/setup-matrix-synapse@v1.0.4
|
||||
- uses: michaelkaye/setup-matrix-synapse@v1.0.3
|
||||
with:
|
||||
uploadLogs: true
|
||||
httpPort: 8080
|
||||
|
2
.github/workflows/triage-incoming.yml
vendored
2
.github/workflows/triage-incoming.yml
vendored
@@ -10,7 +10,7 @@ jobs:
|
||||
# Skip in forks
|
||||
if: github.repository == 'vector-im/element-android'
|
||||
steps:
|
||||
- uses: alex-page/github-project-automation-plus@1f8873e97e3c8f58161a323b7c568c1f623a1c4d
|
||||
- uses: alex-page/github-project-automation-plus@bb266ff4dde9242060e2d5418e120a133586d488
|
||||
with:
|
||||
project: Issue triage
|
||||
column: Incoming
|
||||
|
159
.github/workflows/triage-labelled.yml
vendored
159
.github/workflows/triage-labelled.yml
vendored
@@ -29,23 +29,6 @@ jobs:
|
||||
labels: ['Z-Labs']
|
||||
})
|
||||
|
||||
apply_Help-Wanted_label:
|
||||
name: Add "Help Wanted" label to all "good first issue" and Hacktoberfest
|
||||
runs-on: ubuntu-latest
|
||||
if: >
|
||||
contains(github.event.issue.labels.*.name, 'good first issue') ||
|
||||
contains(github.event.issue.labels.*.name, 'Hacktoberfest')
|
||||
steps:
|
||||
- uses: actions/github-script@v5
|
||||
with:
|
||||
script: |
|
||||
github.rest.issues.addLabels({
|
||||
issue_number: context.issue.number,
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
labels: ['Help Wanted']
|
||||
})
|
||||
|
||||
move_needs_info_issues:
|
||||
name: X-Needs-Info issues to Need info column on triage board
|
||||
runs-on: ubuntu-latest
|
||||
@@ -65,13 +48,7 @@ jobs:
|
||||
# Skip in forks
|
||||
if: >
|
||||
github.repository == 'vector-im/element-android' &&
|
||||
contains(github.event.issue.labels.*.name, 'X-Needs-Design') &&
|
||||
(contains(github.event.issue.labels.*.name, 'S-Critical') &&
|
||||
(contains(github.event.issue.labels.*.name, 'O-Frequent') ||
|
||||
contains(github.event.issue.labels.*.name, 'O-Occasional')) ||
|
||||
(contains(github.event.issue.labels.*.name, 'S-Major') &&
|
||||
contains(github.event.issue.labels.*.name, 'O-Frequent')) ||
|
||||
contains(github.event.issue.labels.*.name, 'A11y'))
|
||||
contains(github.event.issue.labels.*.name, 'X-Needs-Design')
|
||||
steps:
|
||||
- uses: octokit/graphql-action@v2.x
|
||||
id: add_to_project
|
||||
@@ -79,8 +56,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
@@ -103,8 +80,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
@@ -129,8 +106,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
@@ -154,8 +131,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
@@ -178,8 +155,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
@@ -203,8 +180,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
@@ -228,8 +205,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
@@ -258,8 +235,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
@@ -269,105 +246,3 @@ jobs:
|
||||
env:
|
||||
PROJECT_ID: "PN_kwDOAM0swc4ABTXY"
|
||||
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
||||
|
||||
ps_features1:
|
||||
name: Add labelled issues to PS features team 1
|
||||
runs-on: ubuntu-latest
|
||||
if: >
|
||||
contains(github.event.issue.labels.*.name, 'A-Polls') ||
|
||||
contains(github.event.issue.labels.*.name, 'A-Location-Sharing') ||
|
||||
(contains(github.event.issue.labels.*.name, 'A-Voice-Messages') &&
|
||||
!contains(github.event.issue.labels.*.name, 'A-Broadcast')) ||
|
||||
(contains(github.event.issue.labels.*.name, 'A-Session-Mgmt') &&
|
||||
contains(github.event.issue.labels.*.name, 'A-User-Settings'))
|
||||
steps:
|
||||
- uses: octokit/graphql-action@v2.x
|
||||
id: add_to_project
|
||||
with:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
projectid: ${{ env.PROJECT_ID }}
|
||||
contentid: ${{ github.event.issue.node_id }}
|
||||
env:
|
||||
PROJECT_ID: "PVT_kwDOAM0swc4AHJKF"
|
||||
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
||||
|
||||
ps_features2:
|
||||
name: Add labelled issues to PS features team 2
|
||||
runs-on: ubuntu-latest
|
||||
if: >
|
||||
contains(github.event.issue.labels.*.name, 'A-DM-Start') ||
|
||||
contains(github.event.issue.labels.*.name, 'A-Broadcast')
|
||||
steps:
|
||||
- uses: octokit/graphql-action@v2.x
|
||||
id: add_to_project
|
||||
with:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
projectid: ${{ env.PROJECT_ID }}
|
||||
contentid: ${{ github.event.issue.node_id }}
|
||||
env:
|
||||
PROJECT_ID: "PVT_kwDOAM0swc4AHJKd"
|
||||
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
||||
|
||||
ps_features3:
|
||||
name: Add labelled issues to PS features team 3
|
||||
runs-on: ubuntu-latest
|
||||
if: >
|
||||
contains(github.event.issue.labels.*.name, 'A-Rich-Text-Editor')
|
||||
steps:
|
||||
- uses: octokit/graphql-action@v2.x
|
||||
id: add_to_project
|
||||
with:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
projectid: ${{ env.PROJECT_ID }}
|
||||
contentid: ${{ github.event.issue.node_id }}
|
||||
env:
|
||||
PROJECT_ID: "PVT_kwDOAM0swc4AHJKW"
|
||||
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
||||
|
||||
voip:
|
||||
name: Add labelled issues to VoIP project board
|
||||
runs-on: ubuntu-latest
|
||||
if: >
|
||||
contains(github.event.issue.labels.*.name, 'Team: VoIP')
|
||||
steps:
|
||||
- uses: octokit/graphql-action@v2.x
|
||||
id: add_to_project
|
||||
with:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!,$contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
projectid: ${{ env.PROJECT_ID }}
|
||||
contentid: ${{ github.event.issue.node_id }}
|
||||
env:
|
||||
PROJECT_ID: "PVT_kwDOAM0swc4ABMIk"
|
||||
GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
||||
|
@@ -60,8 +60,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!, $contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
@@ -129,8 +129,8 @@ jobs:
|
||||
headers: '{"GraphQL-Features": "projects_next_graphql"}'
|
||||
query: |
|
||||
mutation add_to_project($projectid:ID!, $contentid:ID!) {
|
||||
addProjectV2ItemById(input: {projectId: $projectid contentId: $contentid}) {
|
||||
item {
|
||||
addProjectNextItem(input:{projectId:$projectid contentId:$contentid}) {
|
||||
projectNextItem {
|
||||
id
|
||||
}
|
||||
}
|
||||
|
4
.github/workflows/triage-priority-bugs.yml
vendored
4
.github/workflows/triage-priority-bugs.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
contains(github.event.issue.labels.*.name, 'A11y') &&
|
||||
contains(github.event.issue.labels.*.name, 'O-Frequent'))
|
||||
steps:
|
||||
- uses: alex-page/github-project-automation-plus@1f8873e97e3c8f58161a323b7c568c1f623a1c4d
|
||||
- uses: alex-page/github-project-automation-plus@bb266ff4dde9242060e2d5418e120a133586d488
|
||||
with:
|
||||
project: Android App Team
|
||||
column: Important Issues & Topics (P1)
|
||||
@@ -50,7 +50,7 @@ jobs:
|
||||
contains(github.event.issue.labels.*.name, 'A11y') &&
|
||||
contains(github.event.issue.labels.*.name, 'O-Frequent')))
|
||||
steps:
|
||||
- uses: alex-page/github-project-automation-plus@1f8873e97e3c8f58161a323b7c568c1f623a1c4d
|
||||
- uses: alex-page/github-project-automation-plus@bb266ff4dde9242060e2d5418e120a133586d488
|
||||
with:
|
||||
project: Crypto Team
|
||||
column: Ready
|
||||
|
2
.github/workflows/triage-unlabelled.yml
vendored
2
.github/workflows/triage-unlabelled.yml
vendored
@@ -28,7 +28,7 @@ jobs:
|
||||
echo "ALREADY_IN_BOARD=false" >> $GITHUB_ENV
|
||||
fi
|
||||
- name: Move issue
|
||||
uses: alex-page/github-project-automation-plus@1f8873e97e3c8f58161a323b7c568c1f623a1c4d
|
||||
uses: alex-page/github-project-automation-plus@bb266ff4dde9242060e2d5418e120a133586d488
|
||||
if: ${{ env.ALREADY_IN_BOARD == 'true' }}
|
||||
with:
|
||||
project: Issue triage
|
||||
|
195
CHANGES.md
195
CHANGES.md
@@ -1,198 +1,3 @@
|
||||
Changes in Element v1.5.8 (2022-11-17)
|
||||
======================================
|
||||
|
||||
Features ✨
|
||||
----------
|
||||
- [Session manager] Multi-session signout ([#7418](https://github.com/vector-im/element-android/issues/7418))
|
||||
- Rich text editor: add full screen mode. ([#7436](https://github.com/vector-im/element-android/issues/7436))
|
||||
- [Rich text editor] Add plain text mode ([#7452](https://github.com/vector-im/element-android/issues/7452))
|
||||
- Move TypingView inside the timeline items. ([#7496](https://github.com/vector-im/element-android/issues/7496))
|
||||
- Push notifications toggle: align implementation for current session ([#7512](https://github.com/vector-im/element-android/issues/7512))
|
||||
- Voice messages - Persist the playback position across different screens ([#7582](https://github.com/vector-im/element-android/issues/7582))
|
||||
|
||||
Bugfixes 🐛
|
||||
----------
|
||||
- [Voice Broadcast] Do not display the recorder view for a live broadcast started from another session ([#7431](https://github.com/vector-im/element-android/issues/7431))
|
||||
- [Session manager] Hide push notification toggle when there is no server support ([#7457](https://github.com/vector-im/element-android/issues/7457))
|
||||
- Fix rich text editor textfield not growing to fill parent on full screen. ([#7491](https://github.com/vector-im/element-android/issues/7491))
|
||||
- Fix duplicated mention pills in some cases ([#7501](https://github.com/vector-im/element-android/issues/7501))
|
||||
- Voice Broadcast - Fix duplicated voice messages in the internal playlist ([#7502](https://github.com/vector-im/element-android/issues/7502))
|
||||
- When joining a room, the message composer is displayed once the room is loaded. ([#7509](https://github.com/vector-im/element-android/issues/7509))
|
||||
- Voice Broadcast - Fix error on voice messages in unencrypted rooms ([#7519](https://github.com/vector-im/element-android/issues/7519))
|
||||
- Fix description of verified sessions ([#7533](https://github.com/vector-im/element-android/issues/7533))
|
||||
|
||||
In development 🚧
|
||||
----------------
|
||||
- [Voice Broadcast] Improve timeline items factory and handle bad recording state display ([#7448](https://github.com/vector-im/element-android/issues/7448))
|
||||
- [Voice Broadcast] Stop recording when opening the room after an app restart ([#7450](https://github.com/vector-im/element-android/issues/7450))
|
||||
- [Voice Broadcast] Improve playlist fetching and player codebase ([#7478](https://github.com/vector-im/element-android/issues/7478))
|
||||
- [Voice Broadcast] Display an error dialog if the user fails to start a voice broadcast ([#7485](https://github.com/vector-im/element-android/issues/7485))
|
||||
- [Voice Broadcast] Add seekbar in listening tile ([#7496](https://github.com/vector-im/element-android/issues/7496))
|
||||
- [Voice Broadcast] Improve the live indicator icon rendering in the timeline ([#7579](https://github.com/vector-im/element-android/issues/7579))
|
||||
- Voice Broadcast - Add maximum length ([#7588](https://github.com/vector-im/element-android/issues/7588))
|
||||
|
||||
SDK API changes ⚠️
|
||||
------------------
|
||||
- [Metrics] Add `SpannableMetricPlugin` to support spans within transactions. ([#7514](https://github.com/vector-im/element-android/issues/7514))
|
||||
- Fix a bug that caused messages with no formatted text to be quoted as "null". ([#7530](https://github.com/vector-im/element-android/issues/7530))
|
||||
- If message content has no `formattedBody`, default to `body` when editing. ([#7574](https://github.com/vector-im/element-android/issues/7574))
|
||||
|
||||
|
||||
Changes in Element v1.5.7 (2022-11-07)
|
||||
======================================
|
||||
|
||||
Bugfixes 🐛
|
||||
----------
|
||||
- Fix regression when syncing with homeserver < 1.4. ([#7534](https://github.com/vector-im/element-android/issues/7534))
|
||||
|
||||
Changes in Element v1.5.6 (2022-11-02)
|
||||
======================================
|
||||
|
||||
Features ✨
|
||||
----------
|
||||
- Add new UI for selecting an attachment ([#7429](https://github.com/vector-im/element-android/issues/7429))
|
||||
- Multi selection in sessions list ([#7396](https://github.com/vector-im/element-android/issues/7396))
|
||||
|
||||
Bugfixes 🐛
|
||||
----------
|
||||
- New line and Enter hardware key presses deleting existing text in some keyboards. ([#7357](https://github.com/vector-im/element-android/issues/7357))
|
||||
- Fix share actions using share dialog. ([#7400](https://github.com/vector-im/element-android/issues/7400))
|
||||
- Fix crash by disabling Flipper on Android API 22 and below - only affects debug version of the application. ([#7428](https://github.com/vector-im/element-android/issues/7428))
|
||||
|
||||
In development 🚧
|
||||
----------------
|
||||
- [Voice Broadcast] Live listening support ([#7419](https://github.com/vector-im/element-android/issues/7419))
|
||||
- [Voice Broadcast] Improve rendering in the timeline ([#7421](https://github.com/vector-im/element-android/issues/7421))
|
||||
- Add logic for sign in with QR code ([#7369](https://github.com/vector-im/element-android/issues/7369))
|
||||
|
||||
SDK API changes ⚠️
|
||||
------------------
|
||||
- Add MetricPlugin interface to implement metrics in SDK clients. ([#7438](https://github.com/vector-im/element-android/issues/7438))
|
||||
|
||||
Other changes
|
||||
-------------
|
||||
- Upgrade Jitsi SDK to 6.2.2 and WebRtc to 1.106.1-jitsi-12039821. ([#6195](https://github.com/vector-im/element-android/issues/6195))
|
||||
- Gets thread notifications from sync response ([#7424](https://github.com/vector-im/element-android/issues/7424))
|
||||
- Replace org.apache.sanselan:sanselan by org.apache.commons:commons-imaging ([#7454](https://github.com/vector-im/element-android/issues/7454))
|
||||
|
||||
|
||||
Changes in Element v1.5.4 (2022-10-19)
|
||||
======================================
|
||||
|
||||
Features ✨
|
||||
----------
|
||||
- Add WYSIWYG editor, under a lab flag. ([#7288](https://github.com/vector-im/element-android/issues/7288))
|
||||
- New Device management, can be enabled in the labs settings.
|
||||
- Voice broadcast can be enabled in the labs settings (recording is possible only on Android 10 and up).
|
||||
|
||||
Bugfixes 🐛
|
||||
----------
|
||||
- Fix wrong mic button direction to cancel on RTL languages ([#5968](https://github.com/vector-im/element-android/issues/5968))
|
||||
- Handle properly when getUser returns null - prefer using getUserOrDefault ([#7372](https://github.com/vector-im/element-android/issues/7372))
|
||||
- [Device Management] Long session names not handled well ([#7310](https://github.com/vector-im/element-android/issues/7310))
|
||||
- Fix editing formatted messages with plain text editor ([#7359](https://github.com/vector-im/element-android/issues/7359))
|
||||
|
||||
In development 🚧
|
||||
----------------
|
||||
- [Device Management] Save "matrix_client_information" events on login/registration ([#7257](https://github.com/vector-im/element-android/issues/7257))
|
||||
- [Device management] Add lab flag for the feature ([#7336](https://github.com/vector-im/element-android/issues/7336))
|
||||
- [Device management] Add lab flag for matrix client info account data event ([#7344](https://github.com/vector-im/element-android/issues/7344))
|
||||
- [Device Management] Redirect to the new screen everywhere when lab flag is on ([#7374](https://github.com/vector-im/element-android/issues/7374))
|
||||
- [Device Management] Show correct device type icons ([#7277](https://github.com/vector-im/element-android/issues/7277))
|
||||
- [Device Management] Render extended device info ([#7294](https://github.com/vector-im/element-android/issues/7294))
|
||||
- [Device management] Improve the parsing for OS of Desktop/Web sessions ([#7321](https://github.com/vector-im/element-android/issues/7321))
|
||||
- [Device management] Hide the IP address and last activity date on current session ([#7324](https://github.com/vector-im/element-android/issues/7324))
|
||||
- [Device management] Update the unknown verification status icon ([#7327](https://github.com/vector-im/element-android/issues/7327))
|
||||
- [Voice Broadcast] Add the "io.element.voice_broadcast_info" state event with a minimalist timeline widget ([#7273](https://github.com/vector-im/element-android/issues/7273))
|
||||
- [Voice Broadcast] Aggregate state events in the timeline ([#7283](https://github.com/vector-im/element-android/issues/7283))
|
||||
- [Voice Broadcast] Record and send non aggregated voice messages to the room ([#7363](https://github.com/vector-im/element-android/issues/7363))
|
||||
- [Voice Broadcast] Start listening to a voice broadcast ([#7387](https://github.com/vector-im/element-android/issues/7387))
|
||||
- [Voice Broadcast] Enable the feature (behind a lab flag and only for Android 10 and up) ([#7393](https://github.com/vector-im/element-android/issues/7393))
|
||||
- [Voice Broadcast] Add additional data in events ([#7397](https://github.com/vector-im/element-android/issues/7397))
|
||||
- Implements MSC3881: Parses `enabled` and `device_id` fields from updated Pusher API ([#7217](https://github.com/vector-im/element-android/issues/7217))
|
||||
- Adds pusher toggle setting to device manager v2 ([#7261](https://github.com/vector-im/element-android/issues/7261))
|
||||
- Implement QR Code Login UI ([#7338](https://github.com/vector-im/element-android/issues/7338))
|
||||
- Implements client-side of local notification settings event ([#7300](https://github.com/vector-im/element-android/issues/7300))
|
||||
- Links "Enable Notifications for this session" setting to enabled value in pusher ([#7281](https://github.com/vector-im/element-android/issues/7281))
|
||||
|
||||
SDK API changes ⚠️
|
||||
------------------
|
||||
- Stop using `original_event` field from `/relations` endpoint ([#7282](https://github.com/vector-im/element-android/issues/7282))
|
||||
- Add `formattedText` or similar optional parameters in several methods:
|
||||
* RelationService:
|
||||
* editTextMessage
|
||||
* editReply
|
||||
* replyToMessage
|
||||
* SendService:
|
||||
* sendQuotedTextMessage
|
||||
This allows us to send any HTML formatted text message without needing to rely on automatic Markdown > HTML translation. All these new parameters have a `null` value by default, so previous calls to these API methods remain compatible. ([#7288](https://github.com/vector-im/element-android/issues/7288))
|
||||
- Add support for `m.login.token` auth during QR code based sign in ([#7358](https://github.com/vector-im/element-android/issues/7358))
|
||||
- Allow getting the formatted or plain text body of a message for the fun `TimelineEvent.getTextEditableContent()`. ([#7359](https://github.com/vector-im/element-android/issues/7359))
|
||||
|
||||
Other changes
|
||||
-------------
|
||||
- Refactor TimelineFragment, split it into MessageComposerFragment and VoiceRecorderFragment. ([#7285](https://github.com/vector-im/element-android/issues/7285))
|
||||
- Dependency to arrow has been removed. Please use `org.matrix.android.sdk.api.util.Optional` instead. ([#7335](https://github.com/vector-im/element-android/issues/7335))
|
||||
- Update WYSIWYG editor designs. ([#7354](https://github.com/vector-im/element-android/issues/7354))
|
||||
- Update WYSIWYG library to v0.2.1. ([#7384](https://github.com/vector-im/element-android/issues/7384))
|
||||
|
||||
|
||||
Changes in Element v1.5.2 (2022-10-05)
|
||||
======================================
|
||||
|
||||
Features ✨
|
||||
----------
|
||||
- New App Layout is now enabled by default! Go to the Settings > Labs to toggle this ([#7166](https://github.com/vector-im/element-android/issues/7166))
|
||||
- Render inline images in the timeline ([#351](https://github.com/vector-im/element-android/issues/351))
|
||||
- Add privacy setting to disable personalized learning by the keyboard ([#6633](https://github.com/vector-im/element-android/issues/6633))
|
||||
|
||||
Bugfixes 🐛
|
||||
----------
|
||||
- Disable emoji keyboard not applies in reply ([#5029](https://github.com/vector-im/element-android/issues/5029))
|
||||
- Fix animated images not autoplaying sometimes if only a thumbnail was fetched from the server ([#6215](https://github.com/vector-im/element-android/issues/6215))
|
||||
- Add Warning shield when a user previously verified rotated their cross signing keys ([#6702](https://github.com/vector-im/element-android/issues/6702))
|
||||
- Can't verify user when option to send keys to verified devices only is selected ([#6723](https://github.com/vector-im/element-android/issues/6723))
|
||||
- Add option to only send to verified devices per room (web parity) ([#6725](https://github.com/vector-im/element-android/issues/6725))
|
||||
- Delete pin code key and the key used for biometrics authentication on logout ([#6906](https://github.com/vector-im/element-android/issues/6906))
|
||||
- Fix crash on previewing images to upload on Android Pie. ([#7184](https://github.com/vector-im/element-android/issues/7184))
|
||||
- Fix app restarts in loop on Android 13 on the first run of the app. ([#7224](https://github.com/vector-im/element-android/issues/7224))
|
||||
|
||||
In development 🚧
|
||||
----------------
|
||||
- [Device Management] Learn more bottom sheets ([#7100](https://github.com/vector-im/element-android/issues/7100))
|
||||
- [Device management] Verify current session ([#7114](https://github.com/vector-im/element-android/issues/7114))
|
||||
- [Device management] Verify another session ([#7143](https://github.com/vector-im/element-android/issues/7143))
|
||||
- [Device management] Rename a session ([#7158](https://github.com/vector-im/element-android/issues/7158))
|
||||
- [Device Manager] Unverified and inactive sessions list ([#7170](https://github.com/vector-im/element-android/issues/7170))
|
||||
- [Device management] Sign out a session ([#7190](https://github.com/vector-im/element-android/issues/7190))
|
||||
- [Device Manager] Parse user agents ([#7247](https://github.com/vector-im/element-android/issues/7247))
|
||||
- [Voice Broadcast] Add a feature flag with the composer action ([#7258](https://github.com/vector-im/element-android/issues/7258))
|
||||
|
||||
Improved Documentation 📚
|
||||
------------------------
|
||||
- Draft onboarding documentation of the project at `./docs/_developer_onboarding.md` ([#7126](https://github.com/vector-im/element-android/issues/7126))
|
||||
|
||||
SDK API changes ⚠️
|
||||
------------------
|
||||
- Allow the sync timeout to be configured (mainly useful for testing) ([#7198](https://github.com/vector-im/element-android/issues/7198))
|
||||
- Ports SDK instrumentation tests to use suspending functions instead of countdown latches ([#7207](https://github.com/vector-im/element-android/issues/7207))
|
||||
- [Device Manager] Extend user agent to include device information ([#7209](https://github.com/vector-im/element-android/issues/7209))
|
||||
|
||||
Other changes
|
||||
-------------
|
||||
- Add support for `/tableflip` command ([#12](https://github.com/vector-im/element-android/issues/12))
|
||||
- Decreases the size of rounded corners and increases the maximum width of message bubbles to help avoid unnecessary unused space on screen ([#5712](https://github.com/vector-im/element-android/issues/5712))
|
||||
- Adds screenshot testing tooling ([#5798](https://github.com/vector-im/element-android/issues/5798))
|
||||
- [AppLayout]: added tracking of new analytics events ([#6508](https://github.com/vector-im/element-android/issues/6508))
|
||||
- Target API 12 and compile with Android SDK 32. ([#6929](https://github.com/vector-im/element-android/issues/6929))
|
||||
- Add basic integration of Sentry to capture errors and crashes if user has given consent. ([#7076](https://github.com/vector-im/element-android/issues/7076))
|
||||
- Add support to `/devtools` command. ([#7126](https://github.com/vector-im/element-android/issues/7126))
|
||||
- Fix lint warning, and cleanup the code ([#7159](https://github.com/vector-im/element-android/issues/7159))
|
||||
- Mutualize the pending auth handling ([#7193](https://github.com/vector-im/element-android/issues/7193))
|
||||
- CI: Prevent modification of translations by developer. ([#7211](https://github.com/vector-im/element-android/issues/7211))
|
||||
- Fix typo in strings.xml and make sure this is American English. ([#7287](https://github.com/vector-im/element-android/issues/7287))
|
||||
|
||||
|
||||
Changes in Element v1.5.1 (2022-09-28)
|
||||
======================================
|
||||
|
||||
|
57
build.gradle
57
build.gradle
@@ -24,16 +24,16 @@ buildscript {
|
||||
classpath libs.gradle.gradlePlugin
|
||||
classpath libs.gradle.kotlinPlugin
|
||||
classpath libs.gradle.hiltPlugin
|
||||
classpath 'com.google.firebase:firebase-appdistribution-gradle:3.1.1'
|
||||
classpath 'com.google.firebase:firebase-appdistribution-gradle:3.0.3'
|
||||
classpath 'com.google.gms:google-services:4.3.14'
|
||||
classpath 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:3.5.0.2730'
|
||||
classpath 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:3.4.0.2513'
|
||||
classpath 'com.google.android.gms:oss-licenses-plugin:0.10.5'
|
||||
classpath "com.likethesalad.android:stem-plugin:2.2.3"
|
||||
classpath 'org.owasp:dependency-check-gradle:7.3.0'
|
||||
classpath "org.jetbrains.dokka:dokka-gradle-plugin:1.7.20"
|
||||
classpath "com.likethesalad.android:stem-plugin:2.2.2"
|
||||
classpath 'org.owasp:dependency-check-gradle:7.2.1'
|
||||
classpath "org.jetbrains.dokka:dokka-gradle-plugin:1.7.10"
|
||||
classpath "org.jetbrains.kotlinx:kotlinx-knit:0.4.0"
|
||||
classpath 'com.jakewharton:butterknife-gradle-plugin:10.2.3'
|
||||
classpath libs.squareup.paparazziPlugin
|
||||
classpath 'app.cash.paparazzi:paparazzi-gradle-plugin:1.0.0'
|
||||
// NOTE: Do not place your application dependencies here; they belong
|
||||
// in the individual module build.gradle files
|
||||
}
|
||||
@@ -44,11 +44,9 @@ plugins {
|
||||
id "org.jlleitschuh.gradle.ktlint" version "11.0.0"
|
||||
// Detekt
|
||||
id "io.gitlab.arturbosch.detekt" version "1.21.0"
|
||||
// Ksp
|
||||
id "com.google.devtools.ksp" version "1.7.21-1.0.8"
|
||||
|
||||
// Dependency Analysis
|
||||
id 'com.autonomousapps.dependency-analysis' version "1.16.0"
|
||||
id 'com.autonomousapps.dependency-analysis' version "1.13.1"
|
||||
// Gradle doctor
|
||||
id "com.osacky.doctor" version "0.8.1"
|
||||
}
|
||||
@@ -96,9 +94,9 @@ allprojects {
|
||||
}
|
||||
// Jitsi repo
|
||||
maven {
|
||||
url "https://github.com/vector-im/jitsi_libre_maven/raw/main/android-sdk-6.2.2"
|
||||
url "https://github.com/vector-im/jitsi_libre_maven/raw/main/android-sdk-5.0.2"
|
||||
// Note: to test Jitsi release you can use a local file like this:
|
||||
// url "file:///Users/bmarty/workspaces/jitsi_libre_maven/android-sdk-6.2.2"
|
||||
// url "file:///Users/bmarty/workspaces/jitsi_libre_maven/android-sdk-3.10.0"
|
||||
content {
|
||||
groups.jitsi.regex.each { includeGroupByRegex it }
|
||||
groups.jitsi.group.each { includeGroup it }
|
||||
@@ -148,9 +146,6 @@ allprojects {
|
||||
// To have XML report for Danger
|
||||
reporter(org.jlleitschuh.gradle.ktlint.reporter.ReporterType.CHECKSTYLE)
|
||||
}
|
||||
filter {
|
||||
exclude { element -> element.file.path.contains("$buildDir/generated/") }
|
||||
}
|
||||
disabledRules = [
|
||||
// TODO Re-enable these 4 rules after reformatting project
|
||||
"indent",
|
||||
@@ -322,7 +317,7 @@ ext.initScreenshotTests = { project ->
|
||||
if (hasScreenshots) {
|
||||
project.apply plugin: 'app.cash.paparazzi'
|
||||
}
|
||||
project.dependencies { testCompileOnly libs.squareup.paparazzi }
|
||||
project.dependencies { testCompileOnly "app.cash.paparazzi:paparazzi:1.0.0" }
|
||||
project.android.testOptions.unitTests.all {
|
||||
def screenshotTestCapture = "**/*ScreenshotTest*"
|
||||
if (hasScreenshots) {
|
||||
@@ -332,35 +327,3 @@ ext.initScreenshotTests = { project ->
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Workaround to have KSP generated Kotlin code available in the IDE (for code completion)
|
||||
// Ref: https://github.com/airbnb/epoxy/releases/tag/5.0.0beta02
|
||||
subprojects { project ->
|
||||
afterEvaluate {
|
||||
if (project.hasProperty("android")) {
|
||||
android {
|
||||
if (it instanceof com.android.build.gradle.LibraryExtension) {
|
||||
libraryVariants.all { variant ->
|
||||
def outputFolder = new File("build/generated/ksp/${variant.name}/kotlin")
|
||||
if (outputFolder.exists()) {
|
||||
variant.addJavaSourceFoldersToModel(outputFolder)
|
||||
android.sourceSets.getAt(variant.name).java {
|
||||
srcDir(outputFolder)
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (it instanceof com.android.build.gradle.AppExtension) {
|
||||
applicationVariants.all { variant ->
|
||||
def outputFolder = new File("build/generated/ksp/${variant.name}/kotlin")
|
||||
if (outputFolder.exists()) {
|
||||
variant.addJavaSourceFoldersToModel(outputFolder)
|
||||
android.sourceSets.getAt(variant.name).java {
|
||||
srcDir(outputFolder)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
1
changelog.d/12.misc
Normal file
1
changelog.d/12.misc
Normal file
@@ -0,0 +1 @@
|
||||
Add support for `/tableflip` command
|
1
changelog.d/351.feature
Normal file
1
changelog.d/351.feature
Normal file
@@ -0,0 +1 @@
|
||||
Render inline images in the timeline
|
1
changelog.d/5029.bugfix
Normal file
1
changelog.d/5029.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Disable emoji keyboard not applies in reply
|
@@ -1 +0,0 @@
|
||||
Fix italic text is truncated when bubble mode and markdown is enabled
|
1
changelog.d/5712.misc
Normal file
1
changelog.d/5712.misc
Normal file
@@ -0,0 +1 @@
|
||||
Decreases the size of rounded corners and increases the maximum width of message bubbles to help avoid unnecessary unused space on screen
|
1
changelog.d/5798.misc
Normal file
1
changelog.d/5798.misc
Normal file
@@ -0,0 +1 @@
|
||||
Adds screenshot testing tooling
|
1
changelog.d/6215.bugfix
Normal file
1
changelog.d/6215.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix animated images not autoplaying sometimes if only a thumbnail was fetched from the server
|
1
changelog.d/6508.misc
Normal file
1
changelog.d/6508.misc
Normal file
@@ -0,0 +1 @@
|
||||
[AppLayout]: added tracking of new analytics events
|
1
changelog.d/6633.feature
Normal file
1
changelog.d/6633.feature
Normal file
@@ -0,0 +1 @@
|
||||
Add privacy setting to disable personalized learning by the keyboard
|
1
changelog.d/6702.bugfix
Normal file
1
changelog.d/6702.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Add Warning shield when a user previously verified rotated their cross signing keys
|
1
changelog.d/6906.bugfix
Normal file
1
changelog.d/6906.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Delete pin code key and the key used for biometrics authentication on logout
|
1
changelog.d/6929.misc
Normal file
1
changelog.d/6929.misc
Normal file
@@ -0,0 +1 @@
|
||||
Target API 12 and compile with Android SDK 32.
|
1
changelog.d/7100.wip
Normal file
1
changelog.d/7100.wip
Normal file
@@ -0,0 +1 @@
|
||||
[Device Management] Learn more bottom sheets
|
1
changelog.d/7114.wip
Normal file
1
changelog.d/7114.wip
Normal file
@@ -0,0 +1 @@
|
||||
[Device management] Verify current session
|
1
changelog.d/7126.doc
Normal file
1
changelog.d/7126.doc
Normal file
@@ -0,0 +1 @@
|
||||
Draft onboarding documentation of the project at `./docs/_developer_onboarding.md`
|
1
changelog.d/7126.misc
Normal file
1
changelog.d/7126.misc
Normal file
@@ -0,0 +1 @@
|
||||
Add support to `/devtools` command.
|
1
changelog.d/7143.wip
Normal file
1
changelog.d/7143.wip
Normal file
@@ -0,0 +1 @@
|
||||
[Device management] Verify another session
|
1
changelog.d/7158.wip
Normal file
1
changelog.d/7158.wip
Normal file
@@ -0,0 +1 @@
|
||||
[Device management] Rename a session
|
1
changelog.d/7159.misc
Normal file
1
changelog.d/7159.misc
Normal file
@@ -0,0 +1 @@
|
||||
Fix lint warning, and cleanup the code
|
1
changelog.d/7166.misc
Normal file
1
changelog.d/7166.misc
Normal file
@@ -0,0 +1 @@
|
||||
New App Layout is now enabled by default! Go to the Settings > Labs to toggle this
|
1
changelog.d/7170.wip
Normal file
1
changelog.d/7170.wip
Normal file
@@ -0,0 +1 @@
|
||||
[Device Manager] Unverified and inactive sessions list
|
1
changelog.d/7184.bugfix
Normal file
1
changelog.d/7184.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix crash on previewing images to upload on Android Pie.
|
1
changelog.d/7190.wip
Normal file
1
changelog.d/7190.wip
Normal file
@@ -0,0 +1 @@
|
||||
[Device management] Sign out a session
|
1
changelog.d/7193.misc
Normal file
1
changelog.d/7193.misc
Normal file
@@ -0,0 +1 @@
|
||||
Mutualize the pending auth handling
|
1
changelog.d/7198.sdk
Normal file
1
changelog.d/7198.sdk
Normal file
@@ -0,0 +1 @@
|
||||
Allow the sync timeout to be configured (mainly useful for testing)
|
1
changelog.d/7207.sdk
Normal file
1
changelog.d/7207.sdk
Normal file
@@ -0,0 +1 @@
|
||||
Ports SDK instrumentation tests to use suspending functions instead of countdown latches
|
1
changelog.d/7209.sdk
Normal file
1
changelog.d/7209.sdk
Normal file
@@ -0,0 +1 @@
|
||||
[Device Manager] Extend user agent to include device information
|
1
changelog.d/7211.misc
Normal file
1
changelog.d/7211.misc
Normal file
@@ -0,0 +1 @@
|
||||
CI: Prevent modification of translations by developer.
|
1
changelog.d/7224.bugfix
Normal file
1
changelog.d/7224.bugfix
Normal file
@@ -0,0 +1 @@
|
||||
Fix app restarts in loop on Android 13 on the first run of the app.
|
1
changelog.d/7247.wip
Normal file
1
changelog.d/7247.wip
Normal file
@@ -0,0 +1 @@
|
||||
[Device Manager] Parse user agents
|
1
changelog.d/7258.wip
Normal file
1
changelog.d/7258.wip
Normal file
@@ -0,0 +1 @@
|
||||
[Voice Broadcast] Add a feature flag with the composer action
|
@@ -1 +0,0 @@
|
||||
[Device Manager] Toggle IP address visibility
|
@@ -1 +0,0 @@
|
||||
Missing translations on "replyTo" messages
|
@@ -1 +0,0 @@
|
||||
New implementation of the full screen mode for the Rich Text Editor.
|
@@ -1 +0,0 @@
|
||||
ANR on session start when sending client info is enabled
|
@@ -1 +0,0 @@
|
||||
Make the plain text mode layout of the RTE more compact.
|
@@ -1,45 +1,47 @@
|
||||
ext.versions = [
|
||||
|
||||
'minSdk' : 21,
|
||||
'compileSdk' : 33,
|
||||
'targetSdk' : 33,
|
||||
'compileSdk' : 32,
|
||||
'targetSdk' : 32,
|
||||
'sourceCompat' : JavaVersion.VERSION_11,
|
||||
'targetCompat' : JavaVersion.VERSION_11,
|
||||
]
|
||||
|
||||
def gradle = "7.3.1"
|
||||
def gradle = "7.2.2"
|
||||
// Ref: https://kotlinlang.org/releases.html
|
||||
def kotlin = "1.7.21"
|
||||
def kotlin = "1.7.20"
|
||||
def kotlinCoroutines = "1.6.4"
|
||||
def dagger = "2.44.2"
|
||||
def appDistribution = "16.0.0-beta05"
|
||||
def dagger = "2.44"
|
||||
def appDistribution = "16.0.0-beta04"
|
||||
def retrofit = "2.9.0"
|
||||
def arrow = "0.8.2"
|
||||
def markwon = "4.6.2"
|
||||
def moshi = "1.14.0"
|
||||
def lifecycle = "2.5.1"
|
||||
def flowBinding = "1.2.0"
|
||||
def flipper = "0.174.0"
|
||||
def epoxy = "5.0.0"
|
||||
def mavericks = "3.0.1"
|
||||
def glide = "4.14.2"
|
||||
def flipper = "0.164.0"
|
||||
def epoxy = "4.6.2"
|
||||
def mavericks = "2.7.0"
|
||||
def glide = "4.14.1"
|
||||
def bigImageViewer = "1.8.1"
|
||||
def jjwt = "0.11.5"
|
||||
// Temporary version to unblock #6929. Once 0.16.0 is released we should use it, and revert
|
||||
// the whole commit which set version 0.16.0-SNAPSHOT
|
||||
def vanniktechEmoji = "0.16.0-SNAPSHOT"
|
||||
def sentry = "6.7.0"
|
||||
def fragment = "1.5.4"
|
||||
|
||||
def fragment = "1.5.3"
|
||||
|
||||
// Testing
|
||||
def mockk = "1.12.3" // We need to use 1.12.3 to have mocking in androidTest until a new version is released: https://github.com/mockk/mockk/issues/819
|
||||
def espresso = "3.4.0"
|
||||
def androidxTest = "1.4.0"
|
||||
def androidxOrchestrator = "1.4.2"
|
||||
def paparazzi = "1.1.0"
|
||||
|
||||
def androidxOrchestrator = "1.4.1"
|
||||
ext.libs = [
|
||||
gradle : [
|
||||
'gradlePlugin' : "com.android.tools.build:gradle:$gradle",
|
||||
'kotlinPlugin' : "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin",
|
||||
'hiltPlugin' : "com.google.dagger:hilt-android-gradle-plugin:$dagger"
|
||||
|
||||
],
|
||||
jetbrains : [
|
||||
'coroutinesCore' : "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlinCoroutines",
|
||||
@@ -47,12 +49,12 @@ ext.libs = [
|
||||
'coroutinesTest' : "org.jetbrains.kotlinx:kotlinx-coroutines-test:$kotlinCoroutines"
|
||||
],
|
||||
androidx : [
|
||||
'activity' : "androidx.activity:activity-ktx:1.6.1",
|
||||
'activity' : "androidx.activity:activity:1.5.1",
|
||||
'appCompat' : "androidx.appcompat:appcompat:1.5.1",
|
||||
'biometric' : "androidx.biometric:biometric:1.1.0",
|
||||
'core' : "androidx.core:core-ktx:1.9.0",
|
||||
'core' : "androidx.core:core-ktx:1.8.0",
|
||||
'recyclerview' : "androidx.recyclerview:recyclerview:1.2.1",
|
||||
'exifinterface' : "androidx.exifinterface:exifinterface:1.3.5",
|
||||
'exifinterface' : "androidx.exifinterface:exifinterface:1.3.3",
|
||||
'fragmentKtx' : "androidx.fragment:fragment-ktx:$fragment",
|
||||
'fragmentTesting' : "androidx.fragment:fragment-testing:$fragment",
|
||||
'constraintLayout' : "androidx.constraintlayout:constraintlayout:2.1.4",
|
||||
@@ -79,11 +81,11 @@ ext.libs = [
|
||||
'transition' : "androidx.transition:transition:1.2.0",
|
||||
],
|
||||
google : [
|
||||
'material' : "com.google.android.material:material:1.7.0",
|
||||
'material' : "com.google.android.material:material:1.6.1",
|
||||
'appdistributionApi' : "com.google.firebase:firebase-appdistribution-api-ktx:$appDistribution",
|
||||
'appdistribution' : "com.google.firebase:firebase-appdistribution:$appDistribution",
|
||||
// Phone number https://github.com/google/libphonenumber
|
||||
'phonenumber' : "com.googlecode.libphonenumber:libphonenumber:8.13.0"
|
||||
'phonenumber' : "com.googlecode.libphonenumber:libphonenumber:8.12.56"
|
||||
],
|
||||
dagger : [
|
||||
'dagger' : "com.google.dagger:dagger:$dagger",
|
||||
@@ -98,21 +100,22 @@ ext.libs = [
|
||||
],
|
||||
element : [
|
||||
'opusencoder' : "io.element.android:opusencoder:1.1.0",
|
||||
'wysiwyg' : "io.element.android:wysiwyg:0.7.0.1"
|
||||
],
|
||||
squareup : [
|
||||
'moshi' : "com.squareup.moshi:moshi:$moshi",
|
||||
'moshiKt' : "com.squareup.moshi:moshi-kotlin:$moshi",
|
||||
'moshiKotlin' : "com.squareup.moshi:moshi-kotlin-codegen:$moshi",
|
||||
'moshiAdapters' : "com.squareup.moshi:moshi-adapters:$moshi",
|
||||
'paparazzi' : "app.cash.paparazzi:paparazzi:$paparazzi",
|
||||
'paparazziPlugin' : "app.cash.paparazzi:paparazzi-gradle-plugin:$paparazzi",
|
||||
'retrofit' : "com.squareup.retrofit2:retrofit:$retrofit",
|
||||
'retrofitMoshi' : "com.squareup.retrofit2:converter-moshi:$retrofit"
|
||||
],
|
||||
rx : [
|
||||
'rxKotlin' : "io.reactivex.rxjava2:rxkotlin:2.4.0"
|
||||
],
|
||||
arrow : [
|
||||
'core' : "io.arrow-kt:arrow-core:$arrow",
|
||||
'instances' : "io.arrow-kt:arrow-instances-core:$arrow"
|
||||
],
|
||||
markwon : [
|
||||
'core' : "io.noties.markwon:core:$markwon",
|
||||
'extLatex' : "io.noties.markwon:ext-latex:$markwon",
|
||||
@@ -160,13 +163,10 @@ ext.libs = [
|
||||
'emojiGoogle' : "com.vanniktech:emoji-google:$vanniktechEmoji"
|
||||
],
|
||||
apache : [
|
||||
'commonsImaging' : "org.apache.commons:commons-imaging:1.0-alpha3"
|
||||
],
|
||||
sentry: [
|
||||
'sentryAndroid' : "io.sentry:sentry-android:$sentry"
|
||||
'commonsImaging' : "org.apache.sanselan:sanselan:0.97-incubator"
|
||||
],
|
||||
tests : [
|
||||
'kluent' : "org.amshove.kluent:kluent-android:1.72",
|
||||
'kluent' : "org.amshove.kluent:kluent-android:1.68",
|
||||
'timberJunitRule' : "net.lachlanmckee:timber-junit-rule:1.0.1",
|
||||
'junit' : "junit:junit:4.13.2",
|
||||
]
|
||||
|
@@ -84,7 +84,6 @@ ext.groups = [
|
||||
'com.google',
|
||||
'com.google.android',
|
||||
'com.google.api.grpc',
|
||||
'com.google.auto',
|
||||
'com.google.auto.service',
|
||||
'com.google.auto.value',
|
||||
'com.google.code.findbugs',
|
||||
@@ -102,7 +101,6 @@ ext.groups = [
|
||||
'com.googlecode.json-simple',
|
||||
'com.googlecode.libphonenumber',
|
||||
'com.ibm.icu',
|
||||
'com.intellij',
|
||||
'com.jakewharton.android.repackaged',
|
||||
'com.jakewharton.timber',
|
||||
'com.kgurgul.flipper',
|
||||
@@ -134,6 +132,7 @@ ext.groups = [
|
||||
'commons-io',
|
||||
'commons-logging',
|
||||
'info.picocli',
|
||||
'io.arrow-kt',
|
||||
'io.element.android',
|
||||
'io.github.davidburstrom.contester',
|
||||
'io.github.detekt.sarif4k',
|
||||
@@ -147,10 +146,8 @@ ext.groups = [
|
||||
'io.netty',
|
||||
'io.noties.markwon',
|
||||
'io.opencensus',
|
||||
'io.perfmark',
|
||||
'io.reactivex.rxjava2',
|
||||
'io.realm',
|
||||
'io.sentry',
|
||||
'it.unimi.dsi',
|
||||
'jakarta.activation',
|
||||
'jakarta.xml.bind',
|
||||
@@ -176,8 +173,8 @@ ext.groups = [
|
||||
'org.apache.ant',
|
||||
'org.apache.commons',
|
||||
'org.apache.httpcomponents',
|
||||
'org.apache.sanselan',
|
||||
'org.bouncycastle',
|
||||
'org.ccil.cowan.tagsoup',
|
||||
'org.checkerframework',
|
||||
'org.codehaus',
|
||||
'org.codehaus.groovy',
|
||||
|
@@ -93,4 +93,4 @@ url "https://github.com/vector-im/jitsi_libre_maven/raw/master/android-sdk-3.10.
|
||||
|
||||
- Build the project and perform the sanity tests again.
|
||||
|
||||
- Create a PR for project Element Android and add a changelog file `<PR_NUMBER>.misc` to notify about the library upgrade.
|
||||
- Update the file `/CHANGES.md` to notify about the library upgrade, and create a regular PR for project Element Android.
|
||||
|
@@ -314,7 +314,7 @@ class ViewModelTest {
|
||||
private var initialState = ViewState.Empty
|
||||
|
||||
@get:Rule
|
||||
val mavericksTestRule = MavericksTestRule(testDispatcher = UnconfinedTestDispatcher())
|
||||
val mvrxTestRule = MvRxTestRule(testDispatcher = UnconfinedTestDispatcher())
|
||||
|
||||
@Test
|
||||
fun `when handling MyAction, then emits Loading and Content states`() {
|
||||
|
@@ -1 +0,0 @@
|
||||
Qrup mesajlaşma - şifrəli mesajlaşma, qrup söhbəti və video zənglər
|
@@ -1 +0,0 @@
|
||||
Element - Təhlükəsiz Mesajlaşma
|
@@ -1,3 +0,0 @@
|
||||
Nový vzhled aplikace lze povolit v Experimentálních funkcích. Prosíme, vyzkoušejte ho!
|
||||
Oprava problémů s chybějícími oznámeními a dlouhou přírůstkovou synchronizací.
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Hlavní změny v této verzi: Odložené přímé zprávy jsou ve výchozím nastavení povoleny.
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Hlavní změny v této verzi: Nové rozvržení aplikace je povoleno ve výchozím nastavení!
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Hlavní změny v této verzi: Nové funkce v Experimentálních funkcích: Rozšířený editor zpráv, nová správa zařízení, hlasové vysílání. Stále v aktivním vývoji!
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Hlavní změny v této verzi: nové uživatelské rozhraní pro výběr přílohy.
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Hlavní změny v této verzi: nové uživatelské rozhraní pro výběr přílohy.
|
||||
Úplný seznam změn: https://github.com/vector-im/element-android/releases
|
@@ -1,3 +0,0 @@
|
||||
Das neue App-Layout kann in den experimentellen Einstellungen aktiviert werden. Probier es gerne aus!
|
||||
Fehler bzgl. ausbleibender Benachrichtigungen und langwierigem inkrementellem Synchronisieren behoben.
|
||||
Vollständiges Änderungsprotokoll: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Die wichtigste Änderung in dieser Version: Verzögerte Direktnachrichten standardmäßig aktiviert!
|
||||
Vollständiges Änderungsprotokoll: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Die wichtigste Änderung in dieser Version: Neues App-Layout standardmäßig aktiviert!
|
||||
Vollständiges Änderungsprotokoll: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Die wichtigste Änderung in dieser Version: Neue Funktionen in den Labor-Einstellungen: Textverarbeitungs-Editor, neue Geräteverwaltung, Sprachübertragung. Noch in aktiver Entwicklung!
|
||||
Vollständiges Änderungsprotokoll: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Die wichtigste Änderung in dieser Version: Neues Anhangauswahl-UI.
|
||||
Vollständiges Änderungsprotokoll: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Die wichtigste Änderung in dieser Version: Neue Anhangauswahl-Oberfläche.
|
||||
Vollständiges Änderungsprotokoll: https://github.com/vector-im/element-android/releases
|
@@ -1 +1 @@
|
||||
Gruppen-Messenger – verschlüsselte Kommunikation, Gruppen und Videoanrufe
|
||||
Gruppen-Messenger - verschlüsselte Kommunikation, Gruppenchat und Videoanrufe
|
||||
|
@@ -1 +1 @@
|
||||
Element – Sicher kommunizieren
|
||||
Element - Sicherer Messenger
|
||||
|
@@ -1,2 +0,0 @@
|
||||
Main changes in this version: New app layout enabled by default!
|
||||
Full changelog: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Main changes in this version: New features under the labs settings: Rich text composer, new device management, voice broadcast. Still under active development!
|
||||
Full changelog: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Main changes in this version: new UI for selecting an attachment.
|
||||
Full changelog: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Main changes in this version: new UI for selecting an attachment.
|
||||
Full changelog: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Main changes in this version: bug fixes and improvements.
|
||||
Full changelog: https://github.com/vector-im/element-android/releases
|
@@ -1,3 +0,0 @@
|
||||
Testide alt saad sisse lülitada uue kujunduse - palun proovi seda!
|
||||
Parandasime teavitustega seotud vigu ning andmete sünkroniseerimist pika viitega.
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Põhilised muutused selles versioonis: ajastatud otsesõnumite saatmine on nüüd vaikimisi kasutusel.
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Põhilised muutused selles versioonis: rakenduse uus kujundus on nüüd vaikimisi kasutusel.
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Põhilised muutused selles versioonis: Uued võimalused katsete all: vormindatud teksti põhine toimeti, uus seadmehaldus, ringhäälingukõned (kõik on hetkel aktiivsel arendamisel).
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Põhilised muutused selles versioonis: uus liides manuste lisamiseks.
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Põhilised muutused selles versioonis: uus liides manuste valimiseks.
|
||||
Kogu ingliskeelne muudatuste logi: https://github.com/vector-im/element-android/releases
|
@@ -1,3 +0,0 @@
|
||||
چینش کارهٔ جدید میتواند در تنظیمات آزمایشگاهها به کار بیفتند. لطفاً بیازماییدش!
|
||||
رفع مشکلات مربوط به آگاهی غایب و همگامسازی تجمعّی طولانی.
|
||||
گزارش دگرگونی کامل: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
تغییرات عمده در این نگارش: پیامهای مستقیم تعویقی به کار افتاده به صورت پیشگزیده!
|
||||
گزارش دگرگونی کامل: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
تغییرات عمده در این نگارش: چینش کارهٔ جدید به کار افتاده به صورت پیشگزیده!
|
||||
گزارش دگرگونی کامل: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
تغییرات اصلی در این نگارش: قابلیتهای جدید در تنظیمات آزمایشگاهها: نگارندهٔ متن غنی، مدیریت افزارهٔ جدید، پخش صدا. هنوز زیر توسعهٔ فعّال!
|
||||
گزارش دگرگونی کامل: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
تغییرات عمده در این نگارش: رابط کاربری جدید برای گزینش پیوست.
|
||||
گزارش دگرگونی کامل: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
تغییرات عمده در این نگارش: رابط کاربری جدید برای گزینش پیوست.
|
||||
گزارش دگرگونی کامل: https://github.com/vector-im/element-android/releases
|
@@ -1,3 +0,0 @@
|
||||
La nouvelle présentation de l’application est disponibles dans les paramètres expérimentaux. Essayez-là !
|
||||
Correction de problèmes sur les notifications manquantes, et la synchronisation incrémentale lente.
|
||||
Intégralité des changements : https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Principaux changements pour cette version : Création des conversations privées différée activée par défaut.
|
||||
Intégralité des changements : https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Principaux changements pour cette version : Nouvelle disposition de l’application activée par défaut !
|
||||
Intégralité des changements : https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Principaux changements pour cette version : Nouvelles fonctionnalités expérimentales : éditeur de texte formaté, nouveau gestionnaire d’appareils, diffusion audio. C’est toujours en cours de développement !
|
||||
Intégralité des changements : https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Principaux changements pour cette version : nouvelle interface de sélection d’une pièce jointe.
|
||||
Intégralité des changements : https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Principaux changements pour cette version : nouvelle interface de sélection d’une pièce jointe.
|
||||
Intégralité des changements : https://github.com/vector-im/element-android/releases
|
@@ -1,3 +0,0 @@
|
||||
Az új alkalmazás megjelenés a Laborokban bekapcsolható. Próbáld ki!
|
||||
Hiányzó értesítések és hosszú inkrementális szinkronizáció javítása.
|
||||
Teljes változásnapló: https://github.com/vector-im/element-android/releases
|
@@ -1,3 +0,0 @@
|
||||
Tata Letak Aplikasi Baru dapat diaktifkan di pengaturan Uji Coba. Cobalah!
|
||||
Perbariki masalah tentang notifikasi hilang, dan penyinkronan inkremental panjang.
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Perubahan utama dalam versi ini: Pesan langsung yang ditangguhkan diaktifkan secara bawaan.
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Perubahan utama dalam versi ini: Tata letak aplikasi baru diaktifkan secara bawaan!
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Perubahan utama dalam versi ini: Fitur baru di belakang pengaturan uji coba: Komposer teks kaya, pengelolaan perangkat baru, siaran suara. Masih dalam pengembangan aktif!
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Perubahan utama dalam versi ini: Antarmuka baru untuk memilih sebuah lampiran.
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases
|
@@ -1,2 +0,0 @@
|
||||
Perubahan utama dalam versi ini: Antarmuka baru untuk memilih sebuah lampiran.
|
||||
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user