1
0
mirror of https://github.com/element-hq/element-x-android.git synced 2026-10-23 18:49:00 +03:00

570 Commits

Author SHA1 Message Date
Benoit Marty
b199bc74c6 Setting version for the release 26.10.0 2026-10-16 11:51:28 +02:00
Benoit Marty
259fc222da Import strings for the swipe account banner 2026-10-13 09:45:23 +02:00
Benoit Marty
3c4632ee9d Render an error in the room select screen if the rooms cannot be loaded
If the client of the selected account cannot be restored, the room list was
never loaded and there was no feedback to the user.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-07 15:50:11 +02:00
ElementBot
9805422a8a Update Matrix Rust SDK to 26.10.05-nightly (#7844)
* Update Matrix Rust SDK to 26.10.01-nightly

* Add ivy repository for nightly SDK binding versions

* Fix API breaks

* Make sure we can't release a version with a `-nightly` SDK version

* Fix typo

Co-authored-by: Benoit Marty <benoitm@element.io>

* Update Matrix Rust SDK to 26.10.05-nightly

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: Benoit Marty <benoitm@element.io>
2026-10-07 11:13:36 +02:00
Benoit Marty
08a0885cfc Merge pull request #7821 from element-hq/bma/removeUnusedDependencies
Remove unused Gradle dependencies
2026-10-06 12:23:32 +02:00
Benoit Marty
2de0d78ced Import multi-account announcement strings from Localazy
Add the `screen.multi_account_announcement.*` keys to the home module
Localazy configuration and import the latest strings.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-06 09:05:27 +02:00
Benoit Marty
a2be5176c0 fix aaptDump.txt 2026-10-02 18:49:13 +02:00
Benoit Marty
094f6de40e Fix aaptDump.txt permission order
Removing unused dependencies changed the library manifest merge order, so
RECEIVE_BOOT_COMPLETED is now listed after DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION.
The set of permissions is unchanged.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-02 15:47:51 +02:00
Jorge Martín
41f7cb7b74 Fix aaptDump.txt and changelog
The previous commit changed the aaptDump.txt file too much
2026-09-29 22:03:13 +02:00
Jorge Martín
3985d4b712 Add missing parts of the 26.09.4 release to develop:
- Update CHANGES.md.
- Update aaptDump.txt.
2026-09-29 19:06:33 +02:00
Valere
0d5a79f3f2 Add the camera foreground service permission to the manifest snapshot 2026-09-29 18:44:49 +02:00
Jorge Martin Espinosa
03fd288c47 Upgrade to rustls-platform-verifier:0.2.0 (#7791)
* Upgrade to `rustls-platform-verifier:0.2.0`.

This re-enables certificate revocation checks, but v0.2.0 contains a list of CRL servers that can be accessed using clear text requests to check the validity of certain certificates, which should fix the issue that prevented us from using certificate revocation and at the same time strengthening the security of the client app.

Since we already had some network configuration in Element X, and `network_security_config.xml` files can't be merged, what we can do is manually download and merge the XML contents using `tools/dependencies/update_rustls_platform_verifier.py` like this:

```sh
./update_rustls_platform_verifier.py 0.2.0
```

It will automatically bump the Gradle dependency and merge the security config entries.

* Bump SDK bindings to `v26.09.28`, containing the rustls bump on the SDK side

* Fix unused resources caused by `app/src/main/res/xml/network_security_config_element.xml`
2026-09-28 15:35:33 +00:00
Benoit Marty
74b9c85c7c Merge pull request #7760 from element-hq/feature/bma/removeHaze
Remove Haze.
2026-09-28 15:07:15 +02:00
Jorge Martín
bbb9750b3c Setting version for the release 26.09.3 2026-09-25 16:10:17 +02:00
Benoit Marty
7e5866a2b7 Merge branch 'develop' into bma/settingsIterationStep2Bis 2026-09-25 09:36:00 +02:00
Benoit Marty
6cb4343081 Add a script to end all the sessions of a Matrix account using MAS
The script logs in to MAS with the web login form (username and password),
then uses the MAS GraphQL API to end all the active compat, OAuth 2.0 and
browser sessions of the account. MAS pagination of browser sessions does not
always progress, so sessions are fetched and ended in batches until none are
left.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-24 17:13:00 +02:00
Benoit Marty
70058e0581 Run ./tools/manifest/aaptDump.sh 2026-09-24 15:02:00 +02:00
Jorge Martin Espinosa
4fa98752d4 Add a script to install and launch an APK given a PR URL (#7752)
* Add a script to install and launch an APK given a PR URL

This is easier than manually downloading, then installing the APK or scanning the QR code using the device

* Allow fetching the APK using the PR number too
2026-09-23 10:42:57 +00:00
Benoit Marty
9b2577f1dd Split settings: app settings / account settings 2026-09-22 13:17:16 +02:00
Jorge Martin Espinosa
4e47c6170e Integrate the new timeline renderer behind a feature flag (#7722)
* Integrate the new renderer with the timeline UI

* Composable functions are now in `:libraries:htmlrenderer:api` so we don't need to add `impl` to other modules.

* Improve inline code span

* Return both the text and URL in `onLinkClick` and `onLinkLongClick` so we can check the URL is not misleading

* Remove `SelectionContainer` for now - it creates issues when long pressing

* Make `LocalComposeTimelineEventRenderer` contain a `ComposeLocalTimelineEventRendererData` instance. This checks if the new rendering is enabled and what is the current user id so it can be used for styling mention pills

* Add fading edges to code block to indicate scrolling is possible

* Long pressing in a code block copies its contents to the clipboard

* Fix alignment of ordered list item prefixes

* Don't use default values in State data classes

---------

Co-authored-by: ElementBot <android@element.io>
2026-09-22 10:26:35 +02:00
Jorge Martin Espinosa
84a907d906 Fix regex for invalid placeholders (#7738)
This issue added some false positives to the list and broke the string synchronization.
2026-09-21 14:35:33 +02:00
Benoit Marty
58a00fd4e5 Merge pull request #7679 from element-hq/feature/bma/messageDeletionConfirmation
Let the user give an optional reason when removing a message
2026-09-16 16:37:51 +02:00
Benoit Marty
3e861cc646 Do not report detekt LargeClass issues on test classes (#7713)
detekt's default configuration excludes test source sets from
`TooManyFunctions` and `StringLiteralDuplication`, but not from
`LargeClass`, so large test classes were reported and had to carry a
`@Suppress("LargeClass")` annotation.

Add the same kind of exclusion to the `LargeClass` rule in
`tools/detekt/detekt.yml` and remove the 24 now-redundant suppressions
from test files. The two remaining suppressions are in production code,
where the rule still applies.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-15 13:56:33 +02:00
Benoit Marty
98c19de6e3 Merge pull request #7707 from element-hq/bma/gitFlowToGit
Replace git flow with regular git commands in the release script V2
2026-09-15 09:20:34 +02:00
Benoit Marty
5b09fdf13f Replace git flow with regular git commands in the release script V2
The script was relying on the external git-flow tool and on a local
`git config gitflow.*` initialisation, which made its behaviour depend on
the machine setup and hid what was actually done to the branches.

The release branch is now created with `git checkout -b`, and the release
is finished with explicit merge, tag, back-merge and branch deletion
commands. The merge and tag messages are provided explicitly so that the
generated history stays identical to the previous releases. Each step now
aborts the script with a clear message when it fails, instead of letting
the script continue.

Note that tools/release/release.sh (V1) still uses git flow.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-11 16:57:01 +02:00
ganfra
24a257bd38 Setting version for the release 26.09.2 2026-09-10 21:51:49 +02:00
Benoit Marty
a7ff96c1c3 Update wording of the remove message confirmation dialog.
And get strings from Localazy
2026-09-09 16:26:51 +02:00
Benoit Marty
8e1a34cff8 Merge pull request #7649 from element-hq/feature/bma/replaceDangerByGhAction
Replace Danger with actions/github-script
2026-09-09 11:30:13 +02:00
ganfra
4201ece647 Update gplay release manifest dump after location changes 2026-09-08 12:46:38 +02:00
Benoit Marty
d0d30dc6e2 Replace Danger with actions/github-script
The PR metadata checks move to a new PR Checks workflow, and the lint,
ktlint and detekt reports are now surfaced as inline annotations from the
quality workflow. This removes the danger-js dependency, its ad-hoc npm
installs and the need for the ElementBot token, so the checks also run on
pull requests from forks.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-04 15:54:02 +02:00
Benoit Marty
5c0c330bbd Import string from Localazy. (#7645) 2026-09-04 14:38:37 +02:00
Benoit Marty
94bfcc41a6 Merge pull request #7628 from element-hq/sync-localazy
Let's merge before we get a conflict.
2026-09-02 15:03:21 +02:00
Jorge Martin Espinosa
f2cd0bf888 Improve detection of invalid placeholders in localazy strings (#7624) 2026-09-02 13:02:40 +02:00
jmartinesp
dfccde93c6 Sync Strings from Localazy 2026-09-02 10:07:17 +00:00
Jorge Martin Espinosa
27e161605f Allow retrying finding the release assets in release script (#7619) 2026-09-01 16:59:56 +02:00
Jorge Martín
7c42f22b7c Setting version for the release 26.09.1 2026-09-01 13:57:32 +02:00
Jorge Martin Espinosa
e5065d9baa Fix invalid placeholders in translations (#7612)
* Add logic to find invalid string placeholders in `checkForbiddenTerms.py`

* Fix found invalid placeholder in Chinese translations
2026-09-01 12:40:05 +02:00
Benoit Marty
f97d207b16 [release] Check that there is no unmerged PR with the label "Z-NextRelease", else exit 2026-08-31 09:51:03 +02:00
Benoit Marty
8645260d46 Do not open the editor when finishing the release
`git flow release finish` opened the editor three times, and the content was
never edited: twice for the merge commits, where the message generated by git is
always kept, and once for the message of the annotated tag, where a placeholder
was typed by hand. The last tags carry the message "tag" for that reason.

GIT_MERGE_AUTOEDIT=no keeps the merge messages git already generates, and -m
provides the tag message. git flow appends the tag name to that message, so the
tag of the next release will read "Release v26.09.0".

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-27 14:58:39 +02:00
Benoit Marty
2f3d197060 Setting version for the release 26.08.4 2026-08-27 14:20:36 +02:00
Benoit Marty
c5f70de904 Add releaseV2.sh, a release script automating the GitHub release
releaseV2.sh is a copy of release.sh in which the GitHub CLI is mandatory and
does what was previously done by hand: it finds and waits for the release.yml
run, downloads and extracts its artifacts, creates the pre-release with its 6
assets and the generated release notes, and prepends those notes to CHANGES.md.
It also compares the version code and version name of the signed artifacts to
the expected values instead of asking the user to check them, and no longer
needs ELEMENT_GITHUB_TOKEN, since the CLI uses its own credentials. release.sh
is left untouched, so that the next release can be done with releaseV2.sh while
keeping a way back if something goes wrong. The installation documentation is
also fixed, as it referred to an asset name that does not exist anymore.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-26 22:15:54 +02:00
Benoit Marty
94259962a0 Setting version for the release 26.08.3 2026-08-26 13:56:12 +02:00
hayaksi1
76b19a158f Show the build date in the screenshot gallery footer
The gallery gave no indication of how old the screenshots on the page were,
which is one of the remaining items on the GitHub Pages improvement list.

The generator now writes the time it ran alongside the screenshot data, and the
page renders it in the footer next to the existing links.
2026-08-25 15:56:16 +03:00
hayaksi1
23005317cf Merge develop into the PreviewParam rename
The 174 commits develop gained since this branch was cut touch preview data
in three ways, and each is resolved so the flipped konsist rule still holds
across the merged tree.

Two screens the branch had renamed were deleted upstream by "Remove the
account provider search screen and homeserver resolver": the
changeaccountprovider and searchaccountprovider packages. Their deletion
wins, so ChangeAccountProviderStatePreviewParam, SearchAccountProviderStatePreviewParam
and the two views that used them go with them rather than coming back
under the new name.

Two preview classes develop added still carried the old suffix and are
renamed here, along with the `@PreviewParameter` reference in each view:
GlobalSearchStateProvider -> GlobalSearchStatePreviewParam and
SendFailureDialogStateProvider -> SendFailureDialogStatePreviewParam.

Everything else merged textually. No production class extending
PreviewParameterProvider is left with a `Provider` name, and no reference
to any of the 194 renamed names survives outside the CHANGES.md entry that
records a past pull request title.
2026-08-24 10:55:40 +03:00
Benoit Marty
441c88244f Merge pull request #7490 from element-hq/feature/bma/sendingMessageFailedReason
Show dialog with reason when user clicks on a message with a failure
2026-08-21 15:59:01 +02:00
Benoit Marty
2b3aeee1c6 Merge pull request #7494 from element-hq/feature/bma/loginWording
Move strings to the login module
2026-08-21 10:06:21 +02:00
Benoit Marty
25989135a8 Add error content to Localazy 2026-08-21 09:54:47 +02:00
Benoit Marty
a078851b78 Add small script to force stop an application. 2026-08-20 13:23:21 +02:00
Benoit Marty
b774e6a280 Setting version for the release 26.08.2 2026-08-20 10:12:25 +02:00
Benoit Marty
42f9e15641 Move strings to the login module 2026-08-19 17:18:16 +02:00