Commit graph

21049 commits

Author SHA1 Message Date
Marc Durdin
d5aeecd7d3 chore(developer): suppress excessive messages in kmc
Fixes #9147.
2023-07-11 12:55:19 +07:00
Marc Durdin
53e2ae0ac2 fix(developer): touch layout font test should be lower case
Fixes #9110.

Also, `!=` has higher precedence than `??`.

This returns a boolean result:

```
(platform.font?.toLowerCase() ?? '') != FTouchLayoutFont
```

But `!=` has higher precedence than `??` so this returns the font name:

```
platform.font?.toLowerCase() ?? '' != FTouchLayoutFont
```
2023-07-11 12:34:11 +07:00
Marc Durdin
31083c2ed3 chore(developer): unit test for compilerWarningsAsErrors
Also adds inverse option -W, --no-compiler-warnings-as-errors
command line parameter.
2023-07-11 12:14:51 +07:00
Marc Durdin
804215145f chore(developer): handle compilerWarningsAsErrors option
Fixes #9100.

The `compilerWarningsAsErrors` option can be passed in as a command-line
option or in the project options. Command-line option, if present, takes
precedence over the project option. If neither is set, then the value is
`false`.

Handling of this is within kmc, rather than individual modules.
2023-07-11 10:16:41 +07:00
Marc Durdin
02a1c48d18 chore(developer): add --color switch to kmc
Fixes #9233.

Adds --color and --no-color switches to kmc command line, with default
being determined by console mode.

Also ensures color initialization happens just once in
NodeCompilerCallbacks and moves constants to top of file.
2023-07-11 06:25:21 +07:00
Marc Durdin
acb2e2e1ff chore(developer): split file and project build messages 2023-07-10 15:36:39 +07:00
Marc Durdin
de1c171f46 chore(developer): cleanup compiler messages in kmc
Fixes #8795.
Relates to #9090.

Cleans up and makes consistent compiler messages in kmc, and related
unit tests.

Adds support for colorized messages.

After installing chalk for ansi coloring in kmc, @types/node needed to
be brought in sync with the Typescript version, per the suggestion of
checking against `npm dist-tags @types/node`,found in a discussion at
https://github.com/DefinitelyTyped/DefinitelyTyped/discussions/64262#discussioncomment-4905069

Additional tidying up includes:
* Deprecating a set of functions in compiler-interfaces, bringing them
  together under a new CompilerError class.
  Separating CompilerErrorSeverity and CompilerErrorMask enums.
* Making CompilerError.formatEvent (formerly compilerEventFormat) print
  messages in the same format as NodeCompilerCallbacks (sans coloring).
* Adding a wrapper class for CompilerCallbacks that manages the filename
  reporting, used currently exclusively by kmc itself.
2023-07-10 15:13:48 +07:00
Marc Durdin
0e822e12bd
Merge pull request #9218 from keymanapp/chore/merge-master-into-feature-kmc-kmw-A17S16
chore: merge master into feature-kmc-kmw A17S16
2023-07-10 14:04:30 +10:00
Marc Durdin
7e8ba8bad3 chore(developer): fixup test parameters 2023-07-10 08:52:59 +07:00
Marc Durdin
5c0f0e87a8 chore: Merge branch 'feature-kmc-kmw' into chore/merge-master-into-feature-kmc-kmw-A17S16 2023-07-07 09:53:34 +07:00
Keyman Server
4a53cf60c9
Merge pull request #9216 from keymanapp/auto/version-master-17.0.136
auto: increment master version to 17.0.136
2023-07-07 01:31:49 +07:00
Keyman Build Agent
7c736caaf6 auto: increment master version to 17.0.136 2023-07-06 14:31:10 -04:00
Eberhard Beilharz
75d507ca83
Merge pull request #9017 from keymanapp/feat/linux/8619_multiple-languages
feat(linux): Allow to install keyboard for multiple languages
2023-07-06 16:37:28 +02:00
Marc Durdin
eeecb720eb
Merge pull request #9210 from keymanapp/fix/developer/kmc-package-final-fixes
fix(developer): bring kmc-package inline with file format spec 🗜
2023-07-06 19:58:54 +10:00
Marc Durdin
fed39a7c2f
Merge pull request #9186 from keymanapp/fix/developer/kmc-various-fixes
fix(developer): omnibus package of fixes for kmc 🗜
2023-07-06 19:58:47 +10:00
Joshua Horton
a61d95f419
Merge pull request #9200 from keymanapp/chore/web/cleaner-sentry-sourcemapping
chore(web): normalizes sourcemap paths for cleaner Sentry reports
2023-07-06 14:26:21 +07:00
Joshua Horton
f26de8bb67
Merge pull request #9199 from keymanapp/fix/web/sentry-sourcemapping-2
fix(web): sentry sourcemapping round 2 - yesterday's 'fix' unfortunately doesn't upload the maps
2023-07-06 14:26:10 +07:00
Joshua Horton
97976b59a1
chore(web): Apply suggestions from code review 2023-07-06 14:25:58 +07:00
Marc Durdin
306934eb62 fix(developer): kmc-package support for keyboard metadata
Fixes #9208.
Fixes #9209.
Fixes #9203.
Fixes #9198.

The changes here overlap in kmp-compiler.ts. Addresses several issues
with the package compiler:

* refactors the reading of the metadata from keyboards to make use of it
  when refreshing the keyboard metadata in kmp.json (#9208). This is the
  bulk of the changes.
* Fixes case on some fields in the kps file format (#9209)
* Removes code which emitted strings table to kmp.json, as these were
  only ever used for package installer executables (#9203)
* Cleans up code which emitted Start Menu items to make it match spec
  (#9198)
2023-07-06 13:49:04 +07:00
Marc Durdin
3773522e06 feat(developer): kmc-package support for writing kmp.inf
Fixes #9205.
2023-07-06 13:49:03 +07:00
Marc Durdin
2085c26ab0 fix(developer): trim fields when emitting kmp.json
Fixes #9207.
2023-07-06 13:49:03 +07:00
Marc Durdin
84c04d5cbd fix(developer): strip paths from readmeFile and graphicFile
Fixes #9204.
2023-07-06 13:49:02 +07:00
Marc Durdin
8f5ffcc99d chore(developer): fixup ldml test for kmw emit 2023-07-06 13:48:26 +07:00
Eberhard Beilharz
8ae2af9d44
Merge pull request #9192 from keymanapp/chore/linux/tests
chore(linux): Allow to run tests without integration tests
2023-07-06 08:29:48 +02:00
Joshua Horton
3b64c7c5eb
Merge pull request #9201 from keymanapp/chore/ios/build-cleanup
chore(ios): minor build-script cleanup
2023-07-06 13:02:53 +07:00
Joshua A. Horton
f21d8183ed chore(web): right, a sourceRoot would help sentry-manager 2023-07-06 12:27:53 +07:00
jahorton
0341a4a3d1 chore(ios): minor build-script cleanup 2023-07-06 12:15:04 +07:00
Joshua A. Horton
d47433da56 chore(web): normalizes srcMap paths for cleaner Sentry reports 2023-07-06 10:51:40 +07:00
Joshua A. Horton
615ce0919d fix(web): changed func, forgot to change var reference 2023-07-06 10:51:15 +07:00
Joshua A. Horton
379689af18 feat(web): should probably upload sentry-manager to Sentry as well 2023-07-06 09:35:22 +07:00
Steven R. Loomis
c594186f95
Merge pull request #9195 from keymanapp/common/8069-todo-and-coverage-epic-ldml 2023-07-05 21:24:58 -05:00
Joshua A. Horton
5cbccdc155 fix(web): yesterday's 'fix' unfortunately doesn't upload the maps 2023-07-06 08:43:18 +07:00
Steven R. Loomis
1bea614fd5 chore(common): improve coverage, fix todos 🙀
- remove SectionCompiler.required as unused
- minor fixes to common setSplitter
- add edge case tests

for: #8069
2023-07-05 15:48:12 -05:00
Keyman Server
cc64546f68
Merge pull request #9194 from keymanapp/auto/version-master-17.0.135
auto: increment master version to 17.0.135
2023-07-06 02:40:36 +07:00
Keyman Build Agent
53abcc99af auto: increment master version to 17.0.135 2023-07-05 15:39:59 -04:00
Eberhard Beilharz
0bce446f6a
Merge pull request #9188 from keymanapp/chore/linux/docker
chore(linux): Update docker builds
2023-07-05 18:58:00 +02:00
Steven R. Loomis
917e2c9e22
Merge pull request #9173 from keymanapp/fix/common-7377-multi-escape-reorder-epic-ldml
fix(common): support multichar escapes in element sets 🙀
2023-07-05 10:46:29 -05:00
Eberhard Beilharz
fee21869fb
chore(linux): Allow to run tests without integration tests 2023-07-05 17:08:06 +02:00
Steven R. Loomis
06f99f7c90
Merge pull request #9171 from keymanapp/chore/developer-7377-refactor-kmn-epic-ldml
chore(developer): refactor so KmnCompiler only created once within kmc 🙀
2023-07-05 10:03:50 -05:00
Steven R. Loomis
8c9f66b430
Merge pull request #9170 from keymanapp/fix/developer-8069-coverage-todo-epic-ldml
fix(developer): improve coverage, add todos 🙀
2023-07-05 10:03:24 -05:00
Steven R. Loomis
6f3c503ddd
Merge pull request #9144 from keymanapp/feat/developer-7377-reorder-uset
feat(developer): uset in element string 🙀
2023-07-05 10:03:05 -05:00
Eberhard Beilharz
aec3ee8ca7
Merge pull request #9130 from keymanapp/fix/linux/uninstallibus
fix(linux): Fix uninstalling keyboard for multiple languages with ibus
2023-07-05 16:29:09 +02:00
Eberhard Beilharz
28b16a4ef9
Merge pull request #9190 from keymanapp/docs/linux/readme
docs(linux): Update readme
2023-07-05 16:28:45 +02:00
Eberhard Beilharz
6b4b4fda61
Merge pull request #9165 from keymanapp/fix/linux/4769_tags
fix(linux): Remove tags from package description
2023-07-05 16:26:29 +02:00
Eberhard Beilharz
d60f30e7d9
Merge pull request #9166 from keymanapp/fix/linux/9005_AboutPage
fix(linux): Add scrollbar to About dialog
2023-07-05 16:15:33 +02:00
Eberhard Beilharz
0a0658c1ad
docs(linux): Allow to build with docker without root 2023-07-05 15:21:59 +02:00
Eberhard Beilharz
764d1c47bb
docs(linux): Update readme
Closes #9065.
2023-07-05 15:13:18 +02:00
Eberhard Beilharz
f7a593deac
Merge pull request #9167 from keymanapp/fix/linux/vertical_align
fix(linux): Fix vertical alignment of labels in About dialog
2023-07-05 14:53:49 +02:00
Eberhard Beilharz
55fbd1a814
Merge pull request #9168 from keymanapp/refactor/linux/extractions
refactor(linux): Extract methods
2023-07-05 14:53:33 +02:00
Eberhard Beilharz
67237608cb
Merge pull request #9129 from keymanapp/refactor/linux/km-config
refactor(linux): Code refactoring
2023-07-05 14:53:18 +02:00