Commit Graph

155 Commits

Author SHA1 Message Date
Benoit Marty 4f60ee2eb2 Fix warning in Versions.kt: const and naming convention. 2024-10-31 09:28:03 +01:00
renovate[bot] d371c49fad Update wysiwyg to v2.37.13 (#3596)
* Update wysiwyg to v2.37.13

* Update licenses to include AGPL3 and remove unused ones

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2024-10-04 14:49:39 +00:00
Benoit Marty 1e91e8b356 Fix building the app using a local SDK.
Inject `AnalyticsService` instead of `UtdTracker` since `UtdTracker` requires access to `org.matrix.rustcomponents.sdk.UnableToDecryptDelegate`
2024-10-04 12:01:30 +02:00
Jorge Martin Espinosa f8fa218146 Upgrade the used JDK in the project to v21 (#3582)
* Upgrade the used JDK in the project to v21

* Use it for CI too

* Centralise java language version

* Fix deprecations, tests and lint issues

* Fix coverage taking into account `@Preview` annotated code.

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-10-03 09:38:03 +00:00
Jorge Martin Espinosa 79c17f714f Use Anvil KSP instead of the Square KAPT one (#3564)
* Use Anvil KSP instead of the Square KAPT one

* Fix several configuration cache, lint and test issues

* Allow incremental kotlin compilation in the CI

* Workaround Robolectric + Compose issue that caused `AppNotIdleException`

* Update the `enterprise` commit hash

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2024-10-02 11:52:17 +00:00
Jorge Martin Espinosa eeec7cc785 Centralise the DI code generation logic (#3562)
* Create Anvil extension helper

* Use the helper everywhere
2024-09-30 12:20:28 +00:00
Benoit Marty 4fc187896a Fix copy paste error 2024-09-24 13:40:29 +02:00
Benoit Marty 1a979cd142 Use ModulesConfig for push provider modules. 2024-09-24 12:31:18 +02:00
Benoit Marty f61df38e55 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
Benoit Marty 965e445d04 Replace OSS licenses plugin with Licensee and some manually done UI.
This should fix both configuration cache and reproducible F-droid builds.

Cleanup and remove gplay/fdroid diff on open source licenses.

Co-authored by @jmartinesp
2024-09-02 21:11:52 +02:00
Benoit Marty 766ae389ce Add generated screen to show open source licenses.
For Google Play variant only
2024-07-17 15:53:08 +02:00
Benoit Marty 9440d08c20 Create module :appicon:enterprise 2024-07-03 17:20:13 +02:00
Benoit Marty 8d1a212bfd Move application icon to their own module, to be able to have another icon for Element Enterprise 2024-07-03 15:15:53 +02:00
Jorge Martin Espinosa b0cebf5ca0 Improve screenshot testing with ComposablePreviewScanner (#3125)
* Use ComposablePreviewScanner to rework how screenshot testing works
* Add test sharding
* Update screenshots
* Fixes for Element Gallery

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-07-03 13:05:06 +02:00
Benoit Marty 0d8064b9da Use different groups for Element Enterprise 2024-07-02 17:21:03 +02:00
Benoit Marty 5506e2ab00 Element Enterprise: use different appId for nightly build. 2024-07-02 14:58:13 +02:00
Benoit Marty 6c4e7ec85e Merge pull request #3025 from element-hq/feature/bma/elementEnterprise
Element enterprise (EE) foundations
2024-07-01 17:08:40 +02:00
Benoit Marty 5430d792d1 Remove unnecessary packaging configuration. 2024-07-01 11:54:54 +02:00
Benoit Marty 20b738b51d Add a check on isEnterpriseBuild before including enterprise module.
This is not strictly necessary, since if the enterprise modules are not there, nothing will be included by `allEnterpriseImpl()`, but for clarity, it's better to add this check.
2024-07-01 11:53:43 +02:00
Benoit Marty a457561b47 Remove towncrier template. 2024-06-27 12:16:34 +02:00
Benoit Marty a565a0396f Remove towncrier invocation when building nightly. 2024-06-27 11:52:38 +02:00
Benoit Marty 9b5738476c Gradle: log which application is built. 2024-06-26 11:59:46 +02:00
Benoit Marty 9e2fb0d0c2 Change application name for EXE build 2024-06-26 11:59:46 +02:00
Benoit Marty d8e5c0cf34 lift out assignment. 2024-06-26 11:59:45 +02:00
Benoit Marty 1b72221df7 Add first EnterpriseService. 2024-06-26 11:59:41 +02:00
Benoit Marty 828cf4cc8d Remove wrong dependency. 2024-06-14 10:29:48 +02:00
Benoit Marty 6ff1af3276 Add Explicit list of supported languages, generated from Localazy data. 2024-05-06 14:51:19 +02:00
Tonkku 86838e7277 Enable support for Android per-app language preferences (#2795)
* Enable support for Android per-app language preferences

* Add changelog entry
2024-05-06 09:10:49 +02:00
Benoit Marty 7bbcb719d5 Implement a migration mechanism to handle internal stuff which need to occur during application upgrade.
Remove VectorFileLogger, it was dead code.
2024-04-24 11:17:23 +02:00
Jorge Martin Espinosa 810c0ed8f3 Test and verify coverage only on debug variant (#2556)
* Test and verify coverage only on debug variant

* Set files to upload

* Fix also nightlyReports flow
2024-03-15 15:52:33 +01:00
Benoit Marty cccfdfbcc7 Restore branch and git sha, to use it in logs and in rageshakes.
Remove quite useless `gitRevisionDate`.
2024-01-25 14:16:21 +01:00
Benoit Marty 55db8fb200 Only call setupKover() for the app, not for minimal.
minimal does not have the gplay variant.
2024-01-11 22:03:34 +01:00
Benoit Marty df9f6a9809 Cleanup 2024-01-11 21:42:04 +01:00
Benoit Marty 31fe516a49 Ensure that FDroid build will not include Firebase push provider.
`allLibrariesImpl()` is also used by the midule uitest, and in this case `gplayImplementation` cannot be found. Since the push provider modules do not contain any ui, it's fine to move the dependency declaration to the app module.
2024-01-11 21:42:04 +01:00
Benoit Marty db6b52f8bf Update gradle tasks and paths regarding the new gplay and fdroid flavor. 2024-01-11 21:42:04 +01:00
Benoit Marty fa05b18d32 Create gplay and fdroid variant 2024-01-11 21:42:04 +01:00
Jorge Martin Espinosa f281c6c365 Don't apply Kover to projects with AAR libraries (#2211)
* Don't apply Kover to projects with AAR libraries

* Move the Kover configuration to the `plugins` project
2024-01-11 21:16:31 +01:00
Benoit Marty 371065bfdd Exclude ContentToPreview from coverage, either by using annotation @ExcludeFromCoverage, or by inlining it. 2024-01-09 17:56:01 +01:00
Benoit Marty b4481dc2a8 Fix the wrong coverage report
It wasn't taking into account any test result from the debug runs or screenshot tests

Co-authored-by: Jorge Martin Espinosa <jorgem@element.io>
2024-01-09 17:07:26 +01:00
Benoit Marty 80c69e7cf7 Migrate "When running on the CI, run only debug test variants".
Following notice here: https://github.com/Kotlin/kotlinx-kover/blob/v0.7.0/docs/gradle-plugin/migrations/migration-to-0.7.0.md#using-isdisabled-boolean-is-an-error-kover-test-task-config-was-removed
2024-01-09 11:04:28 +01:00
Benoit Marty 3b06576d21 Upgrade Kover to 0.7.5 2024-01-09 10:51:30 +01:00
Jorge Martin Espinosa 7fdba39d6d Disable vector XML rasterisation on API 23 (#2128)
* Disable vector XML rasterisation on API 23

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-12-29 11:41:08 +00:00
Benoit Marty d55282a775 Add test for IntentProviderImpl 2023-11-24 09:56:45 +01:00
Benoit Marty 5850f5342d Move Knit to Gradle catalog and use alias(libs.plugins.kotlin.serialization). Fix issue with JNA 2023-11-13 09:58:00 +01:00
Benoit Marty 067734ecb9 Move appdistribution declarations to Gradle catalog 2023-11-10 16:39:05 +01:00
renovate[bot] 515dca86b6 Update plugin com.google.firebase.appdistribution to v4.0.1 (#1656)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-27 08:12:44 +02:00
ganfra fdd9396089 Pin: add tests and make LockScreenConfig an injectable data class 2023-10-25 18:39:39 +02:00
Marco Romano 79d2941fe4 Include desugaring lib also in library modules (#1604)
## Type of change

- [ ] Feature
- [ ] Bugfix
- [x] Technical
- [ ] Other :

## Content

Includes the `coreLibraryDesugaring(libs.android.desugar)` dependency in all modules which use one of our gradle plugins.

## Motivation and context

Right now desugaring is enabled also in library modules but the desugar dependency is not included in those.
This causes some unwanted side effects such as being unable to run compose previews in an emu.

This change will also include the desugar dependency in those libraries.
2023-10-19 09:00:32 +00:00
Benoit Marty c0aa70f7f6 Move konsist test to their own module. 2023-10-12 18:41:38 +02:00
Benoit Marty 6e5caebc60 Add some Konsist test. 2023-10-10 14:21:36 +02:00