Commit graph

32024 commits

Author SHA1 Message Date
Joshua Horton
33ae31f3a4 fix(web): prevent undefined traversal entry 2025-08-28 09:32:48 -05:00
Joshua Horton
1942309356 feat(web): add unit test for empty-char inputs, matches 2025-08-28 09:15:47 -05:00
Joshua Horton
d9aebf0213 Merge branch 'feat/web/search-subset-batching' into refactor/web/simplify-calculation-inputs 2025-08-28 09:10:11 -05:00
Joshua Horton
26c787d24d fix(web): improve unit-test setup assertions 2025-08-28 09:07:58 -05:00
Joshua Horton
820c082839
docs(web): Apply comment-oriented suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-08-28 21:03:52 +07:00
Joshua Horton
82c35d0b97 refactor(web): simplify calculation-object inputs 2025-08-27 16:40:45 -05:00
Joshua Horton
a08390750f refactor(web): track traversal history on search node, not calculation object 2025-08-27 16:08:27 -05:00
Joshua Horton
129470c5ca docs(web): processSubsetEdge comment enhancements 2025-08-25 11:17:17 -05:00
Joshua Horton
0c85d0e4fa Merge branch 'feat/web/transform-cataloging' into feat/web/search-subset-batching 2025-08-25 10:54:28 -05:00
Joshua Horton
c573f26e23 docs(web): clean up comments added during subset-batch PR work 2025-08-25 10:54:11 -05:00
Joshua Horton
0c3c58ae5d docs(web): adds PartialSearchEdge type doc comment 2025-08-25 10:48:04 -05:00
Joshua Horton
e0928b2b20 feat(web): add unit tests interacting with search-term keying 2025-08-25 10:41:50 -05:00
Joshua Horton
23d682e5e2 feat(web): adds delete, substitution path unit tests for starting mid-word 2025-08-25 10:16:30 -05:00
Joshua Horton
80194c022f fix(web): restore search-iteration unit tests 2025-08-25 09:08:42 -05:00
Joshua Horton
2fb96709f3 feat(web): implement search-node clone-constructor unit tests 2025-08-25 08:49:11 -05:00
Joshua Horton
057b6cbc1b refactor(web): place all partial-edge properties under single object-based property 2025-08-25 08:48:48 -05:00
Joshua Horton
aa9df34623 feat(web): batch correction-search paths by related subsets
This change should dramatically cut down on the number of heavily-mismatched paths that the correction-search engine builds during operation.  Now, whenever input characters are being matched against a character from the lexicon, they're all replaced, **together**, with a single sentinel character instance that represents them all together - with their exact accumulated probability mass.

Doing so dramatically cuts down on the rate of memory use expansion during correction-search's operation... and likely cuts down on execution time on average, allowing for more potential corrections to be considered.
2025-08-22 18:23:13 -05:00
Joshua Horton
e20bd8ebd9 feat(web): adds transform subset-building methods to predictive-text worker
These methods place a set of input Transforms into multiple subsets with common properties.  They're designed for use in upcoming enhancements to the predictive-text worker's correction-search approach.
2025-08-22 15:38:55 -05:00
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