1
0
mirror of https://github.com/vector-im/riotX-android synced 2025-10-06 00:02:48 +02:00

Compare commits

..

269 Commits

Author SHA1 Message Date
Michael Kaye
e380d3d9b7 Fix typo 2022-03-08 14:31:03 +00:00
Michael Kaye
76e4b328b4 Try running integration test across all test cases not individually. 2022-03-08 14:29:31 +00:00
Michael Kaye
67c9584215 Ignore flaky VerificationTest 2022-03-08 14:08:30 +00:00
Michael Kaye
bdc9bc0d4d Merge pull request #5442 from vector-im/michaelk/fix_develop
Missing import of at-Ignore annotation.
2022-03-07 15:19:26 +00:00
Michael Kaye
1569c2f3c7 Missing import of at-Ignore annotation. 2022-03-07 14:46:01 +00:00
Adam Brown
9a02543afd FTUE - Choose a display picture (#5323)
* adding tests around the onboarding view model
- cases for the personalisation and display name actions

* adding base choose name fragment with UI

* add click handling for the display name actions

* adding tests around the onboarding view model
- cases for the personalisation and display name actions

* adding barebones profile picture fragment with ability to select a user avatar

* extracting uri filename resolving to a class which can be injected
- includes tests

* updating upstream avatar on profile picture save and continue step
- moves the personalisation state to a dedicated model to allow for back and forth state restoration

* adding test case for skipping profile picture setting

* taking the profile loading into account when rendering the onboarding loading

* extracting method for the handling of the profile picture selection

* adding dedicated camera icon for choosing profile picture

* adding toolbar to back to profile picture page
- this toolbar will fade in with the fragment as it sits at the fragment level, probably worth revisiting once more pages have a toolbar

* changing edit/add picture icon based on if we're already selected an image

* making use of debounced clicks to avoid potential extra clicks

* making the avatar height and camera icon relative percentage based
- also makes the avatar itself clicking, including a foreground ripple

* fixing formatting

* making use of fake session id for user id assertion

* using a real  matrix id syntax for the fake session user id

* removing duplicated dimens

* using self closing imageview tag
2022-03-07 14:07:22 +00:00
Michael Kaye
9af2f1cdc6 Merge pull request #5440 from vector-im/michaelk/threadmessagingtest_ignore
Ignore ThreadMessagingTest as it seems to cause other integration tests to fail
2022-03-07 14:05:22 +00:00
Michael Kaye
b25d11244b Merge pull request #5413 from vector-im/michaelk/code_cov_alt
Code coverage using jacoco (and xml report)
2022-03-07 13:31:51 +00:00
Michael Kaye
f32da28285 Ignore ThreadMessagingTest as it seems to cause other integration tests to fail. 2022-03-07 13:14:38 +00:00
Michael Kaye
2b7b7521a9 Maybe the file is here? 2022-03-07 10:26:25 +00:00
Michael Kaye
8e39247c4d I give up for the weekend 2022-03-04 18:00:20 +00:00
Michael Kaye
1ad3e7cc9d Frustration at artifact handling vs what's in docs. 2022-03-04 16:35:46 +00:00
Ahmed Radhouane Belkilani
bcdf004082 Update the top bar in a room (#5213)
Remove typing message notification from room toolbar.

Signed-off-by: Ahmed Radhouane Belkilani <arbelkilani@gmail.com>
2022-03-04 16:38:53 +01:00
Michael Kaye
57bbec4ffd Merge pull request #5388 from vector-im/michaelk/format_unit_test_results
Format unit test results
2022-03-04 15:29:15 +00:00
Michael Kaye
96168929ff Tweak upload/download of codecov xml file 2022-03-04 15:15:52 +00:00
Michael Kaye
2dedad1cf2 Address review points from adam 2022-03-04 15:03:12 +00:00
Michael Kaye
662f72fde8 Remove unneeded code, retaining a comment for how to exclude certain projects 2022-03-04 15:01:24 +00:00
Michael Kaye
d4bf38f428 Merge pull request #5391 from vector-im/michaelk/sonaqube_nightly
Run sonarqube as part of nightly build
2022-03-04 09:25:18 +00:00
ClaireG
2a9e582db5 Merge pull request #5405 from vector-im/cgizard/ISSUE-5402
[Create private room] Picture doesn't not displayed
2022-03-03 22:40:26 +01:00
Michael Kaye
2d5b25cfad Remove the printing of file name to the log as it's doubling up information. 2022-03-03 20:39:41 +00:00
Michael Kaye
9fe04ac5b8 Remove exclusions (for now).
We can merge this PR without and re-add afterwards the only ones we want.
2022-03-03 20:26:33 +00:00
Michael Kaye
cb32124fd4 Fix typo in name of action 2022-03-03 18:28:13 +00:00
Benoit Marty
1690a0b2cf giving avatar/display name error dialogs human readable error messages (#5419)
- reuses the ErrorDialog logic which translates exceptions to human readable strings
2022-03-03 18:29:39 +01:00
Adam Brown
54e23a2c55 giving avatar/display name error dialogs human readable error messages
- reuses the ErrorDialog logic which translates exceptions to human readable strings
2022-03-03 16:37:59 +00:00
Michael Kaye
76844b1572 Run codecoverage and pass to sonarqube upload for processing. 2022-03-03 16:34:54 +00:00
Michael Kaye
49fbfe6811 Better codecov based on ouchadam's suggestion 2022-03-03 16:34:54 +00:00
Michael Kaye
105f3dd93d Correct name of environment variable 2022-03-03 16:34:26 +00:00
Michael Kaye
3364868365 Use environment variable that is tied to project property 2022-03-03 15:05:39 +00:00
Yoan Pintas
6e6b04c57e Merge pull request #4498 from vector-im/yostyle/fix_strandhogg
Override task affinity to prevent unknown activities running in our app tasks.
2022-03-03 15:05:29 +01:00
Benoit Marty
7a1322baf7 Merge pull request #5415 from vector-im/feature/adm/missing-allowed-depenency-groups
Adding missing dependency allowances
2022-03-03 14:57:37 +01:00
Adam Brown
16a31e1716 adding new dependency allowances for latest dependency upgrades 2022-03-03 13:47:19 +00:00
Benoit Marty
dd0d2e8101 Merge pull request #5383 from vector-im/dependabot/gradle/com.google.android.gms-oss-licenses-plugin-0.10.5
Bump oss-licenses-plugin from 0.10.4 to 0.10.5 - REQUIRE HUMAN INTERVENTION
2022-03-03 11:55:00 +01:00
Michael Kaye
0ce787f20b Ensure we run on java 11 on macos 2022-03-03 10:51:00 +00:00
Michael Kaye
fd065dbbb9 Update build.gradle
Note password secret name.
2022-03-03 10:51:00 +00:00
Michael Kaye
5ea917f74b jobs.step.env is a map not a list 2022-03-03 10:51:00 +00:00
Michael Kaye
82e0f4a1a9 Run sonarqube as part of nightly build 2022-03-03 10:51:00 +00:00
Benoit Marty
840742ce71 Lint: "MissingQuantity" -> warning 2022-03-03 10:22:59 +01:00
Benoit Marty
4396390409 Fix lint error (false positive, but anyway, not used) 2022-03-02 22:14:54 +01:00
Benoit Marty
7024ccb244 Merge pull request #5409 from vector-im/feature/adm/test-compilation-error
Fixing unit test compilation error
2022-03-02 21:25:23 +01:00
Adam Brown
10f480b88d adding missing VectorOverrides param from test instance creation and removing unused VectorDatastore 2022-03-02 18:27:12 +00:00
Adam Brown
99e5a8f2fa FTUE - Choose a display name (#5211)
* adding base choose name fragment with UI

* add click handling for the display name actions

* updating real account display name

* setting the initial disabled state when the view is created

* adding header padding which would have been a toolbar

* exiting the flow on display name updated or skipped, the next PR will introduce the profile picture screen

* updating view model state testing to take all emissions into account

* adding tests around the onboarding view model
- cases for the personalisation and display name actions

* using colorSecondary instead of accent as per quality script rule

* making use of viewevent delegating action for the back handling

* using debounced clicks

* consuming the back action when existing the display name fragment via viewmodel

* making the keyboard imeDone update the display name
2022-03-02 17:59:40 +00:00
Benoit Marty
4bbb60cc65 White list group org.webjars 2022-03-02 15:22:59 +01:00
Michael Kaye
74040c5563 Merge pull request #5387 from vector-im/michaelk/nightly_tests_logcat
Nightly Tests should save logcat logs to artifact
2022-03-02 10:34:23 +00:00
Adam Brown
0c628905de Lifting debug overrides to their own abstraction (#5361)
* separating the debug overrides to their own abstraction
- rather than sharing the user facing vector data store

* inlining the debug flow getters and declarations
- also replaces funs with vals as the references are immutable

* adding changelog entry
2022-03-02 10:08:43 +00:00
Michael Kaye
7837d1d6d6 Wrap up the argument list; it can be long 2022-03-02 10:05:07 +00:00
Benoit Marty
1c94a7ddc7 Merge pull request #5382 from vector-im/dependabot/github_actions/actions/setup-python-3
Bump actions/setup-python from 2 to 3
2022-03-01 18:38:54 +01:00
Benoit Marty
7e909de31c Merge pull request #5392 from vector-im/eric/update-material-library-version
Upgrades to Material 1.5.0 (dependency only)
2022-03-01 18:37:20 +01:00
Benoit Marty
d4caad1665 Merge pull request #5396 from tgloureiro/develop
Fix Media cache size with negative values in the General Settings screen
2022-03-01 18:29:37 +01:00
Tiago Loureiro
9a4d37b5cc Add changelog 2022-03-01 13:26:51 -03:00
Tiago Loureiro
ad8809196f Fix overflow on media cache size 2022-03-01 13:12:46 -03:00
ericdecanini
b1c2bccdd0 Adds changelog file 2022-03-01 15:17:22 +01:00
Benoit Marty
b8fad693f3 Merge pull request #5386 from vector-im/frakic/5362/ignore_KeysBackupPasswordTest
ignore KeysBackup tests
2022-03-01 15:10:30 +01:00
ericdecanini
d6cd3f5719 Upgrades to material 1.5.0 library 2022-03-01 14:35:22 +01:00
Filip Rakić
1216dde9c5 ignore KeysBackup tests 2022-03-01 13:16:01 +01:00
Michael Kaye
cb00a668fe Format unit test results as well 2022-03-01 11:42:54 +00:00
Benoit Marty
1b1a9bf3dd Merge pull request #5267 from vector-im/sync-analytics-plan
Sync analytics plan
2022-03-01 10:45:03 +01:00
Michael Kaye
ec786af42a Merge pull request #5381 from vector-im/dependabot/github_actions/michaelkaye/matrix-hookshot-action-0.3.0
Bump michaelkaye/matrix-hookshot-action from 0.2.0 to 0.3.0
2022-03-01 09:00:11 +00:00
NIkita Fedrunov
e65070793d Merge branch 'develop' into sync-analytics-plan 2022-03-01 09:15:19 +01:00
dependabot[bot]
27f7fadb3d Bump oss-licenses-plugin from 0.10.4 to 0.10.5
Bumps oss-licenses-plugin from 0.10.4 to 0.10.5.

---
updated-dependencies:
- dependency-name: com.google.android.gms:oss-licenses-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-28 23:09:55 +00:00
dependabot[bot]
e776ff4d9d Bump actions/setup-python from 2 to 3
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 3.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-28 23:03:07 +00:00
dependabot[bot]
4c882e8f92 Bump michaelkaye/matrix-hookshot-action from 0.2.0 to 0.3.0
Bumps [michaelkaye/matrix-hookshot-action](https://github.com/michaelkaye/matrix-hookshot-action) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/michaelkaye/matrix-hookshot-action/releases)
- [Commits](https://github.com/michaelkaye/matrix-hookshot-action/compare/v0.2.0...v0.3.0)

---
updated-dependencies:
- dependency-name: michaelkaye/matrix-hookshot-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-28 23:03:03 +00:00
Benoit Marty
781a477056 Merge pull request #5292 from vector-im/feature/mna/4319-dm-space-members-list
#4319: Fix DM navigation in member profile screen
2022-02-28 21:37:09 +01:00
Benoit Marty
9cc35644a3 Merge pull request #5379 from vector-im/feature/aris/cleanup_threads_build_config
Cleanup enabling threads from buildConfig
2022-02-28 21:10:20 +01:00
Benoit Marty
71aac37ec7 Merge pull request #5330 from vector-im/feature/fga/more_realm_fixing
Feature/fga/more realm fixing
2022-02-28 21:02:10 +01:00
Michael Kaye
39d1fc939a Use pkill (killall has a failuremode of killing PID 1 on some systems) 2022-02-28 17:08:52 +00:00
Michael Kaye
221e9b85df Ensure we have logcat for nightly runs 2022-02-28 17:06:34 +00:00
Michael Kaye
34e4674ddd Update README.md 2022-02-28 16:18:15 +00:00
ariskotsomitopoulos
f6ad06b82b Add changelog 2022-02-28 17:43:18 +02:00
Michael Kaye
1f5f8bb9ca Merge pull request #5376 from vector-im/michaelk/force_java_version
Force java 11 for CI nightly runs
2022-02-28 15:43:16 +00:00
ariskotsomitopoulos
ae98185c9d Cleanup enabling threads from buildConfig 2022-02-28 17:39:40 +02:00
Michael Kaye
bb57b6f9c8 Merge branch 'develop' into michaelk/force_java_version 2022-02-28 14:40:23 +00:00
Michael Kaye
b3e6ff68af Allow workflows to be triggered manually without sending notification and force java 11 2022-02-28 14:37:14 +00:00
ganfra
e32e006b85 Add SDK changelog. 2022-02-28 15:12:15 +01:00
Maxime Naturel
96f041a773 Remove handling of direct message from timeline fragment 2022-02-28 14:58:58 +01:00
Maxime Naturel
46854b4b84 Moving DM creation/opening into the member profile screen 2022-02-28 14:58:58 +01:00
Maxime Naturel
836bf4e11e DRAFT TODO 2022-02-28 14:58:58 +01:00
Maxime Naturel
1ef26e6c12 Adding changelog entry 2022-02-28 14:58:58 +01:00
Benoit Marty
80bc3af5fa Merge pull request #5349 from vector-im/feature/mna/5005-save-image
#5005: Add save media icon in gallery
2022-02-28 14:23:17 +01:00
Benoit Marty
d5cb315ff4 Merge pull request #5328 from vector-im/feature/dla/ci_check_concurrency
Add concurrency to the GitHub workflows to auto-cancel older runs of actions in PRs.
2022-02-28 14:20:30 +01:00
Benoit Marty
27905064e0 Merge pull request #5325 from vector-im/feature/eric/registration-feature-flag
#5307 Adds ForceLoginFallback feature flag to Login and Registration
2022-02-28 14:20:00 +01:00
David Langley
c61af45216 Fix spacing 2022-02-28 12:31:36 +00:00
David Langley
6c4dd54a2c Merge branch 'develop' of github.com:vector-im/element-android into feature/dla/ci_check_concurrency 2022-02-28 12:29:52 +00:00
Maxime Naturel
562780a169 Adding a FakeFile class for unit tests 2022-02-28 11:55:14 +01:00
Michael Kaye
8d5d064626 Merge pull request #5373 from vector-im/michaelk/remove_extra_workflow
Remove duplicate sanity_test.yml - now in nightly.yml
2022-02-28 10:27:09 +00:00
Michael Kaye
795072312d Remove duplicate sanity_test.yml - now in nightly.yml 2022-02-28 09:57:01 +00:00
Maxime Naturel
0170171caa Adding missing spaces after comments 2022-02-28 10:28:45 +01:00
Benoit Marty
fbd5456360 Merge pull request #5353 from vector-im/dependabot/gradle/com.googlecode.libphonenumber-libphonenumber-8.12.44
Bump libphonenumber from 8.12.43 to 8.12.44
2022-02-28 09:58:18 +01:00
bmarty
ce9c5564c0 Sync analytics plan 2022-02-28 00:03:19 +00:00
Michael Kaye
b21a6fec4a Merge pull request #5360 from vector-im/michaelk/integration_tests_nightly
Run integration tests nightly
2022-02-25 19:44:00 +00:00
Benoit Marty
957413c9df Add changelog 2022-02-25 18:21:19 +01:00
Benoit Marty
0855a9a855 Merge pull request #5352 from vector-im/feature/bma/delete_unused_strings
Delete bunch of unused strings - WIP
2022-02-25 18:07:05 +01:00
Benoit Marty
561dcbcfa1 Remove translation of removed strings, using the IDE facility after a code inspection 2022-02-25 17:25:08 +01:00
Maxime Naturel
56c6301151 Adding unit tests 2022-02-25 16:39:26 +01:00
Michael Kaye
58ffb011c7 Rename sanity test to nightly test, incorporate integration tests for nightly runs.
Also permit manual triggering of a run.
2022-02-25 14:18:56 +00:00
Michael Kaye
35204d2348 Merge pull request #5339 from vector-im/michaelk/integration_test_render_results
Render integration test results inline.
2022-02-25 13:20:15 +00:00
Maxime Naturel
cb27608c75 Removing base use case interface 2022-02-25 14:11:26 +01:00
Benoit Marty
ba15fa6e2c Ignore unused resources if used only in F-Droid and Gplay variant 2022-02-25 13:45:24 +01:00
Benoit Marty
fd17517675 Remove unused strings 2022-02-25 13:45:24 +01:00
Benoit Marty
85b59654ae Remove unused strings in build.gradle. Rely on BuildConfig fields only 2022-02-25 13:45:24 +01:00
Benoit Marty
e171fd2eff Add lint rule 2022-02-25 13:45:24 +01:00
Michael Kaye
0ce59989a5 Log xml files we render.
We seem to be missing some tests here (?)
2022-02-25 11:07:03 +00:00
Benoit Marty
b8a0aa724e Merge pull request #5357 from vector-im/cgizard/ISSUE-5326
[Export e2ee keys] use appName instead of element
2022-02-25 12:03:56 +01:00
Maxime Naturel
6230dfc641 Removing section bloc comments 2022-02-25 12:01:21 +01:00
Maxime Naturel
4e4702cad8 Fixing date of file creation 2022-02-25 10:56:38 +01:00
Claire G
4860ed9131 replace empty space by - for debug app name 2022-02-25 10:04:30 +01:00
dependabot[bot]
ca56865dd1 Bump libphonenumber from 8.12.43 to 8.12.44
Bumps [libphonenumber](https://github.com/google/libphonenumber) from 8.12.43 to 8.12.44.
- [Release notes](https://github.com/google/libphonenumber/releases)
- [Changelog](https://github.com/google/libphonenumber/blob/master/making-metadata-changes.md)
- [Commits](https://github.com/google/libphonenumber/compare/v8.12.43...v8.12.44)

---
updated-dependencies:
- dependency-name: com.googlecode.libphonenumber:libphonenumber
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-24 23:10:16 +00:00
Maxime Naturel
aea78b70f1 Changing usage of viewModelScope to Session scope 2022-02-24 18:08:42 +01:00
David Langley
7e308d10d8 Add comments where concurrency is not required so that it is considered when making changes. 2022-02-24 16:48:30 +00:00
Maxime Naturel
157feb1e4c Updating order of message actions 2022-02-24 17:39:41 +01:00
Maxime Naturel
a583db43c4 Updating TODOs 2022-02-24 17:39:41 +01:00
Maxime Naturel
4260d2f155 Updating Changelog entry 2022-02-24 17:39:41 +01:00
Maxime Naturel
882b143569 Permission and error handling 2022-02-24 17:39:41 +01:00
Maxime Naturel
4c09fb747b Moving base use case interface into core package 2022-02-24 17:39:41 +01:00
Maxime Naturel
cdb1a96664 Removing TODOs 2022-02-24 17:39:41 +01:00
Maxime Naturel
73ac3f3fda Fixing DI + observing events 2022-02-24 17:39:41 +01:00
Maxime Naturel
7d7b1f305e Calling ViewModel inside Fragment 2022-02-24 17:39:41 +01:00
Maxime Naturel
b17ce12c3d Calling use case inside ViewModel 2022-02-24 17:39:41 +01:00
Maxime Naturel
c6c46375d6 Creating a ViewModel 2022-02-24 17:39:40 +01:00
Maxime Naturel
374ac45505 Interface for UseCase 2022-02-24 17:39:40 +01:00
Maxime Naturel
38236e7815 OnDownload callback 2022-02-24 17:39:40 +01:00
Maxime Naturel
f64268efdb Adding download media use case 2022-02-24 17:39:40 +01:00
Maxime Naturel
e6995cbdd4 Draft 2022-02-24 17:39:40 +01:00
Maxime Naturel
0169396d7d Adding save icon into viewer 2022-02-24 17:39:40 +01:00
Maxime Naturel
042c57f9b8 Renaming some methods to be more concise 2022-02-24 17:39:40 +01:00
Maxime Naturel
6899b5b637 Creating dedicated attachment interaction listener 2022-02-24 17:39:40 +01:00
Maxime Naturel
3384a0caa0 TODO 2022-02-24 17:39:40 +01:00
Maxime Naturel
b525259bec Adding changelog entry 2022-02-24 17:39:40 +01:00
Michael Kaye
9ddcaffebf Adjust script to handle XML files 2022-02-24 16:36:43 +00:00
David Langley
79a8652308 Fix unit tests concurrency group naming.
Co-authored-by: Michael Kaye <1917473+michaelkaye@users.noreply.github.com>
2022-02-24 16:31:17 +00:00
David Langley
9832f1e8e8 Add matrix.target to apk-lint concurrency group for develop branch.
Co-authored-by: Michael Kaye <1917473+michaelkaye@users.noreply.github.com>
2022-02-24 16:28:14 +00:00
David Langley
8fc1f3c1aa Fix ktlint typo
Co-authored-by: Michael Kaye <1917473+michaelkaye@users.noreply.github.com>
2022-02-24 16:26:22 +00:00
Benoit Marty
a1f5493b0a Merge pull request #5348 from vector-im/feature/android-stem_2.0.0
Upgrade to Android stem 2.0.0
2022-02-24 17:25:33 +01:00
ericdecanini
65242dfb47 Adds missing invalidation step to forceLoginFallback checkbox 2022-02-24 16:57:04 +01:00
Benoit Marty
5895c69a91 Remove temporary lint ignoring 2022-02-24 16:22:45 +01:00
Benoit Marty
00423f8ea1 Changelog 2022-02-24 15:48:09 +01:00
Michael Kaye
70c9418a5e Fix typo in script 2022-02-24 14:48:03 +00:00
Michael Kaye
4d86f5f2fd Correct name of script 2022-02-24 14:48:02 +00:00
Michael Kaye
fbf29f6f1e Quick hack python to render the xml test output including times in a easy to read format. 2022-02-24 14:47:23 +00:00
Michael Kaye
779b5db363 Add a python script to cleanly display outputs in the github logs 2022-02-24 14:46:31 +00:00
Benoit Marty
40b1862cc3 Remove duplicated string
Template and no template version was present, it was a mistake.
2022-02-24 15:40:04 +01:00
ericdecanini
9f0cef7040 Removes unnecessary exhaustive on when statement 2022-02-24 15:39:27 +01:00
ericdecanini
8d0410d961 Removes Global doNothing function 2022-02-24 15:38:36 +01:00
ericdecanini
3d57d72a7e Reorders some functions within FtueAuthVariant 2022-02-24 15:33:06 +01:00
Benoit Marty
7516a1280e template_ is not required anymore 2022-02-24 15:32:24 +01:00
ericdecanini
92c6d59984 Adds private setting usage to FtueAuthVariant 2022-02-24 15:28:33 +01:00
ericdecanini
981393fefb Changes copy value of forceLoginFallback to it 2022-02-24 15:27:51 +01:00
Benoit Marty
d93199259a Update plugin to generated string with template from com.likethesalad.android:string-reference:1.2.2 to com.likethesalad.android:stem-plugin:2.0.0 2022-02-24 15:25:30 +01:00
Benoit Marty
b226ab5e4b Merge pull request #5343 from RiotTranslateBot/weblate-element-android-element-app
Translations update from Weblate
2022-02-24 15:08:16 +01:00
ericdecanini
092761c118 Adds forceLoginFallback private setting view 2022-02-24 15:07:10 +01:00
ericdecanini
2917d4e4d6 Adds forceLoginFallback private setting 2022-02-24 15:01:18 +01:00
Michael Kaye
12a0b3c164 Merge pull request #5329 from vector-im/michaelk/fail_integration_tests
Allow integration tasks to fail, but use if: always() to allow the next step to continue anyway.
2022-02-24 14:01:13 +00:00
ericdecanini
4ebaa349c3 Reverts adding force login fallback flag to debug features 2022-02-24 14:45:48 +01:00
Benoit Marty
ca8b69e377 Use correct copyright 2022-02-24 14:20:48 +01:00
Weblate
515524584f Merge branch 'origin/develop' into Weblate. 2022-02-24 13:17:48 +00:00
Linerly
1e4064170f Translated using Weblate (Indonesian)
Currently translated at 100.0% (51 of 51 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/id/
2022-02-24 13:17:12 +00:00
waclaw66
bbef1a541b Translated using Weblate (Czech)
Currently translated at 100.0% (51 of 51 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/cs/
2022-02-24 13:17:10 +00:00
Jeff Huang
5245ce58e7 Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (51 of 51 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/zh_Hant/
2022-02-24 13:17:08 +00:00
random
7316d0a01e Translated using Weblate (Italian)
Currently translated at 100.0% (51 of 51 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/it/
2022-02-24 13:17:07 +00:00
Priit Jõerüüt
ac92815bd1 Translated using Weblate (Estonian)
Currently translated at 100.0% (51 of 51 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/et/
2022-02-24 13:17:05 +00:00
Ihor Hordiichuk
27d9f092ee Translated using Weblate (Ukrainian)
Currently translated at 100.0% (51 of 51 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/uk/
2022-02-24 13:17:03 +00:00
Jozef Gaal
4b8e1a72e1 Translated using Weblate (Slovak)
Currently translated at 100.0% (51 of 51 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/sk/
2022-02-24 13:17:02 +00:00
lvre
603068564b Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (51 of 51 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/pt_BR/
2022-02-24 13:17:00 +00:00
Szimszon
2dc2494b22 Translated using Weblate (Hungarian)
Currently translated at 100.0% (51 of 51 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/hu/
2022-02-24 13:16:58 +00:00
Jeff Huang
8866ad32d7 Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (2783 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/zh_Hant/
2022-02-24 13:16:57 +00:00
Ihor Hordiichuk
ec1195526a Translated using Weblate (Ukrainian)
Currently translated at 100.0% (2783 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/uk/
2022-02-24 13:16:56 +00:00
Jozef Gaal
9504bd99a7 Translated using Weblate (Slovak)
Currently translated at 98.9% (2754 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/sk/
2022-02-24 13:16:55 +00:00
lvre
6afc5824c4 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (2783 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/pt_BR/
2022-02-24 13:16:51 +00:00
Kagami Sascha Rosylight
0046a3d697 Translated using Weblate (Korean)
Currently translated at 47.6% (1325 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ko/
2022-02-24 13:16:50 +00:00
Suguru Hirahara
8a66726dad Translated using Weblate (Japanese)
Currently translated at 94.5% (2632 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-24 13:16:50 +00:00
random
7ba60a0fb2 Translated using Weblate (Italian)
Currently translated at 100.0% (2783 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/it/
2022-02-24 13:16:49 +00:00
Linerly
99f1180e01 Translated using Weblate (Indonesian)
Currently translated at 100.0% (2783 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/id/
2022-02-24 13:16:49 +00:00
Szimszon
01fe4c4d70 Translated using Weblate (Hungarian)
Currently translated at 100.0% (2783 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/hu/
2022-02-24 13:16:48 +00:00
Priit Jõerüüt
8d9b5eb0d5 Translated using Weblate (Estonian)
Currently translated at 99.9% (2781 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/et/
2022-02-24 13:16:47 +00:00
Kim Brose
c5286022f0 Translated using Weblate (German)
Currently translated at 99.8% (2780 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/de/
2022-02-24 13:16:46 +00:00
waclaw66
11342381ef Translated using Weblate (Czech)
Currently translated at 100.0% (2783 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/cs/
2022-02-24 13:16:46 +00:00
Benoit Marty
5512439d36 Merge pull request #5157 from vector-im/feature/bma/config_poc
Create a new resource in config file for default setting value.
2022-02-24 14:15:19 +01:00
Suguru Hirahara
bf8389a7ec Translated using Weblate (Japanese)
Currently translated at 94.5% (2631 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-24 11:37:56 +00:00
Joe Sagawa
cc2653e602 Translated using Weblate (Japanese)
Currently translated at 94.5% (2631 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-24 11:37:53 +00:00
Michael Kaye
a8390ad451 Merge pull request #5324 from vector-im/michaelk/rely_on_setup-python_cache
Rely on setup python cache and tidy up python actions
2022-02-24 09:54:12 +00:00
David Langley
d4a423b382 Fix spacing 2022-02-24 09:30:28 +00:00
David Langley
93c6216269 Add descriptions of concurrencies 2022-02-23 23:13:30 +00:00
David Langley
de7a572329 noop to test cancel 2022-02-23 23:05:34 +00:00
David Langley
d561ad6acd include matrix.target in apk-lint group 2022-02-23 23:04:18 +00:00
David Langley
80fd816d66 test cancel with noop 2022-02-23 23:00:22 +00:00
David Langley
cf7417d544 Have to inline it as can't use env vars in other env vars. 2022-02-23 22:58:51 +00:00
David Langley
355931a592 add env prefix. 2022-02-23 22:42:11 +00:00
David Langley
8c65285ec5 try multiline expression for group sufficx 2022-02-23 22:37:19 +00:00
David Langley
43c125ed32 Use matrix.target to fix build group. Use env vars to clean up. 2022-02-23 22:16:24 +00:00
Suguru Hirahara
0dd51340b7 Translated using Weblate (Japanese)
Currently translated at 93.3% (2597 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-23 22:15:26 +00:00
oksya8and8
d99b7b73ab Translated using Weblate (Japanese)
Currently translated at 93.3% (2597 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-23 22:15:26 +00:00
Suguru Hirahara
5c263d78dd Translated using Weblate (Japanese)
Currently translated at 93.2% (2596 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-23 22:15:08 +00:00
oksya8and8
a91f59ba04 Translated using Weblate (Japanese)
Currently translated at 93.2% (2596 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-23 22:15:07 +00:00
Suguru Hirahara
f150a8212b Translated using Weblate (Japanese)
Currently translated at 93.2% (2594 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-23 22:11:41 +00:00
oksya8and8
c8a290c680 Translated using Weblate (Japanese)
Currently translated at 93.2% (2594 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-23 22:11:41 +00:00
Suguru Hirahara
229a64d408 Translated using Weblate (Japanese)
Currently translated at 93.1% (2592 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-23 22:09:28 +00:00
oksya8and8
aed43849c8 Translated using Weblate (Japanese)
Currently translated at 93.1% (2592 of 2783 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ja/
2022-02-23 22:09:28 +00:00
ganfra
fd48fc9103 Add changelog 2022-02-23 19:30:34 +01:00
Benoit Marty
93131da61a Merge pull request #5320 from vector-im/feature/adm/space-ui-failures
Tentatively fixing space menu items not being clicked on during sanity test
2022-02-23 19:22:59 +01:00
David Langley
edb92f85c5 noop to test cancel 2022-02-23 18:12:43 +00:00
David Langley
639774662a Add concurrency checks for unit tests, build and quality checks. 2022-02-23 18:11:46 +00:00
David Langley
5bbd6769b9 noop to test cancel 2022-02-23 18:02:59 +00:00
David Langley
ac4d748c8c Add concurrency to integration tests. 2022-02-23 18:01:22 +00:00
Michael Kaye
9e7079dff6 Move from continue_on_error to if: always().
This will allow previous steps to explicitly fail and be marked as failed
but later steps will continue to run in order to display the outcomes.

(there's probably a better way to do this, but this will at least start
to expose the errors in the UI)
2022-02-23 18:00:54 +00:00
Benoit Marty
93de61e61f Merge pull request #5206 from vector-im/arb/issues/3296
#3296 Typing Notification update
2022-02-23 18:57:14 +01:00
Benoit Marty
0087f72309 Improve doc 2022-02-23 18:28:08 +01:00
Benoit Marty
03a6a348c0 Add boolean for visibility of all settings at root level 2022-02-23 18:19:24 +01:00
Benoit Marty
830fca731c Move setting for preference in a dedicated file 2022-02-23 18:10:56 +01:00
Benoit Marty
96c2c6f4a4 Move file config.xml to the module vector-config 2022-02-23 18:10:08 +01:00
Benoit Marty
e3209fd04a Create module vector-config 2022-02-23 18:08:04 +01:00
Benoit Marty
b12c890191 Also add a way to hide the setting to the user 2022-02-23 18:03:12 +01:00
Benoit Marty
5cfcd65b38 Create a new resource in config file for default setting value. First case: message bubbles 2022-02-23 18:03:12 +01:00
ganfra
f7c79a6de2 Realm: fix remaining frozen result 2022-02-23 18:02:02 +01:00
ganfra
beeee7c84b Realm: avoid opening realm if not necessary in ReadReceiptsSummaryMapper 2022-02-23 18:01:19 +01:00
ganfra
fb2ed9a7ac Rename getTimeLine to getTimeline to align naming. Also create TimelineEventDataSource. 2022-02-23 18:00:31 +01:00
Claire G
f63cd57567 use appName instead of "element" in e2ee file name 2022-02-23 17:45:54 +01:00
ericdecanini
c89f28ffb2 adds missing brackets on multiline if statements 2022-02-23 17:43:40 +01:00
Michael Kaye
5bfb8fe294 Merge pull request #5315 from vector-im/michaelk/notify_channel_on_sanity_test
Notify channel on sanity test result
2022-02-23 16:36:33 +00:00
ericdecanini
64e074840b Merge remote-tracking branch 'origin/develop' into feature/eric/registration-feature-flag
# Conflicts:
#	vector/src/debug/java/im/vector/app/features/debug/features/DebugFeaturesStateFactory.kt
#	vector/src/debug/java/im/vector/app/features/debug/features/DebugVectorFeatures.kt
#	vector/src/main/java/im/vector/app/features/VectorFeatures.kt
2022-02-23 17:31:43 +01:00
ericdecanini
137d804cfa adds changelog file 2022-02-23 17:26:50 +01:00
Michael Kaye
c2a67a03a4 Do not run synapse in a venv.
We do not need to, so simplify the configuration.
2022-02-23 16:01:22 +00:00
Michael Kaye
5c4ca79888 Remove use of explicit pip cache.
We use setup-python to install the python we use, which has inbuilt
caching of python dependencies.

https://github.com/actions/setup-python#caching-packages-dependencies
2022-02-23 15:59:43 +00:00
Michael Kaye
0bb47200c7 Do not install synapse only matrix-synapse.
Synapse is something entirely different:

https://pypi.org/project/synapse/
2022-02-23 15:58:05 +00:00
ericdecanini
f18808b4d7 refactors FtueAuthVariant with new feature flag on registration and signin 2022-02-23 16:53:16 +01:00
Benoit Marty
9e9dc1defd Merge pull request #5318 from vector-im/erikj/log_since_token
Also record `next_batch` on `/sync` response
2022-02-23 13:47:48 +01:00
ericdecanini
713248805c adds feature flag usage to registration flow result 2022-02-23 13:25:16 +01:00
Adam Brown
5a9cf0c978 adding changelog entry 2022-02-23 12:14:31 +00:00
ericdecanini
507ddc2d4a adds forceLoginFallback debug feature 2022-02-23 13:02:45 +01:00
Adam Brown
9a80ff7673 fixing space menu items not being clicked on during sanity test
- adds a separate clickOn helper for interacting with dialog bottom sheets, it seems the space menu sheet lives in a separte root to the rest of the suite (could be the fast switching of highlighting existing issues)
2022-02-23 12:01:47 +00:00
Benoit Marty
a2f3b43683 Merge pull request #5316 from vector-im/feature/fga/update_reaction_button_layout
#5313: Update reaction button layout.
2022-02-23 12:36:54 +01:00
Erik Johnston
10b07c35a0 Newsfile 2022-02-23 11:24:47 +00:00
Erik Johnston
7997435003 Also record next_batch 2022-02-23 11:23:05 +00:00
Benoit Marty
3707b4e2ca Merge pull request #5312 from vector-im/erikj/log_since_token
Log `since` token when doing an incremental sync
2022-02-23 12:02:15 +01:00
Benoit Marty
276c526cef Merge pull request #5158 from vector-im/feature/adm/ftue-post-account-creation
FTUE - Account created screen
2022-02-23 11:54:02 +01:00
Ahmed Radhouane Belkilani
91ab4726ad #3296
- Fixes after review.

Signed-off-by: Ahmed Radhouane Belkilani <arbelkilani@gmail.com>
2022-02-23 11:34:43 +01:00
Ahmed Radhouane Belkilani
b39a3ab42e #4642 [Review]
- use ObjectAnimator instead of ValueAnimator in TypingMessageDots.

Signed-off-by: Ahmed Radhouane Belkilani <arbelkilani@gmail.com>
2022-02-23 11:34:42 +01:00
Ahmed Radhouane Belkilani
5deabfae9d #4642 [Review]
- revert vector_settings_round_avatar.xml file to develop state.

Signed-off-by: Ahmed Radhouane Belkilani <arbelkilani@gmail.com>
2022-02-23 11:34:41 +01:00
Ahmed Radhouane Belkilani
f6c6e92483 Delete Uncommitted_changes_before_rebase__Default_Changelist_.xml 2022-02-23 11:34:41 +01:00
Ahmed Radhouane Belkilani
a9b8871177 #3296
- prevent timeline jump up while TypingMessageView populated.

Signed-off-by: Ahmed Radhouane Belkilani <arbelkilani@gmail.com>
2022-02-23 11:34:40 +01:00
Ahmed Radhouane Belkilani
da9fdf1b18 #3296
- Adding a typing message notification view at the bottom of the timeline in rooms.

Signed-off-by: Ahmed Radhouane Belkilani <arbelkilani@gmail.com>
2022-02-23 11:34:39 +01:00
Michael Kaye
bd8d71c420 Notify channel on sanity test result 2022-02-23 10:26:46 +00:00
ganfra
e3b67fe30b #5313: Update reaction button layout. 2022-02-23 11:26:21 +01:00
Erik Johnston
6eae151e78 Newsfile 2022-02-23 10:26:02 +00:00
Erik Johnston
6105d7bea9 Log since token when doing an incremental sync
This aids debugging when `/sync` does something weird server side. Since we already log a line each time we do an incremental sync this shouldn't cause a problem.
2022-02-23 10:22:03 +00:00
Benoit Marty
924a4f8c94 Merge pull request #5309 from vector-im/feature/eric/modules-to-subfolder
#5289:  Moves modules to subfolders under library
2022-02-22 22:58:14 +01:00
Benoit Marty
6e7aa01437 Merge pull request #5303 from vector-im/feature/fga/improve_bubble_layout
Feature/fga/improve bubble layout
2022-02-22 22:56:09 +01:00
Benoit Marty
d00a23752e Update changelog 2022-02-22 21:42:56 +01:00
Benoit Marty
cc77afbf66 Version++ 2022-02-22 21:33:20 +01:00
Benoit Marty
ad1c4bf790 Merge branch 'release/1.4.2' into develop 2022-02-22 21:32:04 +01:00
ericdecanini
44452c9fcd adds changelog file 2022-02-22 20:03:00 +01:00
ericdecanini
4651c45b2f moves multipicker module to library 2022-02-22 19:48:48 +01:00
ericdecanini
c1afb3d5d1 moves attachment-viewer module to library 2022-02-22 19:44:30 +01:00
ericdecanini
b4ceaefeab moves diff-match-patch module to library 2022-02-22 19:40:17 +01:00
ganfra
9911233038 Bubbles: clean and add changelog 2022-02-22 18:05:47 +01:00
ganfra
d0413aef55 Update paddings 2022-02-22 15:14:33 +01:00
Adam Brown
4975406e66 returning true to mark the fragment back as handled by the fragment itself 2022-02-22 10:34:24 +00:00
Adam Brown
182dc2a098 making use of debounced clicks to avoid potential extra clicks 2022-02-22 10:31:00 +00:00
Adam Brown
06f2ca1379 using en-us copy as that's our default locale 2022-02-22 10:29:48 +00:00
ganfra
0d6642c32c Bubble: clean up 2022-02-17 19:13:11 +01:00
ganfra
10bf3e56fc Bubble: better handling of timestamp position for text messages 2022-02-17 19:09:51 +01:00
Adam Brown
3f9e7a74d6 reusing the PostViewEvent action as a way to avoid redundant duplicated actions/events 2022-02-15 17:23:16 +00:00
Adam Brown
e0f99e3b17 formatting 2022-02-07 10:02:52 +00:00
Adam Brown
8983bfa36c adding changelog entry 2022-02-07 09:22:36 +00:00
Adam Brown
c64004fad6 fixing formatting 2022-02-07 09:22:36 +00:00
Adam Brown
6687e2cad4 dropping the backstack when switching to the account created flow to avoid going back to the sign up screens 2022-02-07 09:22:36 +00:00
Adam Brown
d186de7472 manually handling the back event as a take me home action 2022-02-07 09:22:36 +00:00
Adam Brown
3a961e0803 avoiding showing the loading when the last screen is not a transition into the main app 2022-02-07 09:22:36 +00:00
Adam Brown
023b32367b adding post account created screen, going to the personalise next steps are still TODO 2022-02-07 09:22:36 +00:00
Adam Brown
8212b7e219 completing the onboarding via dedicated event rather than observing state
- allows for greater control of the flow (such as adding new screens inbetween the creation and exit with flags)
2022-02-07 09:22:36 +00:00
Adam Brown
9b12f295d1 adding ftue personalize feature flag whilst under development 2022-02-07 09:22:36 +00:00
331 changed files with 7189 additions and 32841 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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

259
.github/workflows/nightly.yml vendored Normal file
View File

@@ -0,0 +1,259 @@
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 - 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-all.log
chmod 777 emulator-all.log
adb logcat >> emulator-all.log &
./gradlew $CI_GRADLE_ARG_PROPERTIES matrix-sdk-android:connectedDebugAndroidTest
- name: Read Results
if: always()
id: get-comment-body
run: python3 ./tools/ci/render_test_output.py all ./matrix-sdk-android/build/outputs/androidTest-results/connected/*.xml
- name: Remove adb logcat
if: always()
run: pkill -9 adb
- name: Upload Test Report Log
uses: actions/upload-artifact@v2
if: always()
with:
name: integrationtest-error-results
path: |
emulator-all.log
ui-tests:
name: UI 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
- 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/
codecov-units:
name: Unit tests (with code coverage)
runs-on: macos-latest
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 allCodeCoverageReport $CI_GRADLE_ARG_PROPERTIES
- name: Upload Codecov data
uses: actions/upload-artifact@v2
if: always()
with:
name: codecov-xml
path: |
build/reports/jacoco/allCodeCoverageReport/allCodeCoverageReport.xml
sonarqube:
name: Sonaqube scan and coverage report
runs-on: macos-latest
if: always()
needs:
- codecov-units
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-
- uses: actions/download-artifact@v3
with:
name: codecov-xml # will restore to allCodeCoverageReport.xml by default; we restore to the same location in following tasks
- run: mkdir -p build/reports/jacoco/allCodeCoverageReport/
- run: mv allCodeCoverageReport.xml build/reports/jacoco/allCodeCoverageReport/
- 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:
name: Matrix Notification
runs-on: ubuntu-latest
needs:
- integration-tests
- ui-tests
- codecov-units
- 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 />{{ icon conclusion }}{{name}} <font colour='{{color conclusion}}'>{{conclusion}} at {{completed_at}} <a href=\"{{html_url}}\">[details]</a></font>{{/if}}{{/with}}{{/each}}"

View File

@@ -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

View File

@@ -1,80 +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=-Xmx4g
-Porg.gradle.parallel=false
jobs:
integration-tests:
name: Sanity Tests (Synapse)
runs-on: macos-latest
strategy:
fail-fast: false
matrix:
api-level: [ 28 ]
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:
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: sanity-error-results
path: |
emulator.log
failure_screenshots/

View File

@@ -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

View File

@@ -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
@@ -27,6 +31,9 @@ jobs:
${{ runner.os }}-gradle-
- name: Run unit tests
run: ./gradlew clean test $CI_GRADLE_ARG_PROPERTIES -PallWarningsAsErrors=false --stacktrace
- name: Format unit test results
if: always()
run: python3 ./tools/ci/render_test_output.py unit ./**/build/test-results/**/*.xml
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@v1
if: always() &&

View File

@@ -1,5 +1,5 @@
Changes in Element v1.4.2 (2022-02-22)
======================================
Changes in Element v1.4.2 (2022-02-22 Palindrome Day!)
======================================================
Features ✨
----------

View File

@@ -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: [![Buildkite](https://badge.buildkite.com/ad0065c1b70f557cd3b1d3d68f9c2154010f83c4d6f71706a9.svg?branch=develop)](https://buildkite.com/matrix-dot-org/element-android/builds?branch=develop) Nighly sanity test status: [![allScreensTest](https://github.com/vector-im/element-android/actions/workflows/sanity_test.yml/badge.svg)](https://github.com/vector-im/element-android/actions/workflows/sanity_test.yml)
Nightly build: [![Buildkite](https://badge.buildkite.com/ad0065c1b70f557cd3b1d3d68f9c2154010f83c4d6f71706a9.svg?branch=develop)](https://buildkite.com/matrix-dot-org/element-android/builds?branch=develop) Nighly test status: [![allScreensTest](https://github.com/vector-im/element-android/actions/workflows/nightly.yml/badge.svg)](https://github.com/vector-im/element-android/actions/workflows/nightly.yml)
# New Android SDK

View File

@@ -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
@@ -105,11 +105,21 @@ task clean(type: Delete) {
delete rootProject.buildDir
}
def launchTask = getGradle()
.getStartParameter()
.getTaskRequests()
.toString()
.toLowerCase()
if (launchTask.contains("codeCoverageReport".toLowerCase())) {
apply from: 'coverage.gradle'
}
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 {
@@ -119,10 +129,12 @@ sonarqube {
property "sonar.projectVersion", project(":vector").android.defaultConfig.versionName
property "sonar.sourceEncoding", "UTF-8"
property "sonar.links.homepage", "https://github.com/vector-im/element-android/"
property "sonar.links.ci", "https://buildkite.com/matrix-dot-org/element-android"
property "sonar.links.ci", "https://github.com/vector-im/element-android/actions"
property "sonar.links.scm", "https://github.com/vector-im/element-android/"
property "sonar.links.issue", "https://github.com/vector-im/element-android/issues"
property "sonar.organization", "new_vector_ltd_organization"
property "sonar.java.coveragePlugin", "jacoco"
property "sonar.coverage.jacoco.xmlReportPaths", "${project.buildDir}/reports/jacoco/allCodeCoverageReport/allCodeCoverageReport.xml"
property "sonar.login", project.hasProperty("SONAR_LOGIN") ? SONAR_LOGIN : "invalid"
}
}
@@ -138,17 +150,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
View File

@@ -0,0 +1 @@
Typing notifications moved from the header to the bottom of the timeline.

1
changelog.d/4319.bugfix Normal file
View 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
View File

@@ -0,0 +1 @@
Override task affinity to prevent unknown activities running in our app tasks.

1
changelog.d/4642.bugfix Normal file
View File

@@ -0,0 +1 @@
Update the top bar in a room: remove topic and typing information

1
changelog.d/5005.feature Normal file
View File

@@ -0,0 +1 @@
Add possibility to save media from Gallery + reorder choices in message context menu

1
changelog.d/5158.wip Normal file
View File

@@ -0,0 +1 @@
Starts the FTUE account personalisation flow by adding an account created screen behind a feature flag

1
changelog.d/5269.misc Normal file
View 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
View File

@@ -0,0 +1 @@
Improve Bubble layouts rendering.

1
changelog.d/5309.misc Normal file
View File

@@ -0,0 +1 @@
Moves attachment-viewer, diff-match-patch, and multipicker modules to subfolders under library

1
changelog.d/5312.misc Normal file
View 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
View File

@@ -0,0 +1 @@
Update reaction button layout.

1
changelog.d/5314.misc Normal file
View File

@@ -0,0 +1 @@
Notify element-android channel each time a nightly build completes.

1
changelog.d/5318.misc Normal file
View 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
View File

@@ -0,0 +1 @@
Adds forceLoginFallback feature flag and usages to FTUE login and registration

1
changelog.d/5326.misc Normal file
View File

@@ -0,0 +1 @@
[Export e2ee keys] use appName instead of element

1
changelog.d/5330.misc Normal file
View File

@@ -0,0 +1 @@
Continue improving realm usage.

1
changelog.d/5330.sdk Normal file
View File

@@ -0,0 +1 @@
Change name of getTimeLineEvent and getTimeLineEventLive methods to getTimelineEvent and getTimelineEventLive.

1
changelog.d/5348.misc Normal file
View 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
View File

@@ -0,0 +1 @@
Remove about 700 unused strings and their translations

1
changelog.d/5361.misc Normal file
View File

@@ -0,0 +1 @@
Creates dedicated VectorOverrides for forcing behaviour for local testing/development

1
changelog.d/5379.misc Normal file
View File

@@ -0,0 +1 @@
Cleanup unused threads build configurations

1
changelog.d/5392.misc Normal file
View File

@@ -0,0 +1 @@
Upgrades material dependency version from 1.4.0 to 1.5.0

1
changelog.d/5394.bugfix Normal file
View File

@@ -0,0 +1 @@
Fix incorrect media cache size in settings

1
changelog.d/5402.bugfix Normal file
View File

@@ -0,0 +1 @@
[Create room] Setting an avatar when creating a room had no effect

1
changelog.d/5418.feature Normal file
View File

@@ -0,0 +1 @@
Improves settings error dialog messaging when changing avatar or display name fails

55
coverage.gradle Normal file
View File

@@ -0,0 +1,55 @@
def excludes = [ ]
def initializeReport(report, projects, classExcludes) {
projects.each { project -> project.apply plugin: 'jacoco' }
report.executionData { fileTree(rootProject.rootDir.absolutePath).include("**/build/jacoco/*.exec") }
report.reports {
xml.enabled true
html.enabled true
csv.enabled false
}
gradle.projectsEvaluated {
def androidSourceDirs = []
def androidClassDirs = []
projects.each { project ->
switch (project) {
case { project.plugins.hasPlugin("com.android.application") }:
androidClassDirs.add("${project.buildDir}/tmp/kotlin-classes/debug")
androidSourceDirs.add("${project.projectDir}/src/main/kotlin")
androidSourceDirs.add("${project.projectDir}/src/main/java")
break
case { project.plugins.hasPlugin("com.android.library") }:
androidClassDirs.add("${project.buildDir}/tmp/kotlin-classes/debug")
androidSourceDirs.add("${project.projectDir}/src/main/kotlin")
androidSourceDirs.add("${project.projectDir}/src/main/java")
break
default:
report.sourceSets project.sourceSets.main
}
}
report.sourceDirectories.setFrom(report.sourceDirectories + files(androidSourceDirs))
def classFiles = androidClassDirs.collect { files(it).files }.flatten()
report.classDirectories.setFrom(files((report.classDirectories.files + classFiles).collect {
fileTree(dir: it, excludes: classExcludes)
}))
}
}
def collectProjects(predicate) {
return subprojects.findAll { it.buildFile.isFile() && predicate(it) }
}
task allCodeCoverageReport(type: JacocoReport) {
outputs.upToDateWhen { false }
rootProject.apply plugin: 'jacoco'
// to limit projects in a specific report, add
// def excludedProjects = [ ... ]
// def projects = collectProjects { !excludedProjects.contains(it.name) }
def projects = collectProjects { true }
dependsOn { projects*.test }
initializeReport(it, projects, excludes)
}

View File

@@ -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",

View File

@@ -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',
@@ -150,6 +156,7 @@ ext.groups = [
'org.ec4j.core',
'org.glassfish.jaxb',
'org.hamcrest',
'org.jacoco',
'org.jetbrains',
'org.jetbrains.intellij.deps',
'org.jetbrains.kotlin',
@@ -175,6 +182,7 @@ ext.groups = [
'org.sonatype.oss',
'org.testng',
'org.threeten',
'org.webjars',
'ru.noties',
'xerces',
'xml-apis',

View 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

View 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

View 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

View 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

View 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

View 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

View File

@@ -0,0 +1,2 @@
Perubahan utama dalam versi ini: Implementasi awal perpesanan utasan. Gelembung pesan.
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.4.0

View File

@@ -0,0 +1,2 @@
Perubahan utama dalam versi ini: tambahkan dukungan untuk @room dan pemungutan suara tertutup dan banyak perubahan kecil lainnya.
Catatan perubahan lanjutan: https://github.com/vector-im/element-android/releases/tag/v1.4.2

View File

@@ -0,0 +1,2 @@
Modifiche principali in questa versione: prima implementazione delle discussioni. Messaggi a bolla.
Cronologia completa: https://github.com/vector-im/element-android/releases/tag/v1.4.0

View File

@@ -0,0 +1,2 @@
Modifiche principali in questa versione: aggiunto supporto a @stanza e sondaggi non divulgati, molte altre modifiche.
Cronologia completa: https://github.com/vector-im/element-android/releases/tag/v1.4.2

View File

@@ -0,0 +1,2 @@
Principais mudanças nesta versão: Implementação inicial de mensagens de thread. Bolhas de mensagem.
Changelog completo: https://github.com/vector-im/element-android/releases/tag/v1.4.0

View File

@@ -0,0 +1,2 @@
Principais mudanças nesta versão: adicionar suporte para @room e sondagens não-divulgadas entre muitas outras pequenas mudanças.
Changelog completo: https://github.com/vector-im/element-android/releases/tag/v1.4.2

View File

@@ -0,0 +1,2 @@
Hlavné zmeny v tejto verzii: Počiatočná implementácia správ vo vláknach. Správy v bublinách.
Úplný zoznam zmien: https://github.com/vector-im/element-android/releases/tag/v1.4.0

View File

@@ -0,0 +1,2 @@
Hlavné zmeny v tejto verzii: pridanie podpory pre @miestnost a nezverejnené ankety a mnoho ďalších drobných zmien.
Úplný zoznam zmien: https://github.com/vector-im/element-android/releases/tag/v1.4.2

View File

@@ -0,0 +1,2 @@
Основні зміни в цій версії: Початкова реалізація тредів повідомлень. Повідомлення бульбашки.
Вичерпний перелік змін: https://github.com/vector-im/element-android/releases/tag/v1.4.0

View File

@@ -0,0 +1,2 @@
Основні зміни в цій версії: додано підтримку до @room і нерозкритих опитувань та багато інших незначних змін.
Вичерпний перелік змін: https://github.com/vector-im/element-android/releases/tag/v1.4.2

View File

@@ -0,0 +1,2 @@
此版本中的主要變動:訊息討論串的初始實作。訊息泡泡。
完整的變更紀錄https://github.com/vector-im/element-android/releases/tag/v1.4.0

View File

@@ -0,0 +1,2 @@
此版本中的主要變動:新增對 @room 的支援與未公開的投票,以及其他許多小變動。
完整的變更紀錄https://github.com/vector-im/element-android/releases/tag/v1.4.2

View File

@@ -45,6 +45,8 @@ import kotlin.math.abs
abstract class AttachmentViewerActivity : AppCompatActivity(), AttachmentEventListener {
protected val rootView: View
get() = views.rootContainer
protected val pager2: ViewPager2
get() = views.attachmentPager
protected val imageTransitionView: ImageView
@@ -298,10 +300,11 @@ abstract class AttachmentViewerActivity : AppCompatActivity(), AttachmentEventLi
private fun createSwipeToDismissHandler(): SwipeToDismissHandler =
SwipeToDismissHandler(
swipeView = views.dismissContainer,
shouldAnimateDismiss = { shouldAnimateDismiss() },
onDismiss = { animateClose() },
onSwipeViewMove = ::handleSwipeViewMove)
swipeView = views.dismissContainer,
shouldAnimateDismiss = { shouldAnimateDismiss() },
onDismiss = { animateClose() },
onSwipeViewMove = ::handleSwipeViewMove
)
private fun createSwipeDirectionDetector() =
SwipeDirectionDetector(this) { swipeDirection = it }

Some files were not shown because too many files have changed in this diff Show More