* 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>
* 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>
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
* Update android.gradle.plugin
* Fix release builds with AGP 8.5 by removing the minification config in each library module. I believe this is now centralised.
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
* 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>
Fix the warning: `provider#androidx.startup.InitializationProvider was tagged at AndroidManifest.xml:149 to remove other declarations but no other declaration present`
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.
* Add full screen intent permissions banner, creating `:libraries:fullscreenintent` modules.
* Add it to notification settings too:
- Create `libraries:fullscreenintent` modules for the permission presenter and associated data.
- Add the presenter and states to `NotificationSettingsPresenter` and `NotificationSettingsView`.
* Use the right API to check for full screen intent permissions.
- Use the right package name for `:libraries:permission` contents.
* Fix broken tests (flaky?)
* Ignore coverage verification for fake and small presenters
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Fix tracing configuration in debug and nightlies:
- Debug will now write the logs to disk too.
- Nightly will be able to customise tracing filters.
- Improved the configure tracing and bug report screens.
* Update screenshots
* Add changelog
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>