Commit graph

18500 commits

Author SHA1 Message Date
Marc Durdin
f1985ad7a5
chore: address review comments 2023-03-07 09:54:22 +11:00
Marc Durdin
1bc31c8792 chore(common): handle pre-init builder_echo 2023-03-02 05:56:24 +07:00
Marc Durdin
06afdd262b chore(common): cleanup build.inc.sh echo
Makes the output of log messages from builder scripts more consistent,
and uses color more effectively to highlight specific parts of lines.
2023-03-01 14:51:08 +07:00
Marc Durdin
3c3dcd8c93 chore(common): update builder docs for builder_describe_internal_dependency 2023-03-01 14:02:42 +07:00
Marc Durdin
269265c1f3 chore(common): update builder docs for builder_describe_internal_dependency 2023-03-01 14:00:11 +07:00
Marc Durdin
3c175bfc63 feat(core): run tests for current arch 2023-03-01 13:41:23 +07:00
Marc Durdin
e85bbaa069 feat(core): build both archs for mac 2023-03-01 13:02:48 +07:00
Marc Durdin
78f18c38ee feat(core): mac fat library -- testing 2023-03-01 11:00:15 +07:00
Marc Durdin
1c1dffb7b3
Merge pull request #8341 from keymanapp/fix/common/skip-dependency-build-for-clean-action
fix(common): builder: skip dependency build for clean action
2023-03-01 14:12:13 +11:00
Marc Durdin
572bd74783 fix(common): builder: skip dependency build for clean action
We should not attempt to build dependencies when running `clean`. Note:
if your `clean` action requires dependencies, then something is very,
very wrong and you should fix that!
2023-03-01 08:26:30 +07:00
Keyman Server
d9066145d6
Merge pull request #8339 from keymanapp/auto/version-master-17.0.59
auto: increment master version to 17.0.59
2023-03-01 01:03:11 +07:00
Keyman Build Agent
664726886d auto: increment master version to 17.0.59 2023-02-28 13:02:28 -05:00
Eberhard Beilharz
02b36a8d8d
Merge pull request #8294 from keymanapp/fix/linux/debian
fix(linux): Fix debian postinst script
2023-02-28 15:02:30 +01:00
Marc Durdin
b809a60936
Merge pull request #7054 from keymanapp/feature-ldml
epic: LDML keyboard support 🙀
2023-02-28 20:38:00 +11:00
Marc Durdin
f1deaa28e4
Merge pull request #8334 from keymanapp/chore/linux-disable-core-tests-for-build
chore(linux): disable tests for core install also
2023-02-28 19:09:25 +11:00
Marc Durdin
34faa0216d chore(linux): disable tests for core install also 2023-02-28 14:34:57 +07:00
Eberhard Beilharz
8e1ebbca11
Merge pull request #8329 from keymanapp/fix/linux/build.sh
fix(linux): Fix ibus-keyman/build.sh
2023-02-28 08:32:43 +01:00
Eberhard Beilharz
4989d8fa36
Merge pull request #8328 from keymanapp/chore/linux/gha
chore(linux): Improve and fix packaging GHA
2023-02-28 08:32:13 +01:00
Marc Durdin
5046376a80
Merge pull request #8333 from keymanapp/chore/linux-disable-core-tests-for-build
chore(linux): disable node-based core tests when testing during packaging
2023-02-28 15:27:34 +11:00
Marc Durdin
bf99c77b64 chore(linux): disable node-based core tests when testing during packaging 2023-02-28 11:06:13 +07:00
Marc Durdin
c11f765590
Merge pull request #8331 from keymanapp/chore/linux-disable-core-tests-for-build
chore(linux): disable core tests for build 🙀
2023-02-28 13:41:29 +11:00
Marc Durdin
2edff0c212 chore(linux): disable core tests for build 2023-02-28 09:24:53 +07:00
Marc Durdin
20afd108e0
Merge pull request #8330 from keymanapp/chore/merge-master-into-feature-ldml-A17S7
chore: merge master into feature-ldml 🙀
2023-02-28 12:58:08 +11:00
Marc Durdin
8189e89d50
Merge pull request #8327 from keymanapp/chore/common/builder-v
chore(common): fix child build error handling
2023-02-28 10:44:30 +11:00
Marc Durdin
5fa307d291 chore(linux): fixup merge for test kmx path 2023-02-28 06:43:21 +07:00
Marc Durdin
7cbdb9da75 chore(linux): fixup merge for test kmx path 2023-02-28 06:40:49 +07:00
Marc Durdin
b96e863885 chore: Merge branch 'feature-ldml' into chore/merge-master-into-feature-ldml-A17S7 2023-02-28 05:49:05 +07:00
Steven R. Loomis
712063d752
Merge pull request #8316 from keymanapp/fix/developer-8069/todo-epic-ldml
fix(developer): ldml TODO-LDML cleanup 🙀
2023-02-27 13:16:57 -06:00
Eberhard Beilharz
67bd5fb399
fix(linux): Fix ibus-keyman/build.sh
Paths that describe outputs are supposed to be relative to root,
not absolute. Also, it turns out we don't use the `--output`
parameter, so this change removes it.
2023-02-27 18:42:38 +01:00
Eberhard Beilharz
ea4ec8437e
chore(linux): Add debug output 2023-02-27 17:46:27 +01:00
Eberhard Beilharz
0ca494b267
chore(linux): Create release for source package
This sets the distribution to "unstable" instead of the default
UNRELEASED which dput doesn't look to upload.
2023-02-27 17:42:09 +01:00
Eberhard Beilharz
99fd8b8f3d
chore(linux): Add trust for gpg key 2023-02-27 17:11:22 +01:00
Marc Durdin
0b7b22999e
Merge pull request #8326 from keymanapp/feat/developer/2761-kmc-build-project-2.0
feat(developer): Add support for building a folder to kmc 🙀
2023-02-27 19:56:42 +11:00
Marc Durdin
05d5c6f1f6
Merge pull request #8320 from keymanapp/feat/developer/5283-kmc-kpj-support
feat(developer): kmc .kpj support 🙀
2023-02-27 19:56:33 +11:00
Marc Durdin
6c87b49996
Merge pull request #8317 from keymanapp/feat/common/5283-kpj-schema-and-reader
feat(common): add .kpj typescript reader and schema 🙀
2023-02-27 19:56:24 +11:00
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
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
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
Marc Durdin
ec26e73932 chore(developer): skip copying schemas that may not be needed 2023-02-25 15:38:29 +07:00