- May 30, 2023
-
-
Marc Durdin authored
-
Marc Durdin authored
Relocates the keyboard-repo fixtures so we can add other local fixtures for unit tests.
-
Marc Durdin authored
-
Marc Durdin authored
Relates to #8493. * Removes kmcmplib calls from kmcmpdll (now that we have kmc) * Removes old kmcmp_CompileKeyboardFile and kmcmp_CompileKeyboardFileToBuffer functions in preference for a much cleaner kmcmp_CompileKeyboard function * Removes json validation helper from kmcmplib (we'll use js-native json schema validation instead) This change means that we no longer need to keep compfile.h consistent between kmcmplib and kmcmpdll. This will simplify upcoming refactoring of kmcmplib. kmcmplib no longer writes files, but it does still read them. The next refactor will move file load responsibility into the caller.
-
- May 25, 2023
-
-
Marc Durdin authored
This moves the remainder of the WASM interfaces in kmcmplib to using emscripten bind. It is a little bit of a step backwards at present for parseUnicodeSet, because I've changed the output buffer type to an int for the purposes of simplifying the binding just now. But that can be improved later, and at least we are consistent with the binding methods. Next step is to move the filesystem access out of kmcmplib.
-
Marc Durdin authored
The `SetError` macro emitted `return FALSE;` which was confusing for reviewing code flow. Replaced with explicit `AddCompileMessage()` and `return FALSE;`.
-
Marc Durdin authored
-
- May 24, 2023
-
-
Marc Durdin authored
FILE_KEYBOARD is a structure used in multiple libraries and languages. It is passed around between kmcmplib, kmcmpdll, and kmcomp, with three separate definitions (kmcmplib/compfile.h, kmcmpdll/compfile.h, and kmcomp/compile.pas). These duplicate definitions must be maintained for now because of type issues between the legacy kmcmpdll and kmcmplib, which means that the definitions must be kept in sync. Because FILE_KEYBOARD_EXTRA has a C++ class in it, it will be initialized in CompileKeyboardHandle rather than in the caller, so FILE_KEYBOARD.extra is now a pointer rather than a struct. When original kmcomp and kmcmpdll are eventually removed, these duplications will disappear and some of the memory management and lifecycle will become easier to manage.
-
- May 23, 2023
-
-
Marc Durdin authored
This starts the refactor of the .kmn compiler interfaces for WASM, moving more file writes into typescript and out of the compiler. Adds a cleaner binding and structures for passing compile metadata back to typescript for additional build steps (e.g. kvk, js builds). Will rebase the Typescript-based KMW compiler onto this so it can start to benefit from the refactoring. * Fixes a minor issue with loading a .kvks file with an empty flags set. * Adds a writeFileSync method to the compiler callback interfaces. * Adds an e2e compiler test to verify that .kmx and .kvk are both correctly compiled.
-
Marc Durdin authored
-
- May 14, 2023
-
-
Marc Durdin authored
-
Marc Durdin authored
Stage one of the kmcmplib filesystem refactoring, as we move to writing to buffers and allowing caller to write to disk. Moves responsibility for writing data out of WriteCompiledKeyboard and into kmcmp_CompileKeyboardFile. This means that there are now no file writes in Compiler.cpp, except for the temp UTF16fromUTF8 (which I will also change to a in-memory buffer "real soon now"). Note that responsibility for writing in kmcmp_CompileKeyboardFile is very much temporary as we'll move it out of the library altogether in a subsequent commit.
-
- May 13, 2023
-
-
Keyman Server authored
auto: increment master version to 17.0.107
-
Keyman Build Agent authored
-
- May 12, 2023
-
-
Steven R. Loomis authored
feat(developer): uset api from wasm!
🙀 -
Steven R. Loomis authored
for: #7234
-
Steven R. Loomis authored
-
Steven R. Loomis authored
Co-authored-by:Marc Durdin <marc@durdin.net>
-
Marc Durdin authored
chore(developer): rename Compiler and related classes
-
Marc Durdin authored
-
Marc Durdin authored
-
Marc Durdin authored
-
Marc Durdin authored
-
Marc Durdin authored
feat(developer): validate package name in compiler
-
Marc Durdin authored
feat(developer): validate content file names in packages
-
Marc Durdin authored
feat(developer): add validation of package filenames
-
Marc Durdin authored
feat(developer): add package validation
-
Marc Durdin authored
chore(developer): move package formats to common/web/types
-
Keyman Server authored
auto: increment master version to 17.0.106
-
Keyman Build Agent authored
-
- May 11, 2023
-
-
Steven R. Loomis authored
developer: - update wasm machinery in kmc-kmn to be more self contained - improve exception situation in wasm functions common: - compilerErrorFormatCode() for formatting the raw code such as for tests - compilerExceptionToString() for formatting exceptions in messages for: #7234
-
Eberhard Beilharz authored
chore(linux): Add build.sh for keyman-config
-
Eberhard Beilharz authored
The secret is to disable the "shellcheck.useWorkspaceRootAsCwd".
-
Eberhard Beilharz authored
Also improve output specification. Co-authored-by:Marc Durdin <marc@durdin.net>
-
Marc Durdin authored
-
Marc Durdin authored
-
Darcy Wong authored
chore(android/app): Cleanup build-play-store-notes script
-
Darcy Wong authored
-
Darcy Wong authored
-
Darcy Wong authored
Co-authored-by:Marc Durdin <marc@durdin.net>
-