Commit graph

24978 commits

Author SHA1 Message Date
Steven R. Loomis
462cdf3f30 feat(developer): double markers once again 🙀
- use an 'end' marker for each NFD

Fixes: #10516
2024-01-31 17:47:21 -06:00
Steven R. Loomis
2c92cfea4b feat(core): reorder processing 🙀
- update per code review
- move quickcheck of map into add_back_markers()

For: #10516
2024-01-31 17:44:21 -06:00
Steven R. Loomis
b429dc3383 feat(core): markers and reorder 🙀
- reorders don't interact with markers, but must transit them
- add updated tests
- simplify reorder_group::apply(): the 'common prefix' discussion
was out-of-date as std::mismatch is handled by the ldml_processor
and the core context.
- add_back_markers() promoted to SPI so it can be called from reordering.

Fixes: #10516
2024-01-31 17:44:21 -06:00
Keyman Server
9a0b9731cc
Merge pull request #10579 from keymanapp/auto/version-master-17.0.258
auto: increment master version to 17.0.258
2024-02-01 01:04:17 +07:00
Keyman Build Agent
df15da1f0f auto: increment master version to 17.0.258 2024-01-31 13:03:39 -05:00
Eberhard Beilharz
9173f64a00
Merge pull request #10573 from keymanapp/chore/linux/tests
chore(linux): Adjust test expectations for ICU >= 73
2024-01-31 18:28:22 +01:00
Eberhard Beilharz
cb8f68012c
chore(linux): Upgrade artifacts to v4
- Upgrade upload-artifact to v4.3.0
- Upgrade download-artifact to v4.1.1
- Upgrade checkout to v4.1.1
- Upgrade gha-deb-signing to v0.6

Closes #10385.
2024-01-31 16:38:48 +01:00
Eberhard Beilharz
02008dc585
fix(linux): Fix version comparison
Implement proper comparison of versions so that 1.10 is newer than 1.9.

Fixes #9593.
2024-01-31 14:47:35 +01:00
Eberhard Beilharz
6d5accdaa4
chore(linux): Adjust test expectations for ICU >= 73
ICU 73 comes with CLDR 43 which contains various corrections. This means
that we get different results when we minimize `bmf-Latn`. This change
sets the test expectations based on the ICU version and so allows tests
to pass on Ubuntu 24.04 which comes with ICU 74.
2024-01-31 12:05:14 +01:00
Eberhard Beilharz
5643d2690d
Merge pull request #10561 from keymanapp/chore/linux/noble
chore(linux): Replace Lunar with Noble
2024-01-31 11:34:02 +01:00
Joshua A. Horton
f8c5ce11c0 chore(web): removes temp console log 2024-01-31 13:02:51 +07:00
Joshua A. Horton
76cdef296e fix(web): app/webview control flow for initial layer 2024-01-31 12:50:40 +07:00
Marc Durdin
9ee5777e48 chore(core): move action apis into keyman_core_api_actions.h
Fixes #10520.

The definitions for `struct km_core_action_item`, `struct
km_core_backspace_item`, `enum km_core_backspace_type`, `enum
km_core_action_type`, `km_core_state_action_items()`,
`km_core_state_queue_action_items()`, `km_core_process_queued_actions()`
are now in keyman_core_api_actions.h rather than in the primary
keyman_core_api.h, as they should not be used by engines in general.

The current users of those APIs are the interactive kmx debugger, and
the IMX integration in Keyman Engine for Windows. Both of these depend
on the old action queue model rather than the actions struct.

In a future version, we may refactor these further to make them apply
directly to the KMX processor, and provide access via an interface to
the KMX processor rather than as a general Core API. Once this change is
made, then Core itself will no longer support action queues at all, and
will expect keyboard processors to fill in an action struct (this is
already done for LDML).
2024-01-31 11:32:09 +07:00
Marc Durdin
ad263968de
Merge pull request #10560 from keymanapp/chore/developer/10547-disable-js-output-for-ldml-17.0
chore(developer): disable .js output for LDML keyboard compiler for 17.0
2024-01-31 13:40:53 +11:00
Marc Durdin
92aa65dd78
Merge pull request #10559 from keymanapp/fix/developer/10542-invalid-source-path
fix(developer): make sourcePath calculation for kmc-keyboard-info more lenient
2024-01-31 13:40:45 +11:00
Marc Durdin
6c88c62950
Merge pull request #10558 from keymanapp/fix/developer/10488-kmc-sentry
fix(developer): kmc exit needs to wait for Sentry
2024-01-31 13:40:37 +11:00
Darcy Wong
1c47360350
Merge pull request #10566 from keymanapp/darcywong00-patch-1
docs: Update websites README.md
2024-01-31 09:38:53 +07:00
Marc Durdin
ef798afd57 chore(developer): add unicode-license.txt for ldml keyboards data
Fixes #10491.

Called unicode-license.txt in order to disambiguate.
2024-01-31 09:28:42 +07:00
Joshua Horton
77fc1df4c5
Merge pull request #10555 from keymanapp/fix/web/handle-mismatched-layout-font-spec
fix(web): ensure use of actual key-cap / label font in key-scale ops 
2024-01-31 09:25:00 +07:00
Joshua Horton
47b880dadd
Merge pull request #10535 from keymanapp/fix/web/special-font-key-scale-on-load
fix(web): proper await for special-osk font, use of it in key scaling 
2024-01-31 09:24:54 +07:00
Joshua Horton
abe2acbec9
Merge pull request #10534 from keymanapp/feat/web/font-load-key-scale-test
feat(web): testing page for font-load / key-scale interactions 
2024-01-31 09:24:45 +07:00
Joshua Horton
96e7d4bef4
Merge pull request #10507 from keymanapp/fix/web/keyboard-documentation-font-sizing
fix(web): documentation-keyboard font size, font scaling 
2024-01-31 09:24:38 +07:00
Joshua Horton
83192e3d1e
Merge pull request #10506 from keymanapp/fix/web/await-font-load
fix(web): OSK resource-loading promise's font-wait 
2024-01-31 09:24:28 +07:00
Darcy Wong
b09f264ff0
Update docs/websites/README.md
Add web.keyman.com.localhost
2024-01-31 09:20:01 +07:00
Darcy Wong
3a8f587228
docs: Update websites README.md
Update website-local-proxy names

@keymanapp-test-bot skip
2024-01-31 07:47:19 +07:00
rc-swag
118466f6b2 feat(windows): use delete-context for backspace
Use the delete_context memember of the action struct to
check for surrogates and determine the code units to delete.
2024-01-31 10:31:59 +10:00
rc-swag
5ff8092bde chore(windows): Merge branch 'master' into feat/windows/use-km-core-actions-struct 2024-01-31 09:59:12 +10:00
Marc Durdin
f546c44048
Merge pull request #10390 from keymanapp/epic/core/9999-normalization
epic: Keyman Core normalization 🌱
2024-01-31 10:45:51 +11:00
Keyman Server
e4af19c8ba
Merge pull request #10564 from keymanapp/auto/version-master-17.0.257
auto: increment master version to 17.0.257
2024-01-31 01:04:04 +07:00
Keyman Build Agent
26196bada6 auto: increment master version to 17.0.257 2024-01-30 13:03:34 -05:00
Steven R. Loomis
2964b8496b
Merge pull request #10528 from keymanapp/feat/developer/10317-compiler-norm-epic-ldml
feat(developer): turn on developer side normalization 🙀
2024-01-30 10:06:36 -06:00
Eberhard Beilharz
325ab78881
chore(linux): Replace Lunar with Noble
This change removes Ubuntu 23.04 Lunar and adds support for
Ubuntu 24.04 Noble.
2024-01-30 15:40:41 +01:00
Eberhard Beilharz
f075324e07
Merge pull request #10537 from keymanapp/fix/linux/deb-packaging
fix(linux): packaging on Ubuntu and Debian servers should give message instead of warning because we don't have patched ibus there
2024-01-30 10:34:30 +01:00
Eberhard Beilharz
59729b0ea0
Merge pull request #10538 from keymanapp/chore/core/fixbuild
chore(core): `process_output_action` needs const `output_utf32` parameter 🌱
2024-01-30 10:34:08 +01:00
Marc Durdin
6672f0a019 chore(developer): disable .js output for LDML keyboard compiler for 17.0
Fixes #10547.

In order to prevent confusion, the stubbed and incomplete .js files
generated by the LDML keyboard compiler are no longer emitted for
version 17.0 release.
2024-01-30 15:07:55 +07:00
Marc Durdin
be9f4c8c6d fix(developer): make sourcePath calculation for kmc-keyboard-info more lenient
Fixes #10542.

The `sourcePath` attribute should only be added to a .keyboard_info file
if the file is actually in an expected folder matching a pattern like
`(release|legacy|experimental)/k/keyboard`.

If the path does not match that pattern, then we just omit the field in
the emitted .keyboard_info or .model_info file.
2024-01-30 14:51:59 +07:00
Marc Durdin
898310e6df fix(developer): kmc exit needs to wait for Sentry
Fixes #10488:

1. Use a consistent `exitProcess()` function so that we always wait for Sentry to do its thing.
2. Make `KeymanSentry.isEnabled()` non-async because it is synchronous.
3. Remove duplicate initialization of `KeymanSentry` in kmc.ts.
2024-01-30 14:41:11 +07:00
rc-swag
1e554c8804 feat(windows): don't write persisted option back to core
When the action from the core is to persist an option there
is no need to write that value back to the core as it has already
been updated, by the core.
2024-01-30 15:42:17 +10:00
rc-swag
d8c232dc7c feat(windows): refactor to use km_core_actions struct 2024-01-30 14:07:55 +10:00
Joshua A. Horton
d3eb3dd507 chore(web): tweaks test-page keyboard to also test this PR's fix 2024-01-30 10:17:12 +07:00
Joshua A. Horton
b6f043462f docs(web): tweaks comment re unexpected issue fix 2024-01-30 10:15:53 +07:00
Joshua A. Horton
71f4c46634 fix(web): ensure use of actual key-cap / label font in key-scale ops 2024-01-30 10:10:57 +07:00
Joshua A. Horton
add5d169a1 fix(web): proper await for special-osk font, use of it in key scaling 2024-01-30 10:09:32 +07:00
Marc Durdin
4c95fef55a
Merge pull request #10533 from keymanapp/feat/core/10530-actions-deleted-context
feat(core): add `deleted_context` to `km_core_actions` struct 🌱
2024-01-30 11:46:10 +11:00
Marc Durdin
46d162d95d
Merge pull request #10532 from keymanapp/fix/developer/10501-ldml-debugger-surrogate-pairs
fix(developer): support surrogate pairs in ldml debugger 🌱
2024-01-30 11:45:57 +11:00
Marc Durdin
868247e9fe chore(core): address review comments 2024-01-30 07:36:52 +07:00
Keyman Server
c9ed30f373
Merge pull request #10540 from keymanapp/auto/version-master-17.0.256
auto: increment master version to 17.0.256
2024-01-30 01:30:13 +07:00
Keyman Build Agent
330752bab7 auto: increment master version to 17.0.256 2024-01-29 13:29:44 -05:00
Eberhard Beilharz
60746e02d0
chore(core): Fix compilation error 2024-01-29 18:00:14 +01:00
Eberhard Beilharz
6b5b44eddd
fix(linux): Fix packaging on Ubuntu and Debian servers
When building packages warnings are treated as errors. When building on
Ubuntu and Debian servers we don't have a patched ibus version but still
want to build the packages. So this change outputs a message instead of
a warning when building packages.
2024-01-29 17:50:04 +01:00