* Add a check that compose is used along with kotlinx.serialization
There's a known issue that both plugins can't be used in the same module (specifically for kotlin/js targets).
The compose gradle plugin will check for `kotlinx.serialization` and will show a warning.
* Fix PR suggestions
* Update WarnAboutComposeWithSerialization.kt
Update the link for the issue
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>
When users run/package application we will configure Compose to work as standalone application.
It means we will override some global Swing properties in Compose initialization function:
- sets system property `apple.laf.useScreenMenuBar` to true
- sets system property `sun.java2d.uiScale`/`sun.java2d.uiScale.enabled` automatically on Linux
- sets UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName())
When users don't use those tasks (when they use Compose in an existing Swing application, or in an IDEA plugin),
this property will not be set, and so we will not override Swing globals.
* Replace usage of 'de.fuerstenau.buildconfig'
with a custom replacement, because the plugin
does not support Gradle 7.0+ and
there has not been any commit activity in 5 years
(https://github.com/mfuerstenau/gradle-buildconfig-plugin);
* Update 'com.github.johnrengelman.shadow' to 7.0.0
* Always write external tool output logs to files
Previous implementation always passed an empty string to `processStdout`,
when verbose mode was used.
* Print notarization status in non-verbose mode too
* Fix uninitialized lateinit var property exceptions on Linux and Windows
lateinit property nonValidatedMacSigningSettings
was not initialized on Linux and Windows
* Revert reusing app image when creating installer
Previously there was a change to reuse an app image, when creating an installer.
So packaging would happen in two steps:
1. jpackage --type app-image ...
2. jpackage --type msi --app-image /path/to/app/image ...
This way a user could always conveniently inspect, what goes into an installer.
However, that change lead to bizzare crashes on Windows and Linux.
As a workaround, this change reverts reusing an app image,
when creating an installer.
* Fix args filtering when invoking jpackage
"app-image" args can also be used, when creating an installer
w/o predefined app image (e.g. w/o `--app-image ...` argument)
* Fix deb package name for tests on Linux