Commit graph

3302 commits

Author SHA1 Message Date
Marc Durdin
634fef64d4 maint(android): use versioned filenames for PR artifacts
Relates-to: #10521
Test-bot: skip
Build-bot: skip release:android,developer,windows
2025-09-08 12:31:11 +02:00
Marc Durdin
db90fa21a7 maint(developer): use versioned filenames for PR artifacts
Relates-to: #10521
Test-bot: skip
Build-bot: skip release:developer
2025-09-08 09:44:53 +02:00
Eberhard Beilharz
e615139348
Merge pull request #14669 from keymanapp/chore/windows/desktop 2025-09-03 11:53:46 +02:00
Marc Durdin
69a538b691
Merge pull request #14668 from keymanapp/docs/license
docs(common): update license date and owner
2025-09-03 06:37:04 +02:00
Marc Durdin
76ed9b55dd
Merge pull request #14659 from keymanapp/fix/developer/new-lm-project-validation-message
fix(developer): add clear messages about validation failures to New LM Project Parameters form
2025-09-03 04:39:36 +02:00
Marc Durdin
f420f15567 docs(common): update license date and owner
Fixes: #14665
Test-bot: skip
Build-bot: skip
2025-09-02 16:13:36 +02:00
Eberhard Beilharz
f166f11d14
docs(common): update docs Keyman Desktop → Keyman for Windows
Also change path to engine help pages. This requires a corresponding
change in help.keyman.com.

Test-bot: skip
2025-09-02 14:29:53 +02:00
Marc Durdin
c263a2bd2a
Merge pull request #14658 from keymanapp/fix/developer/new-ldml-keyboard-project-validation-message
fix(developer): add clear messages about validation failures to New LDML Project Parameters form
2025-09-02 11:29:39 +02:00
Marc Durdin
c557124006
Merge pull request #14657 from keymanapp/fix/developer/14169-new-keyboard-project-validation-message
fix(developer): add clear messages about validation failures to New Project Parameters form
2025-09-02 11:29:30 +02:00
Marc Durdin
8150f36b09
Merge pull request #14651 from keymanapp/fix/developer/13903-offset-compiler-error-line
fix(developer): remove incorrect offset for compiler error line
2025-09-02 11:29:12 +02:00
Marc Durdin
5df9e70a31 fix(developer): add clear messages about validation failures to New LM Project Parameters form
Apply new FormValidation to New Lexical Model Project Parameters form.

Follows: #14658
2025-09-01 17:07:36 +02:00
Marc Durdin
21cae0d7de fix(developer): add clear messages about validation failures to New LDML Project Parameters form
Apply new FormValidation to New LDML Project Parameters form.

Follows: #14657
2025-09-01 15:21:24 +02:00
Marc Durdin
9c656808bf chore(developer): tweak wordwrap on validation fields 2025-09-01 14:25:18 +02:00
Marc Durdin
d61bcf23da fix(developer): add clear messages about validation failures to New Project Parameters form
Add a new FormValidation class to help make a consistent declarative
field validation pattern for Keyman Developer forms, and apply that
initially to the New Keyboard Project Parameters dialog. This pattern
replaces the earlier EnableControls pattern; ideally we will replace
validation in other forms with similar validation requirements with this
over time.

Fixes: #14169
2025-09-01 13:40:40 +02:00
Marc Durdin
c36c3eb943 change(developer): update SIL logo
Fixes: #14116
Test-bot: skip
2025-09-01 08:13:43 +02:00
Marc Durdin
2ec7ad4dd4
Merge pull request #14650 from keymanapp/fix/developer/14348-handle-failure-to-create-dest-path-in-new-keyboard-project
fix(developer): handle failure to create destination path when generating new project
2025-08-31 06:37:03 +02:00
Marc Durdin
d73b31fae5 chore(developer): update tests to match 2025-08-30 07:10:36 +02:00
Marc Durdin
c4a45e2739 fix(developer): remove incorrect offset for compiler error line
Fixes: #13903
2025-08-30 06:43:40 +02:00
Marc Durdin
f8ce6c0ed1 fix(developer): handle failure to create destination path when generating new project
Add better error handling for situation where destination path cannot be
created, for all project types. Also report back the Windows error
message which hopefully clarifies why the directory could not be
created.

Fixes: #14348
Fixes: KEYMAN-DEVELOPER-1P1
Fixes: KEYMAN-DEVELOPER-2SN
Test-bot: skip
2025-08-30 06:15:11 +02:00
Marc Durdin
7a3e50596d fix(developer): handle missing model id in package with compiler error
If a `<LexicalModel>` element is found with a missing or empty `<ID>`
element, the compiler will now report `ERROR_MissingModelId` instead of
crashing. The corresponding check for missing `<ID>` for `<Keyboard>`
element has been updated to match this, and now reports a clearer error
message of `ERROR_MissingKeyboardId` rather than depending on the
side-effect of looking up the keyboard in the `<File>` elements.

Fixes: #13783
Fixes: KEYMAN-DEVELOPER-2X7
Test-bot: skip
2025-08-30 05:46:53 +02:00
Marc Durdin
00b98f2286 fix(windows): emit nunit report path correctly and update TeamCity links
* Windows and Developer sources
* Fixes the report path to be fully qualified
* Adds the TeamCity report logger to remaining DUnitX automated tests

Fixes: #14197
Build-bot: skip build:windows,developer
Test-bot: skip
2025-08-20 07:21:03 +02:00
Marc Durdin
f3fb3ac87b maint(common): move build-utils-ci.inc.sh to ci/ci-publish.inc.sh
Removes a number of unused functions from the file, renames remaining
functions to match our builder script prefix patterns, removes unused
imports from various build scripts (e.g. Android).

Fixes: #14453
2025-08-05 12:54:56 +10:00
Marc Durdin
acefdf281a maint(common): move typescript script functions into typescript.inc.sh
Fixes: #14448
Build-bot: build
Test-bot: skip
2025-08-03 07:01:57 +10:00
Marc Durdin
3530fece47
Merge branch 'maint/common/14065-consolidate-builder-scripts' into maint/common/14447-node.inc.sh 2025-08-02 11:02:21 +07:00
Marc Durdin
ebe7a137ea maint(common): fixup jedi build.sh builder-basic.inc.sh include
Fixes: #14065
2025-08-02 14:01:53 +10:00
Marc Durdin
2726050601 maint(common): rename and move node-related script functions into node.inc.sh
Consolidates the node-related script functions into node.inc.sh, as part
of cleaning up the build scripts and making them easier to maintain into
the future.

Fixes: #14447
2025-08-02 13:34:29 +10:00
Marc Durdin
47e21331dd maint(common): additional builder.inc.sh script renames
Fixes: #14065
2025-08-02 13:16:19 +10:00
Marc Durdin
f394245636 maint(common): consolidate builder scripts
Clarifies the confusing builder.inc.sh / build-utils.sh distinction by
giving the scripts more appropriate names. Most build scripts should use
builder-full.inc.sh; some helper scripts can use builder-basic.inc.sh.
Documented in resources/build/README.md.

Renames:
* resources/build/builder.inc.sh to resources/build/builder-full.inc.sh
* resources/build/build-utils.sh to resources/build/builder-basic.inc.sh

Other changes:
* Moves Android-specific functions out of builder-basic.inc.sh and into
  android/build.sh.
* Renames functions in builder-basic.inc.sh

More functions may be moved from builder-basic.inc.sh into utils.inc.sh
or other scripts in the future.

Fixes: #14065
Build-bot: build all
Test-bot: skip
2025-08-02 08:11:24 +10:00
Marc Durdin
65158a0526 maint(common): rename shellHelperFunctions.sh to utils.inc.sh
Adds documentation for various functions, removes unused functions (a
couple of simple, very lightly used functions were unDRYed; these could
go back the other way across all shell scripts if necessary). TODO items
noted for follow-up refactoring.

Fixes: #14275
Relates-to: #14269
Build-bot: build all
Test-bot: skip
2025-08-02 06:58:40 +10:00
Marc Durdin
808b6557d6 maint(common): use cpp_std=c++17 in meson project default_options
We attempted to set the C++ version in standard.meson.build, but this
does not work well as the option name varies by platform, and it also
triggers a warning in meson. This fix moves the setting into each
meson.build project() default_options. As there are only a handful
of these, the maintenance burden is not high.

Fixes: #14432
Relates-to: #14355
Build-bot: build
Test-bot: skip
2025-08-01 10:23:57 +10:00
Eberhard Beilharz
ce25be13a2
Merge pull request #14381 from keymanapp/test/developer/validutf8
test(developer): add unit tests for `isValidUtf8`
Follow-up-of: #14369
2025-07-29 11:33:46 +02:00
Eberhard Beilharz
73605727a0
Update developer/src/kmcmplib/tests/gtest-compiler.tests.cpp
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-07-28 15:01:13 +02:00
Marc Durdin
6108f8bd9d
Merge pull request #14373 from keymanapp/dependabot/npm_and_yarn/multer-2.0.2
build(deps): bump multer from 2.0.1 to 2.0.2
2025-07-28 08:05:26 +07:00
Eberhard Beilharz
71af4a9636
chore(windows): Merge branch 'master' into maint/windows/addzip 2025-07-22 17:29:56 +02:00
Eberhard Beilharz
3ec1338b36
test(developer): add unit tests for isValidUtf8
Follow-up-of: #14369
Test-bot: skip
2025-07-21 17:21:05 +02:00
Eberhard Beilharz
4a2cf53fbc
maint(windows): replace use of wzzip with add_zip_files
This makes use of the new functionality refactored in the previous
commit by replacing the use of the `wzzip` function with `add_zip_files`.

Test-bot: skip
2025-07-21 10:26:31 +02:00
Eberhard Beilharz
51ca604b47
chore(common): Merge remote-tracking branch 'origin/master' into maint/common/14109_isOsFuncs 2025-07-21 09:20:12 +02:00
Eberhard Beilharz
6930fe90fa
refactor(developer): replace deprecated std::codecvt_utf8_utf16
codecvt is deprecated in C++ 17. See also #12107.

Test-bot: skip
2025-07-18 08:43:44 +02:00
dependabot[bot]
1525cd3058
build(deps): bump multer from 2.0.1 to 2.0.2
Bumps [multer](https://github.com/expressjs/multer) from 2.0.1 to 2.0.2.
- [Release notes](https://github.com/expressjs/multer/releases)
- [Changelog](https://github.com/expressjs/multer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/expressjs/multer/compare/v2.0.1...v2.0.2)

---
updated-dependencies:
- dependency-name: multer
  dependency-version: 2.0.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-18 02:03:46 +00:00
Eberhard Beilharz
e3dc41f98d
chore(developer): add unit tests for UTF16TempFromUTF8 2025-07-17 17:05:41 +02:00
Eberhard Beilharz
a22de0a647
maint(developer): use add_zip_files function
This makes use of `add_zip_files` where possible.

Fixes: #14332
Follow-up-of: #14093
Test-bot: skip
2025-07-10 17:53:16 +02:00
Eberhard Beilharz
3b136fcec9
maint(common): consolidate functions to determine OS
- add `builder_is_windows`, `builder_is_macos` and `builder_is_linux`
  functions
- add/move `BUILDER_OS` env variable to `resources/builder.inc.sh`
- use the new functions and env variable

Fixes: #14109
Test-bot: skip
2025-07-09 18:33:09 +02:00
Eberhard Beilharz
bc7499a3e1
maint(developer): consolidate creating KMC_ZIP file
Previously we created the KMC_ZIP file twice, and one of them was
outdated. This change moves creating the zip file to
`developer/src/inst/build.sh` so that the TC build script only does the
upload.

Fixes: #14263
Test-bot: skip
2025-07-07 19:14:40 +02:00
Steven R. Loomis
0a35181bed chore(developer): rename x: to compileContext:
Fixes: #14117
2025-06-26 15:58:43 -05:00
Steven R. Loomis
28ba904b37 chore(developer): rename ObjectWithMetadata to ObjectWithCompileContext
Fixes: #14117
2025-06-26 15:56:52 -05:00
Marc Durdin
a6936a3a41
Merge pull request #14196 from keymanapp/maint/developer/support-buildLevel
maint(developer): support buildLevel 🤖
2025-06-24 05:53:13 +07:00
Steven R. Loomis
ba8dd1a17e chore(developer): document findInstanceObject() return value
per code review
Fixes: #14099
2025-06-21 14:44:07 -05:00
Marc Durdin
825f7d2df0
Merge branch 'maint/common/pr-build-bot' into maint/developer/support-buildLevel 2025-06-16 04:54:29 +07:00
Marc Durdin
156bdcdd8a maint(common): rename and move builder_if_release_build_level 2025-06-16 06:45:42 +10:00
Marc Durdin
f3136d5ab2 maint(developer): skip signature check on buildLevel build 2025-06-16 05:54:33 +10:00