A deeper workaround is applied in 19.0 (see for example #16565, #16586)
but for 18.0, this is an attempt to bypass the constant issue of models
failing to load with Chrome 152 and later versions, by retrying on
failure.
Relates-to: #13862 (may fix)
chore(android): log legacy cloud keyboards 🍒🏠
This adds a Sentry log if a user is still using legacy cloud keyboards. We do this so that we will learn if there are still users out there or if we can remove the code that deals with those keyboards.
Cherry-pick-of: #16237
This adds a Sentry log if a user is still using legacy cloud keyboards.
We do this so that we will learn if there are still users out there
or if we can remove the code that deals with those keyboards.
Cherry-pick-of: #16237
Test-bot: skip
fix(linux): add dependency on `procps` 🍒🏠
In the near future `pidof` will be provided by the `procps` package which isn't installed by default. This change adds a dependency on `procps` to fix this problem. Fixes Debian bug #1136515.
This PR supersedes the identical PR #15968 which had problems with the source verification check because it was created at a time when the check was broken.
Fixes: #15965
Cherry-pick-of: #15967
Supersedes: #15968
In the near future `pidof` will be provided by the `procps` package
which isn't installed by default. This change adds a dependency on
`procps` to fix this problem. Fixes Debian bug #1136515.
Fixes: #15965
Cherry-pick-of: #15967
Build-bot: skip
Test-bot: skip
fix(linux): fix memory problem 🍒
This fixes a problem identified by devin.ai: Because of the operator precedence the previous code caused `memmove` to read `sizeof(commit_queue_item) - 1` bytes past the end of `commit_queue`. With this change `memmove` now reads the intended `MAX_QUEUE_SIZE - 1` `commit_queue_items`.
Cherry-pick-of: #15823
This fixes a problem identified by devin.ai: Because of the operator
precedence the previous code caused `memmove` to read
`sizeof(commit_queue_item) - 1` bytes past the end of `commit_queue`.
With this change `memmove` now reads the intended `MAX_QUEUE_SIZE - 1`
`commit_queue_items`.
Cherry-pick-of: #15823
Test-bot: skip
Matches property in keyman-touch-layout.spec.json. Update to version 2.1.2.
Test-bot: skip
See-also: keymanapp/api.keyman.com#338
Cherry-pick-of: #15787
The boilerplate code for custom lexical models has never really been
tested. For use in a browser/worker context, we need to define
`exports`. The added unit test verifies that the model will build.
Test-bot: skip
Cherry-pick-of: #15777
Relative paths would cause `kmc copy` to fail to find sources files for
the project, because component paths would be constructed incorrectly.
The cleanest fix is to ensure that we always full resolve local file
paths before attempting to copy the project.
Fixes: #15659
Cherry-pick-of: #15700
Without `await`, a 'success' message is always returned, because the
Promise that is returned is not nullish. While the log message was
misleading, the outcome was already correct, because the parent function
`copyProject()` did correctly await the call to `doCopy()`.
Fixes: #15699
Test-bot: skip
Cherry-pick-of: #15701