Commit graph

32006 commits

Author SHA1 Message Date
Joshua Horton
5c79e30080
Merge pull request #14555 from keymanapp/docs/web/correction-search-internals
docs(web): improve documentation for SearchSpace and SearchNode
2025-08-21 00:52:53 +07:00
Eberhard Beilharz
5f37031ae1
Merge pull request #14571 from keymanapp/maint/linux/releasebuild 2025-08-20 18:52:58 +02:00
Eberhard Beilharz
26b8495234
maint(linux): add missing --help.keyman.com option
This allows to specify the path to help.keyman.com in the TC build
config rather than an environment variable.

Build-bot: skip
Test-bot: skip
2025-08-20 16:44:58 +02:00
Marc Durdin
2b0db1eb51
Merge pull request #14490 from keymanapp/maint/android/14284-publish-sentry-symbols-on-release-buildlevel
maint(android): publish symbols to Sentry on release buildLevel 🦌
2025-08-20 20:20:25 +07:00
Marc Durdin
8ef8871eca
Merge pull request #14562 from keymanapp/maint/mac/14478-mac-inc-prefix
maint(mac): use mac_ prefix for functions in mac.inc.sh
2025-08-20 19:24:13 +07:00
Eberhard Beilharz
578b4a9f4e
Merge pull request #14154 from keymanapp/maint/common/14153_docker
By default Git Bash converts paths starting with `/`, so running the docker image fails with errors or files mentioning `\Program Files\Git\` (e.g. https://github.com/keymanapp/keyman/pull/14058#issuecomment-2951820833). This change adds a wrapper function that prevents the conversion and thus uses the paths in the correct form when calling docker.

Since the docker builds run on Linux they expect LF line endings. If the scripts are checked out with CRLF line endings, they look for things like `bash^M`. While there are workarounds to some degree, I didn't found a solution that would fully work with our scripts. So in the end this PR now always checks out scripts with LF line endings, even on Windows.

If you test this you'll have to re-checkout the source tree so that you end up with LF line endings.

Fixes: #14153
2025-08-20 14:16:14 +02:00
Eberhard Beilharz
72ea66832d
Merge pull request #14542 from keymanapp/fix/linux/14465_normalizeLanguage
This fixes a bug where a keyboard didn't show up in the language dropdown if the first language it specified wasn't a normalized language tag. Previously in that case we added a custom keyboard with whatever language tag the keyboard specified. With this change we now continue to use the first language of the first keyboard but normalize it. Since the selection of the language now happens a little earlier it is slightly possible that there will be unexpected side effects that didn't show up in my testing.

Fixes: #14465
2025-08-20 14:09:11 +02:00
Eberhard Beilharz
c8cc5518df
Update resources/docker-images/README.md
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-08-20 08:46:02 +02:00
Marc Durdin
0d27ac91f7 maint(mac): use mac_ prefix for functions in mac.inc.sh
* Also renames resources/environment.sh to resources/build/mac/xcode-environment.inc.sh.
* Adds a few more exclusions to linux/scripts/dist.sh

Fixes: #14478
Test-bot: skip
Build-bot: build
2025-08-20 05:40:32 +02:00
Darcy Wong
7343d78722
Merge pull request #14546 from keymanapp/fix/android/fv-show-osk
fix(android): Add FirstVoices preference to show on-screen keyboard 👁️
2025-08-20 09:34:44 +07:00
Darcy Wong
0a83faac7d
Merge pull request #14539 from keymanapp/fix/android/36-hidden
fix(android): Add "Show On-screen keyboard" preference to display OSK when physical keyboard is connected 👁️
2025-08-20 09:34:16 +07:00
Darcy Wong
9ddcf0aff8
Merge pull request #14538 from keymanapp/fix/android/onEvaluateInputViewShown
fix(android): Show system OSK when physical keyboard connected on Android API 36 👁️
2025-08-20 09:33:41 +07:00
Keyman Server
7409558702
Merge pull request #14557 from keymanapp/auto/version-master-19.0.103
auto: increment master version to 19.0.103
2025-08-19 11:07:37 -07:00
Keyman Build Agent
f6e2f3e8a8 auto: increment master version to 19.0.103
Test-bot: skip
Build-bot: skip
2025-08-19 14:05:27 -04:00
Joshua Horton
78232f806e Merge branch 'master' into docs/web/correction-search-internals 2025-08-19 10:50:42 -05:00
Joshua Horton
e17e014815 docs(web): improve documentation for SearchSpace and SearchNode 2025-08-19 10:49:15 -05:00
Marc Durdin
c94ab1706a
Merge pull request #14554 from keymanapp/maint/resources/handle-unset-build-platform-in-build-bot-trigger
maint(resources): handle unset build platform in trigger-build-bot
2025-08-19 22:10:56 +07:00
Marc Durdin
290722bc5f maint(resources): handle unset build platform in trigger-build-bot
When #14551 and #14552 merged, it resulted in a bug which was exposed by
the unit tests (yay!).

Follows: #14551
Follows: #14552
Build-bot: skip:all build:common_windows,common_mac,common_linux
Test-bot: skip
2025-08-19 16:56:09 +02:00
Marc Durdin
a5b38d0713
Merge pull request #14552 from keymanapp/maint/resources/14506-dont-fallback-to-build-on-unsupported-targets-in-child-builds
maint(resources): don't fall back to 'build' action
2025-08-19 21:46:47 +07:00
Marc Durdin
1714862c3f
Merge pull request #14551 from keymanapp/maint/resources/14548-respect-build-bot-skip
maint(resources): handle build-bot skip correctly
2025-08-19 21:46:39 +07:00
Marc Durdin
209831f9cd chore(resources): Merge branch 'master' into maint/resources/14548-respect-build-bot-skip 2025-08-19 16:43:43 +02:00
Eberhard Beilharz
c066a61ff4
Merge pull request #14543 from keymanapp/refactor/linux/bashcompletion 2025-08-19 13:09:45 +02:00
Marc Durdin
51d4fb11e6 maint(resources): remove old trigger-build-bot.inc.sh, add _ to new
Fixes: #14506
2025-08-19 12:56:28 +02:00
Marc Durdin
4ea62a6455 maint(resources): also allow _ in build bot commands 2025-08-19 12:50:32 +02:00
Marc Durdin
6fc429a77e chore(resources): Merge branch 'maint/resources/14506-dont-fallback-to-build-on-unsupported-targets-in-child-builds' 2025-08-19 12:48:01 +02:00
Marc Durdin
990df1fb1f maint(resources): allow comma in build bot commands 2025-08-19 12:44:14 +02:00
Marc Durdin
bb1f2006f1
Merge branch 'master' into maint/resources/14506-dont-fallback-to-build-on-unsupported-targets-in-child-builds 2025-08-19 17:39:29 +07:00
Marc Durdin
50a03b502a maint(resources): don't fall back to 'build' action
When an unsupported action is provided to a child build, then don't fall
back to the default action 'build', because generally that is not what
we want -- we want a no-op

Fixes: #14506
Build-bot: skip:all build:common_linux,common_mac,common_windows
Test-bot: skip
2025-08-19 12:32:46 +02:00
Marc Durdin
a54c349061
Merge pull request #14459 from keymanapp/maint/common/14453-move-ci-scripts
maint(common): cleanup and reorganize ci scripts 🐸
2025-08-19 17:07:46 +07:00
Marc Durdin
47a24a8481 maint(resources): match platforms on whole-word only
Fixes: #14548
2025-08-19 11:29:08 +02:00
Marc Durdin
059e77c993 maint(resources): further tweaks on reading build bot commands
Fixes: #14548
2025-08-19 11:18:03 +02:00
Marc Durdin
726baa75b1 maint(resources): improve logging for build bot commands
Fixes: #14548
2025-08-19 11:11:51 +02:00
Marc Durdin
1c23752bd5 maint(resources): handle build-bot skip correctly
Fixes: #14548
Build-bot: skip
Test-bot: skip
2025-08-19 11:02:11 +02:00
Marc Durdin
81c807c257 chore(common): Merge branch 'master' into maint/common/14453-move-ci-scripts 2025-08-19 10:46:11 +02:00
Marc Durdin
3cdce9b371
Merge pull request #14467 from keymanapp/maint/mac/14287-skip-publishing-on-build-buildlevel
maint(mac): skip unnecessary network steps when buildLevel is build 🦌
2025-08-19 15:42:59 +07:00
Darcy Wong
7893ff2616 fix(android): Add FirstVoices preference to show on-screen keyboard 2025-08-19 07:31:22 +07:00
Darcy Wong
c4a156b692
Update android/docs/help/basic/config/index.md
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-08-19 06:56:43 +07:00
Keyman Server
1f4d479ab4
Merge pull request #14544 from keymanapp/auto/version-master-19.0.102
auto: increment master version to 19.0.102
2025-08-18 11:04:06 -07:00
Keyman Build Agent
8712e3c3bb auto: increment master version to 19.0.102
Test-bot: skip
Build-bot: skip
2025-08-18 14:03:01 -04:00
Eberhard Beilharz
57970724fa
refactor(linux): some code cleanup in bash completion script
Build-bot: skip
Test-bot: skip
2025-08-18 19:54:33 +02:00
Eberhard Beilharz
951793ea84
fix(linux): normalize language tags from keyboard
This fixes a bug where a keyboard didn't show up in the language dropdown
if the first language it specified wasn't a normalized language tag.
Previously in that case we added a custom keyboard with whatever language
tag the keyboard specified. With this change we now continue to use
the first language of the first keyboard but normalize it. Since the
selection of the language now happens a little earlier it is slightly
possible that there will be unexpected side effects that didn't show up
in my testing.

Fixes: #14465
2025-08-18 19:49:38 +02:00
Eberhard Beilharz
e98f2bb53c
maint(common): add warning about not mixing build platforms
Developers have to be consistent if they build on Windows/git-bash or
in WSL/Docker. Mixing builds without cleaning the repo first will fail.
See https://github.com/keymanapp/keyman/pull/14154#issuecomment-3182076088.

Build-bot: skip
Test-bot: skip
2025-08-18 17:51:00 +02:00
Eberhard Beilharz
72d8b705ff
maint(common): on Windows build as root inside docker container
This fixes a permission problem when we run docker from git bash.
On Windows we want to build as _root_ inside of the docker container.
This gives the necessary permissions due to the way the Windows user
is mapped to git bash/mingw and the docker container. On Linux
however we want to build as _build_ user inside the container so that
files we create are owned by the host user.

See https://github.com/keymanapp/keyman/pull/14154#issuecomment-2970577312
for further explanation.
2025-08-18 17:50:29 +02:00
Eberhard Beilharz
45f60b56de
maint(common): use LF line endings for scripts
On Windows files are usually checked out with CRLF line endings.
However, the Docker image is Linux and thus expects LF line endings.
This causes conflicts with the scripts and so trying to build in docker
trips over the shebang line that contains CR - see #14153.
https://stackoverflow.com/a/14610574 suggests a workaround, however that
doesn't work because it converts the script on the fly and removes CR and
then reads the script from the command line. This causes the loss of the
script name and thus causes different failures. Even with that solved
it would likely still not work because of the sourced  include scripts
would still contain CRLF line endings.

The only solution seems to be to check out the script files with LF
line endings which also seems to work when building directly on Windows.
See https://blog.programster.org/fixing-docker-volume-windows-line-endings-on-bash-scripts.

Fixes: #14153
Test-bot: skip
2025-08-18 17:50:28 +02:00
Eberhard Beilharz
57a9583093
maint(common): disable path conversions on Windows
By default Git Bash converts paths starting with `/`, so running the
docker image fails with errors or files mentioning `\Program Files\Git\`.
This change adds a wrapper function that prevents the conversion
and thus uses the paths in the correct form when calling docker.
2025-08-18 17:50:28 +02:00
Marc Durdin
c6a043c5af
Merge pull request #14540 from keymanapp/maint/common/move-node-related-functions-out-of-utils.inc.sh-missing-parts
maint(common): rename and move node-related script functions into node.inc.sh
2025-08-18 18:08:00 +07:00
Markus Greiner
72214187c5 maint(common): rename and move node-related script functions into node.inc.sh
Consolidates the node-related script functions into node.inc.sh, as part
    of cleaning up the build scripts and making them easier to maintain into
    the future. In the earlier commite some changes were missing.

    Fixes: #14447
2025-08-18 11:42:54 +02:00
Marc Durdin
4314088071 maint(mac): only publish sentry for CI builds 2025-08-18 11:28:08 +02:00
Darcy Wong
c30ec23be9
Merge pull request #14514 from keymanapp/fix/android/samples-edge-to-edge
fix(android): Update Sample, Test, and FirstVoices apps for edge to edge 🪟
2025-08-18 14:30:51 +07:00
Darcy Wong
3f38f322ca
Merge pull request #14463 from keymanapp/fix/android/edge-to-edge-activities
fix(android): Update other activities for edge to edge 🪟
2025-08-18 14:30:06 +07:00