Commit graph

3490 commits

Author SHA1 Message Date
Dr Mark C. Sinclair
db06555719 fix(developer): use comma alone as seperator, and u16trim to remove white space 2024-08-29 18:40:12 +01:00
Dr Mark C. Sinclair
2c41d02c19 fix(developer): add u16trim test 2024-08-29 18:24:31 +01:00
Dr Mark C. Sinclair
03293bcede fix(developer): add u16rtrim test 2024-08-29 18:18:27 +01:00
Dr Mark C. Sinclair
6dee928362 fix(developer): add test for u16ltrim 2024-08-29 16:51:07 +01:00
Dr Mark C. Sinclair
11a9338671 fix(developer): add test for u16ltrim 2024-08-29 16:40:41 +01:00
Dr Mark C. Sinclair
c8beeb9ab4 fix(developer): add two additional space test cases for index() in GetXStringImpl_type_i test 2024-08-29 10:56:17 +01:00
Marc Durdin
038b913394
Merge pull request #12280 from keymanapp/fix/developer/12279-consistent-import-path-for-all-kmc-uses
fix(developer): make LDML import path consistent for all bundlings of kmc
2024-08-29 09:46:10 +02:00
Dr Mark C. Sinclair
fca939b172 chore(developer): Merge branch 'master' into fix/developer/12262-ensure-call-detects-invalid-store-in-kmcmplib-compiler
# Keyman Conventional Commit suggestions:
#
# - Link to a Sentry issue with git trailer:
#     Fixes: _MODULE_-_ID_
# - Give credit to co-authors:
#     Co-authored-by: _Name_ <_email_>
# - Use imperative, present tense ('attach' not 'attaches', 'attached' etc)
# - Don't include a period at the end of the title
# - Always include a blank line before trailers
# - More: https://github.com/keymanapp/keyman/wiki/Pull-Request-and-Commit-workflow-notes
2024-08-26 10:06:51 +01:00
Marc Durdin
89d65adad0
Merge pull request #12278 from keymanapp/fix/developer/12056-find-last-key-in-ldml-keybag-for-kvk
fix(developer): find last matching key in LDML key bag when building KVK
2024-08-26 09:09:07 +02:00
Marc Durdin
6353f926ba
chore: Update developer/src/kmc-ldml/src/compiler/visual-keyboard-compiler.ts 2024-08-26 09:09:00 +02:00
Marc Durdin
f9b0dc5300
Merge pull request #12273 from keymanapp/chore/developer/12271-extend-test-timeouts-kmc-model
chore(developer): extend timeouts for lm compiler tests to 5 secs
2024-08-26 09:08:49 +02:00
Marc Durdin
3072444d97
Merge branch 'master' into docs/developer/12270-update-build-documentation 2024-08-24 04:36:46 +02:00
Marc Durdin
f5066174cd fix(developer): make LDML import path consistent for all bundlings of kmc
The default import path is relative to ldml-keyboard-xml-reader.js. The
bundling of kmc with Keyman Developer reduces the directory tree depth,
so we move the import path to be a subdirectory of the immediate parent
directory, rather than two levels up, so that
`C:\Program Files\Keyman\Keyman Developer\kmc` can refer to
`C:\Program Files\Keyman\Keyman Developer\import` when kmc is bundled.

Fixes: #12279
2024-08-24 10:28:48 +08:00
Marc Durdin
d028124ca9 fix(developer): find last matching key in LDML key bag when building KVK
Fixes: #12056
2024-08-24 00:15:33 +02:00
Marc Durdin
8457f9527a chore(developer): extend timeouts for lm compiler tests to 5 secs
Fixes: #12271
2024-08-23 17:53:48 +02:00
Marc Durdin
74f5865745 docs(developer): update build documentation to refer to build.sh
Fixes: #12270
2024-08-23 15:10:43 +02:00
Marc Durdin
046bd25f63 chore(developer): improve build order of operations so builds work on new machines 2024-08-23 07:47:53 +02:00
Dr Mark C. Sinclair
a09dcffb03 chore(developer): Merge branch 'master' into fix/developer/12262-ensure-call-detects-invalid-store-in-kmcmplib-compiler
# Keyman Conventional Commit suggestions:
#
# - Link to a Sentry issue with git trailer:
#     Fixes: _MODULE_-_ID_
# - Give credit to co-authors:
#     Co-authored-by: _Name_ <_email_>
# - Use imperative, present tense ('attach' not 'attaches', 'attached' etc)
# - Don't include a period at the end of the title
# - Always include a blank line before trailers
# - More: https://github.com/keymanapp/keyman/wiki/Pull-Request-and-Commit-workflow-notes
2024-08-22 17:13:00 +01:00
Dr Mark C. Sinclair
862f0d9191 fix(developer): add test cases for spaces before and after valid store in call in GetXStringImpl_type_c test 2024-08-22 15:21:01 +01:00
Dr Mark C. Sinclair
b608e1ca84 fix(developer): add ERROR_InvalidCall and first valid test case to GetXStringImpl_type_c test 2024-08-22 15:15:32 +01:00
Dr Mark C. Sinclair
75508f46b4 fix(developer): add ERROR_StoreDoesNotExist test cases to GetXStringImpl_type_c test 2024-08-22 11:43:03 +01:00
Dr Mark C. Sinclair
7e2f797dd8 fix(developer): move check on store name search to just after search 2024-08-22 11:41:02 +01:00
Dr Mark C. Sinclair
b721ff6d5d fix(developer): add call test cases from #11990 to GetXStringImpl_type_c test 2024-08-22 11:19:37 +01:00
Marc Durdin
a0ebe130de chore(developer): enable build for emscripten 3.1.60+
Emscripten 3.1.60 made a breaking change to `BindingType::toWireType`
(why is this done in a patch version?) so this change ensures that we
can continue to build on 3.1.58 and 3.1.64 (which is needed for #12234),
as a bridging strategy. We will need to merge this into 17.0-stable as
well so that we can upgrade the build agents to 3.1.64.

Relates-to: emscripten-core/emscripten#21692
Relates-to: #12234
2024-08-21 14:24:10 +02:00
Eberhard Beilharz
ab3722ecfa
fix(core): look for emcc instead of emcc.py on Linux and Mac
`emcc.py` is not marked as executable in emcripten's git repo so the
build failed when trying to locate emscripten. However, it turns out
that `emcc` is marked as executable, so we use that instead.

On Windows however, we still need to use `emcc.py` because otherwise
Meson won't detect it as valid compiler.
2024-08-20 15:52:52 +02:00
Steven R. Loomis
fb3bee1e90
Merge pull request #11858 from keymanapp/feat/developer/11054-improve-linter
fix(developer): remove redundant check in LdmlKeyboardCompiler.validate() 🙀
2024-08-19 08:44:51 -05:00
Marc Durdin
402b1964f2
Merge pull request #12119 from keymanapp/dependabot/npm_and_yarn/semver-7.6.0
chore(deps): bump semver from 7.5.4 to 7.6.0
2024-08-19 14:09:39 +10:00
Marc Durdin
2a21231aee
Merge pull request #12205 from keymanapp/fix/developer/12193-enforce-version-string-when-no-followkeyboardversion
fix(developer): enforce presence of Version field when FollowKeyboardVersion is not set, in package compiler
2024-08-16 23:12:30 +10:00
Marc Durdin
1cbd061c05 chore(developer): remove impossible test for missing version 2024-08-16 08:54:27 +02:00
Marc Durdin
ba96d26858 fix(developer): enforce presence of Version field when FollowKeyboardVersion is not set, in package compiler
Fixes: #12193
2024-08-16 08:24:37 +02:00
Marc Durdin
50d0107f38 fix(developer): enforce presence of kps Info.Description field in info compilers
The Description field should be required for published keyboards and
models, so this change means kmc-keyboard-info and kmc-model-info will
report an error if it is missing.

Relates-to: keymanapp/keyboards#3037
Relates-to: keymanapp/lexical-models#262
Fixes: #12202
2024-08-16 08:04:18 +02:00
Marc Durdin
02e500f3b5
Merge pull request #12168 from keymanapp/chore/developer/12161-update-sil-logo
chore(developer): update SIL logo
2024-08-14 21:24:57 +10:00
Marc Durdin
608011f500
Merge pull request #12166 from keymanapp/fix/developer/11978-ignore-scan-code-if-injected-key-event-doesnt-provide-it
fix(developer): fix crash with Windows Clipboard by ignoring zero scan code in debugger
2024-08-14 21:24:28 +10:00
dependabot[bot]
6fad148466
chore(deps): bump semver from 7.5.4 to 7.6.0
Bumps [semver](https://github.com/npm/node-semver) from 7.5.4 to 7.6.0.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v7.5.4...v7.6.0)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-14 11:22:58 +00:00
Marc Durdin
cf6ee68411
Merge pull request #12090 from keymanapp/refactor/developer/12077-remove-git-npm-deps
refactor(developer): use npm or local source for server addons instead of github references
2024-08-14 21:21:36 +10:00
Marc Durdin
dde4e2b2c3 refactor: move kmx_u16 to common and rename to km_u16 2024-08-14 10:07:08 +02:00
Marc Durdin
4a57258afc refactor(developer): remove unnecessary includes from kmx_u16 2024-08-14 09:50:11 +02:00
Sabine
30493f94bb chore(common): replace DEBUGSTORE_, DEBUGSTORE_...C with DEBUGSTORE_..._L , DEBUGSTORE_..._U 2024-08-13 15:59:43 +02:00
Sabine
07c8d13f53 chore(common):use googletests for kmx_u16 2024-08-13 15:24:19 +02:00
Sabine
a3a7bd38ff chore(common): use strtof() in u16tof() 2024-08-13 15:10:24 +02:00
Sabine
cbe712d2cd chore(common): replace u16fmt and convert_pchar16T_To_wstr with wstring_from_u16string 2024-08-13 15:10:24 +02:00
Sabine
6554bd615e chore(common): replace codecvt in module u16 2024-08-13 15:10:24 +02:00
Marc Durdin
b505bebd49 chore: rename SIL International to SIL Global 2024-08-13 12:04:53 +08:00
Marc Durdin
5ac8c26699 chore(developer): update SIL logo
Fixes: #12161
2024-08-13 11:53:56 +08:00
Marc Durdin
ce45f394d1 fix(developer): ignore scan code if zero in debugger
The Windows Clipboard Win+V key event emits Ctrl+V after rewriting the
clipboard, in order to trigger a Paste action in the active app.
However, the Ctrl key event has been given a scan code value of zero by
Windows Clipboard, which was confusing the Keyman Developer Debugger,
causing it to process Ctrl as an unrecognized key rather than as a
modifier, and leading to an unsupported state.

This is a fix for the immediate issue. We could do more to improve
resilience such that `km_core_state_debug_items()` can never end up with
this exception when `km_core_process_event()` has returned true.

Fixes: #11978
Fixes: KEYMAN-DEVELOPER-20W
2024-08-12 22:51:00 +08:00
Marc Durdin
c1d3fea8ea chore(developer): add eventemitter3 copy to Server build 2024-08-12 20:17:51 +08:00
Marc Durdin
062ae33579 refactor(developer): add eventemitter3 and ldml-keyboard-constants deps to Server
Fixes: #12077
2024-08-12 17:23:48 +07:00
Marc Durdin
a887015583 refactor(developer): add extra deps for Server
The way that Server is built for local distribution does not currently
handle transitive dependencies for @keymanapp dependencies well. So,
this adds four dependencies from @keymanapp/developer-utils to Server so
that they will be available in the packaged deployment.

A future improvement could be to package developer-utils using npm
packaging tools, but these struggled with bundling monorepo dependencies
in the past also.
2024-08-12 11:13:22 +07:00
Marc Durdin
f4659e6233 chore(developer): add @keymanapp/common-types to Server publish action 2024-08-12 09:57:17 +07:00
Marc Durdin
2814ac995c chore(developer): include common-types dep in developer-utils 2024-08-12 06:08:56 +07:00