This enhances the packaging GHA to be able to verify the renamed
core library. Since the GHA packaging build always uses the action
definition from `master` this change has to land before we can
successfully build the PR that does the actual renaming of the core
library and Debian package. Later we can remove the references to
`libkmnkbp0-0` again.
Part of #9733.
Since keyman-system-service is a dependency of ibus-keyman it gets
build when ibus-keyman gets build. However, in that case the `--coverage`
flag doesn't get passed through in which case the `coverage-html`
target is missing from ninja. This change fixes this problem by checking
if ninja has the `coverage-html` target. If not we remove the output
directory which causes the configure action to run again with the
`--coverage` option.
Creating the coverage option to ninja previously didn't work reliably.
This change re-orders the parameters passed to `meson setup` and seems
to work better. Additionally this change refactors the scripts and makes
use of `builder_run_action`.
Ubuntu 20.04 comes with Python 3.8 which doesn't have
`platform.freedesktop_os_release()`. This change catches the exception
if this happens, as well as other exceptions we might get so that the
initialization of Sentry will succeed.
Fixes#9773.
This change adds an index page that can show the reports for the
child projects.
Also fix a path problem in the `keyman-system-service/build.sh` script.
- during installation add to the list of custom keyboards if necessary
- during uninstallation remove from the list of custom keyboards
- if list of custom keyboards has invalid values, remove those before
saving the list
Closes#8598.
Before we add a keyboard we check if we already added this keyboard
(in a different area). If we did (with the same or newer version) we
skip this keyboard. This change now immediately returns whereas previously
we set a flag and then didn't execute the rest of the method.
This change adds additional details to Sentry events so that the "All
Events" tab on keyman.sentry.io will show helpful values in the
"device" and "os" columns instead of emptry strings.
The `hash` method that we previously used calculates the hash based on
the memory location, i.e. with each program run we get a different value
for the same user. This change now uses the md5 algorithm so that the
same user always produces the same hash.
Usually this is done automatically. However, if e.g. no `DISPLAY` variable
is set it'll fail. When we explicitly initialize GTK it still fails, but
shows a more helpful warning instead of throwing a runtime error.
Fixes#9705.