Commit graph

33096 commits

Author SHA1 Message Date
Marc Durdin
89f26e1f9b
Merge pull request #8311 from keymanapp/feat/developer/5283-kmc-model-ts-support
feat(developer): kmc compile .model.ts file 🙀
2023-02-27 19:56:13 +11:00
Marc Durdin
d541c3b990
Merge pull request #8310 from keymanapp/feat/developer/5283-kmc-kps-support
feat(developer): kmc compile .kps files 🙀
2023-02-27 19:56:04 +11:00
Marc Durdin
a9b707d4f1
Merge pull request #8302 from keymanapp/feat/developer/5283-kmc-kmn-wrapper
feat(developer): support build of .kmn from kmc 🙀
2023-02-27 19:55:56 +11:00
Marc Durdin
8ef9be3c10
Merge pull request #8300 from keymanapp/feat/developer/5283-kmc-command-line-refactor
feat(developer): kmc build command 🙀
2023-02-27 19:55:48 +11:00
Marc Durdin
e6ea381aba chore(common): fix child build error handling
Fixes #8322.

This issue was arising due to subshells masking the exit code.

set -e is not really to be trusted.
2023-02-27 15:09:42 +07:00
Darcy Wong
337abea2f3 fix(android/samples): Config parameter 2023-02-27 14:53:20 +07:00
Marc Durdin
04189d2e3d chore(common): avoid -v for testing arrays in builder 2023-02-27 14:05:11 +07:00
Marc Durdin
8f02108579
Update developer/src/kmc/src/commands/buildTestData.ts
Co-authored-by: Steven R. Loomis <srl295@gmail.com>
2023-02-27 17:53:25 +11:00
Marc Durdin
be4f036a3c feat(developer): Add support for building a folder to kmc
Relates to #2761.

kmc now supports passing in a folder and building all Keyman source
files found in the folder, even if a .kpj is not present in the folder.

If a .kpj file exists, `KeymanDeveloperProject/Options/Version` will be
checked to determine behaviour. If this field is missing or "1.0", then
the classical behaviour persists.

If the Version field is "2.0", the `Files` key is ignored, and .kmn,
.xml, .model.ts, and .kps files under `sourcePath` are enumerated and
added to the in-memory project for build.

If a .kpj is not present in the folder, a virtual project is constructed
in memory with the following defaults:

* `version`: `2.0`
* `buildPath`: `$PROJECTPATH/build`
* `sourcePath`: `$PROJECTPATH/source`
* `compilerWarningsAsErrors`: `false`
* `warnDeprecatedCode`: `true`
* `checkFilenameConventions`: `true`

It is still considered an error to include both a keyboard and a model
in the same file, but a version 2.0 project will not include the field
determining its type in `Options/ProjectType`; this will instead be
checked during build.

The call to `kmc` can reference a folder or a .kpj file. The .kpj file
must have the same basename as the folder name (e.g.
`khmer_angkor/khmer_angkor.kpj`).

WARNING: this does not add support for 2.0 projects to Keyman Developer;
it is likely that opening a version 2.0 project in Developer will
currently corrupt it.

WARNING: it is not anticipated that kmcomp.exe will be updated to
support version 2.0 projects -- rather kmcomp.exe will be removed before
release of v17, and replaced with kmc.
2023-02-27 13:11:22 +07:00
Darcy Wong
576e1b1bfe refactor(oem/fv/android): Upgrade Gradle for final apk name 2023-02-27 11:46:27 +07:00
Darcy Wong
d2030767c7 refactor(android/app): Update Gradle for final apk name 2023-02-27 11:46:05 +07:00
Darcy Wong
90b1bc82f2 fix(android): Include config in path to keyman-engine.aar 2023-02-27 11:42:24 +07:00
Darcy Wong
29a3f2f6c5 fix(android/engine): Output keyman-engine.aar 2023-02-27 09:41:11 +07:00
Joshua Horton
93da017e0a
chore(web): Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-02-27 09:14:34 +07:00
Joshua A. Horton
fa0a77f67e chore(web): drops a couple of build-script vars 2023-02-27 09:11:13 +07:00
Darcy Wong
548fadded2 chore(android): Merge remote-tracking branch 'origin/master' into refactor/android/builder-script 2023-02-27 08:55:17 +07:00
Joshua Horton
97c1688328
change(web): applies new include style to new child scripts
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-02-27 08:50:59 +07:00
Joshua A. Horton
21bf13c682 chore(web): implements some suggestions per review 2023-02-27 08:49:47 +07:00
Marc Durdin
9af10cdf1d chore(developer): add kpj schema for tests 2023-02-27 08:02:35 +07:00
Marc Durdin
b04489a47b feat(developer): kmc .kpj support
Adds support for building .kpj projects. Required minor tweak to kmcomp
to allow it to build both .kmx and .js from .kmn command line.
Currently, calls kmcomp.exe to build .kmn files, until we support a
cross-platform kmc-kmn C++ project.
2023-02-27 06:14:06 +07:00
Keyman Server
25b6b7a775
Merge pull request #8319 from keymanapp/auto/version-master-17.0.58
auto: increment master version to 17.0.58
2023-02-27 01:02:02 +07:00
Keyman Build Agent
8d93d80cef auto: increment master version to 17.0.58 2023-02-26 13:01:23 -05:00
Marc Durdin
8c5bd3456f
Merge pull request #8314 from keymanapp/chore/android/revert-8291
chore(android/app): Revert #8291
2023-02-26 10:17:46 +11:00
Marc Durdin
35c706576b chore(common): export kpj from module 2023-02-26 06:02:43 +07:00
Steven R. Loomis
f7b2530f33 spec(core): ldml update spec for either shift/ctrl/alt 🙀
- match Keyman constanats

#7533
2023-02-25 08:20:12 -06:00
Marc Durdin
ec26e73932 chore(developer): skip copying schemas that may not be needed 2023-02-25 15:38:29 +07:00
Marc Durdin
647803ef28 feat(common): add .kpj typescript reader and schema 2023-02-25 11:17:39 +07:00
Steven R. Loomis
77a76a2f54 fix(developer): ldml TODO-LDML cleanup 🙀
- add check for missing flicks
- remove a tray #include

chore(common): ldml TODO-LDML cleanup 🙀  #8069
2023-02-24 18:55:28 -06:00
Keyman Server
b77f09ba47
Merge pull request #8315 from keymanapp/auto/version-master-17.0.57
auto: increment master version to 17.0.57
2023-02-25 01:02:11 +07:00
Keyman Build Agent
d1b71b47b6 auto: increment master version to 17.0.57 2023-02-24 13:01:33 -05:00
Sabine
a1cba9eaa5 chore(developer): tidy up comments 2023-02-24 16:55:42 +01:00
Sabine
51c8b6506b chore(developer): new MakeHashKeyFromFileKey, remove comments for Open_File, & *LinWin-functions, delete 1 converting function 2023-02-24 16:33:39 +01:00
Eberhard Beilharz
b159f07d7f
Merge pull request #8313 from keymanapp/chore/linux/improvetests
chore(linux): Improve detecting presence of test files
2023-02-24 15:37:03 +01:00
Sabine
304a20efad chore(developer): implement Open_File() 2023-02-24 13:11:15 +01:00
Marc Durdin
12a6e404af feat(developer): kmc compile .model.ts file
Adds basic support for compiling .model.ts files using kmc-model to kmc.
2023-02-24 16:18:46 +07:00
Marc Durdin
f6a3364c56 chore(developer): no top-level await 2023-02-24 16:18:27 +07:00
Sabine
67075ad669 chore(developer): implement u16rchr_LinWin and strrchr_LinWin 2023-02-24 10:09:59 +01:00
Joshua Horton
0357b83ff5
Merge pull request #8304 from keymanapp/feat/common/verify-builder-described-outputs
feat(common): adds warning if described output does not exist
2023-02-24 15:15:43 +07:00
Darcy Wong
57f4987478 chore(android): Revert "Merge pull request #8291 from keymanapp/fix/android/landscape-osk"
This reverts commit dc7603a97d.
2023-02-24 15:11:03 +07:00
Eberhard Beilharz
ec0048955b
chore(linux): Improve detecting presence of test files
With recent work the location where we generate the test files
changed, but the test setup script didn't completely work.
2023-02-24 09:00:40 +01:00
Eberhard Beilharz
55e4559a8f
Merge pull request #8308 from keymanapp/fix/linux/gha
fix(linux): Fix upload in packaging GHA
2023-02-24 08:30:38 +01:00
Marc Durdin
adfe3fac63 feat(developer): kmc compile .kps files
Adds basic support for compiling .kps files using kmc-package to kmc.
2023-02-24 14:29:48 +07:00
Darcy Wong
475d5649aa fix(android/app): Configure step 2023-02-24 14:03:15 +07:00
Marc Durdin
113918daef chore(developer): use BuildCommandOptions type 2023-02-24 13:57:36 +07:00
Marc Durdin
1be3ab37cc feat(developer): support build of .kmn from kmc
Uses existing kmcomp.exe to build .kmn files. Requires kmc to be in a
subfolder of the Keyman Developer binary folder.
2023-02-24 13:57:35 +07:00
Marc Durdin
91c6cb9f49 chore(developer): use --out-file for build-test-data 2023-02-24 13:54:29 +07:00
Marc Durdin
083be28ac4 chore(developer): fixup mkdir 2023-02-24 13:54:28 +07:00
Marc Durdin
a30fdffd95 feat(developer): kmc build command 2023-02-24 13:54:27 +07:00
Marc Durdin
ca77d0728f chore(developer): remove extraneous commander ref 2023-02-24 13:54:26 +07:00
Marc Durdin
c7c52af3e2 chore(developer): update to commander 10.0.0 2023-02-24 13:54:25 +07:00