Commit graph

367 commits

Author SHA1 Message Date
Eberhard Beilharz
0dbae5c199
fix(core): add missing dependency for core
Core depends on `kmc` which in turn depends on `core/include/ldml`. This
change adds the missing dependency to the build script and fixes building
core from a clean `core` subdirectory.

# Keyman Conventional Commit suggestions:
#
# - Link to a Sentry issue with git trailer:
#     Fixes: _MODULE_-_ID_
# - Give credit to co-authors:
#     Co-authored-by: _Name_ <_email_>
# - Use imperative, present tense ('attach' not 'attaches', 'attached' etc)
# - Don't include a period at the end of the title
# - Always include a blank line before trailers
# - More: https://github.com/keymanapp/keyman/wiki/Pull-Request-and-Commit-workflow-notes
2024-09-17 18:28:02 +02:00
Eberhard Beilharz
c3e587193e
refactor(web): move model/types to web/types
Part-of: #12133
2024-09-09 19:59:01 +02:00
Marc Durdin
86fd36a713
Merge pull request #12117 from keymanapp/chore/developer/build-ci-linux-mac
chore(developer): start building Developer on linux,mac
2024-08-09 18:57:38 +10:00
Marc Durdin
ec97006893 chore(developer): skip case test for case-sensitive filesystem 2024-08-08 05:17:44 +07:00
Marc Durdin
91ca1820dc fix(developer): update date for last git commit date fixture 2024-08-08 04:37:05 +07:00
Marc Durdin
32b4711659
Merge branch 'master' into refactor/common/9665-move-compiler-interfaces-to-developer 2024-08-07 15:15:45 +10:00
Marc Durdin
ed143fb333
Merge branch 'master' into refactor/common/9665-move-ldml-keyboard-source-file-to-developer 2024-08-07 15:15:04 +10:00
Marc Durdin
7849b7734b
Merge pull request #11531 from keymanapp/refactor/common/9665-move-project-file-type-to-developer
refactor(common): move kpj-related files into developer-utils 🐉
2024-08-07 15:12:31 +10:00
Marc Durdin
e67aed1606 refactor(common): move compiler-interfaces to @keymanapp/developer-utils
This should be the last step in the refactoring.

Fixes: #9665
2024-08-02 13:49:59 +07:00
Marc Durdin
cebd4138e6 refactor(developer): update imports 2024-08-02 10:38:38 +07:00
Marc Durdin
b48ac789eb chore(developer): update git commit date test due to non-merge commit 2024-08-01 11:01:28 +07:00
Marc Durdin
d8986be12f refactor(common): merge master into branch 2024-08-01 07:07:07 +07:00
Marc Durdin
d1e351a1ac
Revert "chore(developer): remove redundant references from tsconfig.json" 2024-08-01 08:57:27 +10:00
Marc Durdin
1cff1a5084 chore(developer): remove redundant references from tsconfig.json
With the full move to ES Modules, we no longer need to include
`references` in tsconfig.json, as we can rely on package.json and
build.sh dependency management. Note however that `tsc -b` may not work
to build dependencies -- they need to be built using `build.sh`, which
calculates which dependencies need building.

kmc-keyboard-info was missing a dependency link to kmc-package in
build.sh, correcting this at the same time.

Relates-to: #12027
2024-07-27 05:44:22 +07:00
Marc Durdin
1afa4beb01 fix(developer): remove paths from tsconfig.json
Fixes: #12027
2024-07-26 06:59:45 +07:00
Marc Durdin
cfa85d1cc8 chore(developer): rename kmc-ldml export LdmlKeyboardCompilerMessages to LdmlCompilerMessages
This makes the exported class name more consistent with the other
compiler message classes and removes one more unnecessary alias.
2024-07-22 15:58:39 +07:00
Marc Durdin
1f0d51eec5 feat(developer): add searching for message identifiers to kmc message
Fixes: #10875
2024-07-21 14:50:33 +10:00
Marc Durdin
d23208ac9e chore(developer): add msec in comment 2024-06-18 07:36:35 +10:00
Marc Durdin
e081e0c72e fix(developer): check HISTORY.md to get last modified date for keyboard_info and model_info
This updates the calculation of the lastModifiedDate property of the
.keyboard_info and .model_info file. It now looks for the most recent
commit to HISTORY.md, and then falls back to the project folder for
.keyboard_info and .model_info.

getLastGitCommitDate now also returns UTC date (it was giving TZ=0
which is affected by daylight saving), and works for a file rather than
just for a folder, and a corresponding unit test has been added.

The date strings returned will now always include '.000' msec suffix. I
have manually verified that the import into the api.keyman.com database
copes with this, and that this change still conforms to the expected
schema for .keyboard_info and .model_info files.

Last, but important, it turned out that the unit tests for kmc were not
running. This has been resolved in kmc/build.sh.

Fixes: #11793
2024-06-18 07:03:08 +10:00
Marc Durdin
72aa772e20 test(developer): add fixture for getLastGitCommitDate unit test 2024-06-18 06:44:20 +10:00
Joshua A. Horton
ace4eb25c4 chore(common): Merge branch 'master' into change/common/update-esbuild 2024-06-13 12:47:55 +07:00
Marc Durdin
9cf09a5140 refactor(common): move kpj-related files into developer-utils
Relates to #9665.
2024-06-12 16:31:52 +07:00
Joshua A. Horton
d07fa7e953 chore(common): eliminate ts-node ref from most subpackages 2024-06-10 10:07:58 +07:00
Joshua A. Horton
e527317d3a fix(common): remove subpackge entries for older TS version 2024-06-10 09:14:03 +07:00
Joshua A. Horton
cb0a60165c change(common): updates esbuild to 0.18.9 2024-06-05 12:09:53 +07:00
Marc Durdin
ee0fc0ce14 chore(developer): cleanup npm publish
Use a new flag `--npm-publish` in conjunction with `publish` action,
so that the default will always be to `npm pack` if the new flag is not
specified. This flag is also guarded in the actual npm publish code to
ensure that it can only run in the appropriate CI alpha/beta/stable
environment, and not in local or test.

This then also removes the separate `pack` action.

Also removes legacy boilerplate from a number of build scripts.
2024-05-20 06:34:57 +07:00
Marc Durdin
41df6d1cd7 chore(developer): refactor remaining build scripts
This finishes the changes for all build infrastructure for Keyman
Developer to use build.sh.
2024-05-20 06:34:50 +07:00
Marc Durdin
c8a1c6aa39 chore(developer): use builder.inc.sh instead of build-utils.sh in build scripts
also, remove old Makefiles
2024-05-20 06:34:46 +07:00
Joshua A. Horton
398b9e0ae2 chore(common): drops package-specific 'chai', '@types/chai' versions
chore(web): missed leaving these out of the rebase
2024-05-07 14:35:09 +07:00
Marc Durdin
cd8121ef65 chore(common): builder scripts now use /resources/build/builder.inc.sh
Note: there is a bit of potential confusion about the difference between
/resources/builder.inc.sh (the full implementation for builder scripts),
and /resources/build/builder.inc.sh (the source script that builder
scripts should always use).

This allows us to make assumptions that will always be true for builder
scripts that may not be true for other scripts, such as setting base
folder.
2024-05-02 15:54:31 +07:00
Marc Durdin
0f390d47cc chore(common): maintenance on build scripts - cd
Fixes #11324.

* Always `cd "$THIS_SCRIPT_PATH"`
* Remove unnecessary `cd` from all build.sh
* Remove unnecessary `set -eu` from all build.sh (and `# set -x`)
* Replace old build-utils.sh incantation in a few build.sh scripts
2024-05-02 15:54:29 +07:00
Marc Durdin
268332b608 chore(developer): fix sentry-cli path 2024-04-03 11:58:39 +07:00
Marc Durdin
debb799caa fix(common): upgrade sentry-cli to 2.31.0
Fixes #11091.

Updating to latest sentry-cli on all projects, reviewed release notes
and there do not appear to be any breaking changes.

sentry-cli 2.19.4 had a bug with uploading wasm symbols:
https://github.com/getsentry/sentry-cli/issues/1682

It was fixed in 2.20.0:
https://github.com/getsentry/sentry-cli/releases/tag/2.20.0
2024-04-03 10:48:35 +07:00
Marc Durdin
69fdd697d1 refactor(developer): polish fixup function 2024-03-25 10:27:19 +07:00
Marc Durdin
2e2af5b0fa refactor(developer): tidy up the sourcemap path fixup 2024-03-25 10:23:14 +07:00
Marc Durdin
2ce8dc5147 chore(developer): test alternate frame patchup 2024-03-22 13:27:53 +07:00
Marc Durdin
03491f5b7e chore(developer): use rewriteFrames integration in kmc 2024-03-22 11:55:04 +07:00
Marc Durdin
dafb3d8192 fix(developer): correct path for kmc sourcemaps in sentry upload
Fixes #11043 (hopefully).
2024-03-22 09:02:36 +07:00
Marc Durdin
33386746ca fix(developer): return after calling await exitProcess
Because exitProcess is async, static analysis of the function does not
show process termination, even though it returns Promise<Never>. This
can lead to compiler warnings when it gets confused about missing return
values. So have moved to always returning the value from exitProcess,
even though it will never actually return!
2024-03-17 03:45:42 +03:00
Marc Durdin
a2acce8a73
Merge pull request #10941 from keymanapp/fix/developer/message-export-case-sensitivity
fix(developer): message export filename was title case
2024-03-05 20:33:20 +07:00
Marc Durdin
8993ac55c3 fix(developer): message export filename was title case
Triggered failure seen in https://github.com/keymanapp/help.keyman.com/pull/1085.
2024-03-05 03:22:27 -06:00
Marc Durdin
310504adb7
Merge pull request #10918 from keymanapp/chore/developer/consolidate-help-links
chore(developer): consolidate external links in Developer messages
2024-03-05 16:07:01 +07:00
Marc Durdin
e64103a02f chore(developer): consolidate external links in Developer messages
Establishes keyman-urls.ts as a single place for any links to external
websites.

I searched all .ts files in Keyman Developer source and replaced
references to websites with function calls here. Note that the names of
individual functions within this class can be easily changed as needed,
as the hard part was the consolidation.
2024-03-04 12:38:07 +07:00
Marc Durdin
dd6b942182
Merge pull request #10906 from keymanapp/chore/developer/10889-deploy-compiler-messages-to-help-site
chore(developer): deploy compiler messages to help site
2024-03-04 12:10:18 +07:00
Marc Durdin
d1aef64460 chore(developer): deploy compiler messages to help site
Fixes #10889.

This involved a bit more refactoring to help-keyman-com.sh in order to
allow for multiple paths to be uploaded.

I opted _not_ to move the entire Keyman Developer documentation into
this repository, partly because a number of pages are still in PHP
rather than Markdown.
2024-03-01 11:01:47 +07:00
Marc Durdin
ccb29e63d3
Merge pull request #10825 from keymanapp/test/developer/kmc-unit-test-infrastructure-messages
test(developer): kmc unit test infrastructure messages
2024-03-01 10:16:20 +07:00
Marc Durdin
44ab67575f
Merge branch 'beta' into feat/developer/10207-kmc-message-command 2024-03-01 08:29:12 +07:00
Marc Durdin
abd5a86196
Merge branch 'beta' into refactor/developer/10207-message-detail 2024-03-01 07:54:31 +07:00
Dr Mark C. Sinclair
c6ae4b183d chore(developer): change empty strings for nulls in unneeded outfile parameter for consistency 2024-02-29 09:39:36 +00:00
Marc Durdin
5062bbad98 feat(developer): adds kmc message command
Realtes to #10207.

Adds a new `kmc message` command which prints detailed information about
any or all compiler messages, in JSON, text, or markdown formats.

Markdown format is emitted to file in a structured way to be deployed to
the help site automatically (coming in a subsequent commit).
2024-02-29 11:05:27 +07:00