Commit graph

158 commits

Author SHA1 Message Date
Benoit Marty
c9890d3073 Move build parameters to a common file 2025-02-20 17:58:41 +01:00
Benoit Marty
9a49f5be6f Ignore dependency that are not third-party licenses to us. 2025-01-07 17:29:16 +01:00
Benoit Marty
05fc76822a Apply dual licenses: AGPL + Element Commercial to file headers.
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."
2025-01-07 10:05:04 +01:00
Benoit Marty
6a1e9d0321 Fix warning in Versions.kt: const and naming convention. 2024-10-31 09:28:03 +01:00
renovate[bot]
9c6df9b5c9 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
ab7c5e5cc7 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
60f1bf6e54 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
4a43fcb69a 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
2efdb3ae45 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
fea22313fb Fix copy paste error 2024-09-24 13:40:29 +02:00
Benoit Marty
77d7bacaf6 Use ModulesConfig for push provider modules. 2024-09-24 12:31:18 +02:00
Benoit Marty
2b016227e9 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
Benoit Marty
b9169e6c76 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
c2c7f6b755 Add generated screen to show open source licenses.
For Google Play variant only
2024-07-17 15:53:08 +02:00
Benoit Marty
b804e5488b Create module :appicon:enterprise 2024-07-03 17:20:13 +02:00
Benoit Marty
ca8f13cfaf 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
950e502ca6 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
0e23e081ce Use different groups for Element Enterprise 2024-07-02 17:21:03 +02:00
Benoit Marty
dc8d3dc7fe Element Enterprise: use different appId for nightly build. 2024-07-02 14:58:13 +02:00
Benoit Marty
6c0719e067 Merge pull request #3025 from element-hq/feature/bma/elementEnterprise
Element enterprise (EE) foundations
2024-07-01 17:08:40 +02:00
Benoit Marty
0fb7f621ba Remove unnecessary packaging configuration. 2024-07-01 11:54:54 +02:00
Benoit Marty
c4bb13098f 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
77d10eaf39 Remove towncrier template. 2024-06-27 12:16:34 +02:00
Benoit Marty
83d5904f28 Remove towncrier invocation when building nightly. 2024-06-27 11:52:38 +02:00
Benoit Marty
f339bd5d25 Gradle: log which application is built. 2024-06-26 11:59:46 +02:00
Benoit Marty
96249c14bd Change application name for EXE build 2024-06-26 11:59:46 +02:00
Benoit Marty
03491b81e7 lift out assignment. 2024-06-26 11:59:45 +02:00
Benoit Marty
d43a8c8bea Add first EnterpriseService. 2024-06-26 11:59:41 +02:00
Benoit Marty
edc9a496b0 Remove wrong dependency. 2024-06-14 10:29:48 +02:00
Benoit Marty
c64fb6f510 Add Explicit list of supported languages, generated from Localazy data. 2024-05-06 14:51:19 +02:00
Tonkku
474a1412ed 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
f6b5b8419b 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
b488cbbfb8 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
f47b9827c5 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
9a8437f4a1 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
2b749f7683 Cleanup 2024-01-11 21:42:04 +01:00
Benoit Marty
dfc81c7fb1 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
345b7e9ab6 Update gradle tasks and paths regarding the new gplay and fdroid flavor. 2024-01-11 21:42:04 +01:00
Benoit Marty
e4ef00908b Create gplay and fdroid variant 2024-01-11 21:42:04 +01:00
Jorge Martin Espinosa
e859b58f09 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
7fbe848243 Exclude ContentToPreview from coverage, either by using annotation @ExcludeFromCoverage, or by inlining it. 2024-01-09 17:56:01 +01:00
Benoit Marty
ffa59333a1 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
8f2a1e9e2d 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
b727312040 Upgrade Kover to 0.7.5 2024-01-09 10:51:30 +01:00
Jorge Martin Espinosa
4f296ffb49 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
3c4629e74c Add test for IntentProviderImpl 2023-11-24 09:56:45 +01:00
Benoit Marty
79806852ca 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
33fe608459 Move appdistribution declarations to Gradle catalog 2023-11-10 16:39:05 +01:00
renovate[bot]
7456d87bde 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
a34604512d Pin: add tests and make LockScreenConfig an injectable data class 2023-10-25 18:39:39 +02:00