This change fixes a problem if both `master` and a branch added the same
symbol with different version numbers. This causes a merge conflict which
previously caused the API checks to output an error. However, if the
version number in the .symbols file got updated since the base then
it's no error which this change implements.
When running locally it might be beneficial to be able run the API
verification checks without having to build a binary package. This
change allows to omit the `--bin-pkg` parameter and outputs a warning
instead if it's missing.
Names can be Unicode strings or byte arrays. This change allows for both
kinds. Also properly deal with the case when we can't get the name from
the .ttf file. And finally change the test so that we don't need the
`KbdKhmr.ttf` font.
This change adds the `keymanFacename` attribute based on UnicodeFont
or AnsiFont to the root element of the generated .ldml file so that
onboard-keyman can display the proper font for the osk.
Fixes: #12019
This moves `common/predictive-text/` →
`web/src/engine/predictive-text/worker-main/`.
This also moves `common/test/predictive-text/` →
`web/src/test/manual/predictive-text/`. Note though that this testing
tool is still broken.
Fixes: #12134
We no longer build with pbuilder/cowbuilder, so this change removes
that unnecessary code. This also changes the `deb.sh` script which no
longer needs parameters since it's only purpose is now to build the
source package, and removes the no-longer needed targets from `Makefile`.
This solves #9356 as good as possible. We still have the list of
distributions in two places, but I don't see a way to import the list
of distributions to the packaging GHA.
Fixes: #9356
Using the cache when getting data from the server is just an optimization
to speed up things. However, things still work if we don't use the cache.
This change therefore catches the AttributeError that sometimes happen
on some machines for unknown reasons and falls back to not using the
cache.
Fixes: 11855
Fixes: KEYMAN-LINUX-6R
This renames the existing methods that read and write keyboard options
so that it's visible from the name that they read/write keyboard options.
This is in preparation of new methods that read and write more general
options.
This changes re-creates the `<package>.bmp.png` as well as the
`<package>.json` files if they are missing when `km-config` starts.
- `<package.bmp.png` gets created from a `.bmp` or `.ico` file included
in the package, similar to what happens when installing the keyboard.
- `<package>.json` gets created from downloaded metadata, similar to
the installation.
If the files are missing or we can't write to the directory, e.g. if it's
the shared area, we skip the re-creation.
Fixes: #9396
Previously keyboard input was no longer input after manually running
the integration tests. This change fixes this by restarting ibus after
the tests. However, we only want to do that if the ibus instance we
started for the tests got killed. The cleanup script might get called
multiple times, so we need this check.
Most warnings have been cleaned up:
* min meson version is now 1.0
* additional parameters such as check, recursive added
* uses now global_source_root() instead of source_root()
* catting files on Windows wasn't actually working -- used in unit
tests. This is because meson passes paths with forward slashes to
cmd.exe `type` command, which doesn't understand them. This is bad,
because we were running effectively null tests for the affected tests.
Fortunately, the same tests were configured correctly on macOS and
Linux, and were all passing, so no serious damage.
There is one significant warning left:
`WARNING: Project targets '>=1.0' but uses feature deprecated since
'0.64.0': copy arg in configure_file. Use fs.copyfile instead`
Refer to mesonbuild/meson#12792. I have opened a PR against that to
undeprecate `copy` kwarg in a future version of meson.
Fixes: #8399