Commit graph

2287 commits

Author SHA1 Message Date
Sabine
9c9f13cc11 feat(developer): remove empty file, whitespace, comment; add/remove empty lines 2026-02-16 16:43:35 +01:00
Sabine
3888fe7a54 feat(developer): remove kmcConvertUtil.ts
edit text: "copyright..." in header
2026-02-16 15:42:13 +01:00
Sabine
17704a99d7 feat(developer): delete content of kmcconvertUtils.ts for convertToUnicodeCharacter and convertToUnicodeCodePoint 2026-01-13 11:21:01 +01:00
SabineSIL
06694173fa
Merge branch 'epic/kmc-convert' into feat/developer/kmc-convert 2026-01-08 11:38:36 +01:00
Marc Durdin
df212364a2 maint(resources): add repository record for all published packages
While not documented as such, it appears that the repository record is
required with trusted publishing of npm packages.

Test-bot: skip
Build-bot: skip
2025-10-29 14:35:31 +01:00
Marc Durdin
ba411774f6 maint(resources): move NPM package publishing to GitHub Actions
Due to recent changes in NPM package publishing security requirements,
we have to move from TeamCity build to a GitHub Action to publish our
NPM packages, so we can take advantage of trusted publishing. This
change also consolidates and centralizes the npm publishing into
resources/build/ci/npm-publish.sh, which removes a lot of boilerplate
from each of the build.sh scripts, and ensures consistency.

Packages will be `npm pack`ed on PR and test builds, and published in
release builds.

Ref: https://docs.npmjs.com/trusted-publishers
Ref: https://github.blog/changelog/2025-09-29-strengthening-npm-security-important-changes-to-authentication-and-token-management/
Fixes: #14963
Test-bot: skip
Build-bot: release:developer
2025-10-27 16:31:55 +01:00
Eberhard Beilharz
34c43b1e15
refactor(web): cleanup in test scripts
Also use common function for running web types tests.

Test-bot: skip
2025-09-30 17:40:15 +02:00
Sabine
bfcff5c0b8 feat(developer): move kmcConvert-util functions from util to kmn-file-writer.ts 2025-09-02 16:15:31 +02:00
SabineSIL
8def93726f
Merge branch 'epic/kmc-convert' into feat/developer/kmc-convert 2025-08-28 21:09:43 +02:00
Marc Durdin
81c807c257 chore(common): Merge branch 'master' into maint/common/14453-move-ci-scripts 2025-08-19 10:46:11 +02:00
SabineSIL
fb766023a0
Merge branch 'epic/kmc-convert' into feat/developer/kmc-convert 2025-08-19 08:49:50 +02:00
Joshua Horton
e24deefdb8 fix(web): improve typing accuracy for suggestions & suggestion-generation
Also adds doc-comments to a couple of the related types
2025-08-13 10:27:13 -05: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
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
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
Sabine
86b7a7064b Merge branch 'feat/developer/kmc-convert' of https://github.com/keymanapp/keyman into feat/developer/kmc-convert
# Conflicts:
#	developer/src/kmc-convert/src/converter-messages.ts
#	developer/src/kmc-convert/src/keylayout-to-kmn/keylayout-to-kmn-converter.ts
2025-07-21 11:50:23 +02:00
Sabine
274550da72 feat(developer): comments and formatting of Error_ in converterMessages 2025-07-21 11:47:14 +02:00
Sabine
461717808d feat(developer): version with broken schema.bundler 2025-07-08 15:37:27 +02:00
Sabine
faaf5c9abc feat(developer): validation finished 2025-07-07 11:42:00 +02:00
Sabine
de9820d3c0 feat(developer): validation OK 2025-07-04 19:13:52 +02:00
Sabine
cebbda981f Merge branch 'feat/developer/kmc-convert' into feat/developer/kmc-convert-validateKeylayout
# Conflicts:
#	developer/src/common/web/utils/src/xml-utils.ts
#	developer/src/kmc-convert/src/converter-messages.ts
#	developer/src/kmc-convert/src/keylayout-to-kmn/keylayout-file-reader.ts
#	developer/src/kmc-convert/src/keylayout-to-kmn/keylayout-to-kmn-converter.ts
#	developer/src/kmc-convert/src/keylayout-to-kmn/kmn-file-writer.ts
2025-07-03 11:54:41 +02:00
Sabine
cdb3634f41 feat(developer): interfaces for attributes/nodes 2025-06-28 08:54:25 +02:00
SabineSIL
33ce348791
Merge branch 'epic/kmc-convert' into feat/developer/kmc-convert 2025-06-27 11:02:02 +02:00
Steven R. Loomis
c8ab945348 chore(common): clarify docs on boxXmlArray
- not related to #14117 but mention o[x] instead of o.x in jsdocs
2025-06-26 15:58:47 -05:00
Steven R. Loomis
0a35181bed chore(developer): rename x: to compileContext:
Fixes: #14117
2025-06-26 15:58:43 -05:00
Sabine
072ecbe97b feat(developer): work on comments of PR 12564: replace if/else with array; change in util.ts to prevent NFD characters to be omitted 2025-06-25 15:25:42 +02:00
Sabine
e345798b4b feat(developer): work on more comments:
- make convert() private
- 2 new versions of write()
- tests for new versions of write()
- use keyman verion number
- remove process.cwd from keylayout-file-reader.ts
- add ERROR_UnsupportedCharactersDetected
2025-06-24 17:30:49 +02:00
Steven R. Loomis
7a741dc9d0 chore(developer): ldml: additional line numbers
- ajv validation
- more fixes from out of box testing

Fixes: #14099
2025-06-02 16:30:29 -05:00
Steven R. Loomis
fab29aad77 feat(developer): ldml: update errors for unparseable reorder
Fixes: #14091
2025-06-02 08:52:00 -05:00
Steven R. Loomis
e1638ad458 feat(comon): ldml: test fix for element strings with context
Fixes: #13937
2025-05-31 07:46:11 -05:00
Steven R. Loomis
9d0d34bf09 feat(developer): ldml: list compiler: add context to lists. vars, markers, usets...
- update several messages and the substitution tracker to take context

Fixes: #13935
2025-05-30 14:34:40 -05:00
Steven R. Loomis
8662acc46d feat(developer): ldml: list compiler: add context to lists
add contexts to lists and elements and uset

Fixes: #13935
2025-05-30 12:55:57 -05:00
Steven R. Loomis
db24750bd3 feat(developer): update strs compiler to collect context
- default state needs to be null not undefined

For: #13932
2025-05-28 20:17:45 -05:00
Steven R. Loomis
633f9551c7 feat(developer): update strs compiler to collect context
- attempt to find an object with a context

For: #13932
2025-05-28 20:17:44 -05:00
Sabine
b400d57701 feat(developer): kmn-file writer print out UnicodeCharacters, edit tests using ConverterMsg;new func convertToUnicodeCharacter() with tests 2025-05-26 14:12:45 +02:00
Marc Durdin
9f15e7c7ec maint: add empty 'scripts' tag to package.json to silence warning
Also removes './' from front of gosh.js to address another npm cleanup
(from `npm pkg fix`).

Fixes: #13833
2025-05-25 06:35:28 +07:00
Sabine
00158fdeee feat(developer): readme; add keylayout to schema-bundler.js; remove comments in create_keylayout_schema.sh 2025-05-21 11:20:25 +02:00
Sabine
ebd1514c51 feat(developer): validation create keylayout.schema.json 2025-05-19 15:30:04 +02:00
Joshua Horton
155c1a2b12 maint: update mocha
Some of the npm audit warnings left after #13897 require an updated `mocha` version to remedy.  As we only really use `mocha` to do unit-testing, it should be safe to update if all of our existing tests pass with the new version.

Test-bot: skip
2025-05-13 14:02:02 +07:00
Eberhard Beilharz
4d81589f48
maint(common): use unique names for Keyman version variables
Previously the builder scripts defined a readonly `VERSION` environment
variable for the Keyman version. That caused problems when another
(external) script tried to define a `VERSION` variable. We encountered
this problem when trying to move the TC build steps of a configuration
into a single script (#13399) when we tried to source `~/.nvm/nvm.sh`.

This change uses a Keyman specific prefix for the version variables and
renames `VERSION` → `KEYMAN_VERSION` etc. Unfortunately these variables
are used in a lot of places, so this turned out to be a bit of a yak
shave.

Test-bot: skip
2025-05-07 18:46:51 +02:00
Eberhard Beilharz
af1f2629dd
maint(common): use function to detect if running on TC
This change makes use of the new builder script function to detect if
the script is running on TeamCity.
2025-05-06 17:42:25 +02:00
Joshua Horton
e382bf45ce
Merge pull request #13785 from keymanapp/change/web/drop-usvstring-alias
change(web): replace USVString with string in predictive-text engine
2025-05-06 08:16:28 +07:00
Sabine
b401a26286 feat(developer): start validation: add new keylayout validator (= copy of keyboard3Test validator ) that can be used from kmc.convert 2025-04-30 17:27:09 +02:00
Joshua Horton
e328aa03f7 chore(common): address common/web/types linter issues 2025-04-30 12:34:14 +07:00
Joshua Horton
2011d117d6 chore(developer): finalize activation of prefer-const within developer TS modules 2025-04-30 09:41:07 +07:00
Joshua Horton
e601d59b59 change(web): replace USVString with string in predictive-text engine
Fixes: #12046

It was only ever an alias (for `string`!) for its intended use, with actual `USVString` typing being unavailable in the browser.
2025-04-29 10:47:20 +07:00
Sabine
91bdddf714 feat(developer): move convertToUnicodeCodePoint to util.ts 2025-04-03 16:04:22 +02:00
Steven R. Loomis
b59bb6d4de feat(developer): serialize KMXPlus into XML 🍒
Cherry pick of #12969
> feat(developer): serialize KMXPlus (back) into XML 🗼

(cherry picked from commit f93c45c9e8 #12969)

Fixes: #12874
2025-02-10 12:12:12 -06:00
Dr Mark C. Sinclair
6ead43b899
Merge pull request #13122 from keymanapp/fix/common/web/types/12945-replace-invalid-StrsItem-identity-checks-with-isEqual
fix(common/web): replace invalid StrsItem identity checks with isEqual()
2025-02-04 11:20:53 +00:00