Commit graph

2609 commits

Author SHA1 Message Date
Marc Durdin
44abf2c41e
Merge pull request #10651 from markcsinclair/fix/developer/ensure-project-populate-files-actually-adds-files
fix(developer): ensure project populate files actually adds files
2024-02-07 16:01:56 +11:00
Marc Durdin
6c4d5ff7fa
Merge pull request #10585 from keymanapp/fix/core/10582-km_core_state_get_actions-idempotency
fix(core): make `km_core_state_get_actions()` idempotent
2024-02-07 14:42:50 +11:00
Steven R. Loomis
5360cff8e5 Merge branch 'feat/developer/10554-sometimes-no-norm' into feat/developer/10316-range-warning 2024-02-06 16:14:54 -06:00
Steven R. Loomis
50e0b31e9e feat(developer): support normalization=disabled 🙀
- fix check normalization state

#10554
2024-02-06 14:54:26 -06:00
Dr Mark C. Sinclair
29b6601018 fix(developer): ensure project populate files actually adds files and test 2024-02-06 10:39:47 +00:00
Marc Durdin
70ba1d1c1e
Merge branch 'chore/core/10520-hide-old-action-apis' into fix/core/10582-km_core_state_get_actions-idempotency 2024-02-05 13:44:47 +11:00
Steven R. Loomis
90119c0ffe
Merge branch 'feat/developer/10554-sometimes-no-norm' into feat/developer/10316-range-warning 2024-02-02 17:03:04 -06:00
Steven R. Loomis
80ad3a87fc feat(developer): hint/warn on range check 🙀
- add warning into tran.ts - will be one warning per <tranform> element

#10316
2024-02-02 16:59:58 -06:00
Steven R. Loomis
db1c4b8636 feat(developer): hint/warn on range check 🙀
- failing test

#10316
2024-02-02 00:05:10 -06:00
Steven R. Loomis
ef99b81f14
Merge branch 'master' into feat/developer/10554-sometimes-no-norm 2024-02-01 22:21:55 -06:00
Steven R. Loomis
535418d9ef feat(developer): hint/warn on range check 🙀
- just the test files

#10316
2024-02-01 19:02:54 -06:00
Steven R. Loomis
eaeb3e4284 feat(developer): support normalization=disabled 🙀
- additional test changes
- turn off cooking the 'from' if disabled

#10554
2024-02-01 15:19:19 -06:00
Marc Durdin
8db33b5c9c
Merge pull request #10522 from keymanapp/chore/developer/tweak-kmc-ldml-build
chore(developer): kmc ldml build - call c8 directly for tests
2024-02-01 17:26:21 +11:00
Steven R. Loomis
d77ed9099b feat(developer): support normalization=disabled 🙀
#10554
2024-01-31 23:16:51 -06:00
Steven R. Loomis
9120bb4c87 feat(core,developer): normalization=disabled 🙀
- failing tests and initial work

#10554
2024-01-31 22:38:06 -06:00
Marc Durdin
1b88ab99be fix(core): make km_core_state_get_actions() idempotent
Fixes #10582.

Returned struct from the `km_core_state_get_actions()` API is now owned
by the state object. This is a change in API contract. The corresponding
`km_core_actions_dispose()` API has been made private, because there is
never any need for API consumers to call it. As this change is happening
in alpha, we won't bump the ABI version.

`state->app_context` is now guaranteed to be in sync with
`state->context` after `km_core_process_event()`, with the actions
struct populated at that point.

The next and final step in this refactor is to remove the actions queue
altogether from the Core and make that a kmn-only concept, but that will
wait until 18.0. The only consumers of the actions queue are the
kmn-specific interactive debugger in Keyman Developer, and kmn-specific
Input Method eXtensions in Keyman Engine for Windows.
2024-02-01 11:28:08 +07:00
Marc Durdin
95c2fdb63c
Merge pull request #10568 from keymanapp/chore/developer/10491-include-unicode-license
chore(developer): add unicode-license.txt for ldml keyboards data
2024-02-01 10:48:14 +11: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
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
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
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
Marc Durdin
868247e9fe chore(core): address review comments 2024-01-30 07:36:52 +07:00
Steven R. Loomis
1e04746b21 feat(developer): dev side norm 🙀
- re-sort string by NFD

For: #10317
2024-01-29 08:37:23 -06:00
Marc Durdin
8501f2aa6d feat(core): add deleted_context to km_core_actions struct
Fixes #10530.

Adds the deleted_context member to the km_core_actions struct, and
associated unit tests. Simplifies integration by providing the consumer
with all the data they need in order to execute the transform,
specifically around number of delete operations required, without
needing to query the target application context again. The number of
delete operations will vary according to application compliance and
selected encoding; for example a UTF-16 string may require 2
delete-backs for surrogate pairs in the text buffer for a compliant app,
whereas there will be a single delete-back key event for a non-compliant
app.

The deleted_context member should also be used for debug assertions.
2024-01-29 13:21:25 +07:00
Marc Durdin
0e16d7218b fix(developer): support surrogate pairs in ldml debugger
Fixes #10501.
2024-01-29 10:57:58 +07:00
Steven R. Loomis
1e3ae9b8f6 feat(developer): dev side norm 🙀
- normalize in key.to, tran.from, tran.to
- add as an option in the strs pipeline

- also, assertCodePoints utility for asserting with escapes

For: #10317
2024-01-26 19:10:00 -06:00
Steven R. Loomis
6ca5a29675 chore(developer): ldml add tests expecting dev side norm 🙀
- also, change this.X to Class.X for statics

For: #10317
2024-01-26 18:06:31 -06:00
Marc Durdin
adce514a71 chore(developer): kmc ldml build - call c8 directly for tests 2024-01-26 11:34:35 +07:00
Marc Durdin
5c63ec588e
Merge pull request #10474 from keymanapp/fix/developer/10470-ldml-keyboard-template
fix(developer): tidy up LDML keyboard project template 🌱
2024-01-26 15:31:27 +11:00
Marc Durdin
95d3261a8a
Merge pull request #10473 from keymanapp/fix/developer/10469-use-keyboard3-tag
fix(developer): use keyboard3 tag rather than DTD to identify LDML keyboard xml files 🌱
2024-01-26 15:31:14 +11:00
Marc Durdin
e98c202458
Merge branch 'epic/core/9999-normalization' into feat/developer/10416-10458-ldml-debugger-markers 2024-01-26 10:18:37 +11:00
Marc Durdin
6212b47171
Merge pull request #10462 from keymanapp/refactor/developer/10214-debugger-app-context
refactor(developer): update app context as well as cached context for keyboard debuggers 🌱
2024-01-26 10:18:18 +11:00
Marc Durdin
c5e9a8ce35
Merge branch 'refactor/developer/10214-debugger-app-context' into feat/developer/10416-10458-ldml-debugger-markers 2024-01-26 09:50:06 +11:00
Marc Durdin
ab03a49a27
Merge pull request #10461 from keymanapp/fix/developer/10456-ldml-keyboard-editor-font
fix(developer): support for char + code font in LDML keyboard editor 🌱
2024-01-25 19:30:06 +11:00
Marc Durdin
0c339213b7
Merge pull request #10460 from keymanapp/fix/developer/10457-ldml-keyboard-editor-xml-mode
fix(developer): Use XML mode for LDML keyboard editor 🌱
2024-01-25 19:29:56 +11:00
Marc Durdin
882af831f2
Merge pull request #10459 from keymanapp/feat/developer/10420-ldml-keyboard-test
feat(developer): LDML Keyboard Test Window 🌱
2024-01-25 19:29:47 +11:00
Marc Durdin
4cd2cd4498
Merge pull request #10496 from keymanapp/chore/developer/10487-source-maps-for-kmc
chore(developer): `--enable-source-maps` parameter for kmc wrapper
2024-01-25 11:09:09 +11:00
Marc Durdin
fc7677f064
Merge pull request #10493 from keymanapp/fix/developer/10490-sentry-cli-boilerplate
fix(developer): sentry-cli no longer injects into .d.ts 🌱
2024-01-25 10:21:24 +11:00
Marc Durdin
4f25e80ccb
Merge branch 'fix/developer/10456-ldml-keyboard-editor-font' into refactor/developer/10214-debugger-app-context 2024-01-24 19:39:45 +11:00
Marc Durdin
d6a9c74762
Merge branch 'fix/developer/10457-ldml-keyboard-editor-xml-mode' into fix/developer/10456-ldml-keyboard-editor-font 2024-01-24 19:39:30 +11:00
Marc Durdin
49b0c826ce
Merge branch 'feat/developer/10420-ldml-keyboard-test' into fix/developer/10457-ldml-keyboard-editor-xml-mode 2024-01-24 19:39:15 +11:00
Marc Durdin
5111e5b32b
Merge pull request #10359 from keymanapp/chore/developer/10357-ngrok-v3
chore(developer): upgrade ngrok to v3
2024-01-24 19:29:02 +11:00
Marc Durdin
e8cf7bf89c
Merge branch 'epic/core/9999-normalization' into feat/developer/10420-ldml-keyboard-test 2024-01-24 18:12:43 +11:00
Marc Durdin
e10c0f5fc3
Merge pull request #10492 from keymanapp/fix/common/10486-preserve-const-enums
fix(common): preserve const enums in tsc build 🌱
2024-01-24 18:12:26 +11:00
Marc Durdin
511277de67
Merge branch 'fix/common/10486-preserve-const-enums' into fix/developer/10490-sentry-cli-boilerplate 2024-01-24 18:11:59 +11:00
Marc Durdin
f1a9ccac03 chore(developer): --enable-source-maps parameter for kmc wrapper
Fixes #10487.

In Keyman Developer's wrapper of kmc, we now accept
`--enable-source-maps` as the first parameter to pass to kmc. We do not
enable source maps by default because they have a performance penalty.
2024-01-24 13:23:21 +07:00