Commit graph

70 commits

Author SHA1 Message Date
Marc Durdin
65b73b7c54
Merge branch 'fix/developer/9939-sentry-support-in-server' into fix/developer/9848-resilient-cache-state-loading 2023-11-06 14:47:08 +11:00
Marc Durdin
ea038c6db8 chore(developer): developer-utils embed 2023-11-06 10:46:48 +07:00
Marc Durdin
8e21925c26 fix(developer): resilience in loading Server config and cache files
Fixes #9848.

Root cause of #9848 is unknown, because the cache state file was filled
with nul bytes. It is unclear how that could have happened, but seems
likely to be external interference.

The cascade was that Server failed to start because it would crash when
attempting to load the cache state file. So this fix resolves that by
handling invalid file exceptions.
2023-11-06 08:30:05 +07:00
Marc Durdin
716cb526b7 fix(developer): Sentry in Server should honour reporting settings
Fixes #9939.

Uses refactored KeymanSentry.ts in developer-utils and updates the
loader in Server to run from that.

The changes to tray.ts and friends are required to deal with a top-level
await issue with the shutdown call.

The top-level await issue is described in detail at
https://marc.durdin.net/2023/11/dynamic-import-on-node-js-with-circular-dependencies-leads-to-interesting-failure-modes/

tl;dr: shutdown needed to do a proper Sentry shutdown. The shutdown code
was in index.ts. This led to a circular dependency and caused a silent
and abrupt exit code 13 in Node.js. Moved shutdown code into shutdown.ts
to resolve this.
2023-11-06 08:18:24 +07:00
Marc Durdin
4ce16a08fc fix(developer): don't use osk-always-visible on touch devices
Fixes #9845.

It seems that the logic for `osk-always-visible` is not quite right on
touch devices -- the OSK disappears on blur but remains touchable -- so
presses in the OSK region emit key events. For Keyman Developer Server,
the simple workaround is to only use `<body class="osk-always-visible">`
when on desktop devices.

We should review the logic for `osk-always-visible` in KeymanWeb, so
that this issue does not arise on touch devices. This patch addresses
the issue in Keyman Developer Server, and matches the behaviour we want
on touch devices in any case, as we don't really want the OSK visible
when blurred, unlike on desktop.
2023-11-01 05:57:13 +07:00
Marc Durdin
8aee151b5d chore: add comments to note internal APIs 2023-10-24 12:35:24 +07:00
Marc Durdin
f3333bfe3b fix(developer): server download Keyman link
Fixes #9702.
2023-10-23 05:22:50 +07:00
Marc Durdin
738ef9570a chore(developer): fixup signcode paths for server
Two conflicting merges meant that paths diverged. Fixes that.
2023-10-10 10:33:59 +07:00
Marc Durdin
6b4497b516
Merge pull request #9695 from keymanapp/fix/windows/9692-re-enable-signature-check
fix(windows): re-enable signature check 🔥
2023-10-09 16:09:54 +11:00
Marc Durdin
c970b1e246 chore(developer): fix paths for addon signing 2023-10-06 11:38:55 +07:00
Marc Durdin
7c2d3624cd chore(developer): sign addons in server 2023-10-06 10:37:25 +07:00
Marc Durdin
a1d7095c58
Merge pull request #9681 from keymanapp/chore/common/9262-cleanup-final-non-esm
chore(common): cleanup final Typescript non-ESM metadata
2023-10-06 13:37:54 +11:00
Marc Durdin
a314ba46a6 fix(developer): server node addin paths 2023-10-05 14:42:33 +07:00
Marc Durdin
33b6b5abc2 chore: update tsconfig 2023-10-04 15:16:34 +07:00
Marc Durdin
3e51389e17
Merge branch 'chore/common/9679-keyman-version-esm-only' into chore/common/9262-cleanup-final-non-esm 2023-10-04 19:07:37 +11:00
Marc Durdin
75a0977cdb chore(developer): fix server tests 2023-10-04 14:17:59 +07:00
Marc Durdin
d4e4992714 chore(common): cleanup final Typescript non-ESM metadata
Fixes #9262.
2023-10-04 12:55:51 +07:00
Marc Durdin
e7ac526c69 chore(developer): fixup Makefile for server 2023-10-04 11:50:03 +07:00
Marc Durdin
8e23b11dfc chore(developer): convert Server to ES Modules
Fixes #9672.

Also rewrote build.sh as a builder script in order to simplify some of
the build changes.

Makes /web a dependency of Keyman Developer Server, which is a
significant improvement, but we need to consider if we want to use web's
debug build as we did in the past.
2023-10-04 09:38:48 +07:00
Joshua Horton
f4ba29926d
chore(developer): apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-06-08 11:57:35 +07:00
Joshua A. Horton
f1c07a2775 fix(developer): updates the internal KMW endpoints used by the test-host 2023-06-07 09:05:59 +07:00
Joshua A. Horton
47f47a05c9 fix(developer): forgot a path component 2023-06-01 12:18:15 +07:00
Joshua A. Horton
0d814c65aa chore(developer): attempt #1 to fix dev build, KMW integration 2023-06-01 11:36:29 +07:00
Joshua A. Horton
797606d363 fix: model de-registration endpoint references 2023-05-05 09:19:32 +07:00
Marc Durdin
ce864ea923 chore: update standard script prolog to use builtin instead of dirname 2023-02-22 11:04:15 +07:00
Marc Durdin
463c7ff907 chore: remove greadlink from standard script prolog 2023-02-22 10:43:06 +07:00
Marc Durdin
4d53a277f3 chore: use builder_die, remove fail 2023-02-20 09:15:38 +07:00
Marc Durdin
c475188c6b chore: use builder_die, remove die 2023-02-20 09:03:37 +07:00
Joshua A. Horton
5912274c99 chore(developer): updates developer/server tsconfig 2023-02-16 14:00:48 +07:00
Joshua A. Horton
a3752dd9ff chore(common): full-repo ts-node update 2023-02-09 12:39:15 +07:00
Joshua A. Horton
24d3f35cc7 fix(developer): drops implicit 'dom' library from server tsconfig 2023-02-09 10:32:02 +07:00
Joshua A. Horton
878e0f0ea2 chore(common): updates typescript to 4.9.5 2023-02-09 08:40:52 +07:00
Joshua A. Horton
ede1068d51 chore(web): Merge branch 'master' into change/web/reorg-source-src-reorg 2023-02-02 09:18:46 +07:00
Joshua A. Horton
61a789a9ca chore(web): Merge branch 'master' into chore/web/top-level-build-script-rework 2023-02-02 08:58:44 +07:00
Marc Durdin
067028cec2 chore: revise tag variable name to VERSION_GIT_TAG
Introduce new $VERSION_GIT_TAG environment variable, and update all
references to release@version in all projects to use the new variable.
2023-01-21 17:02:50 +07:00
Joshua A. Horton
1020c0688c chore(web): Merge branch 'master' into chore/web/top-level-build-script-rework 2023-01-18 08:24:10 +07:00
Marc Durdin
34ece2182d fix(common): update sentry release identifiers to support semver
Fixes #7895.

This should mean that Sentry reports start to track semantic versions. I
have reviewed each project and I _think_ I've captured all the locations
where we need to construct release identifiers. Note that one of them
was fixed from a plain version number.

Docs on release format: https://docs.sentry.io/platforms/node/guides/serverless-cloud/configuration/releases/#bind-the-version
2023-01-17 17:04:24 +07:00
Joshua A. Horton
c5f90d931c chore(web): Merge branch 'chore/web/top-level-build-script-rework' into change/web/reorg-source-src-reorg 2022-11-30 15:38:57 +07:00
Joshua A. Horton
4a96cdb0cb chore(web): cleanup per PR review 2022-11-30 15:35:18 +07:00
Joshua A. Horton
b3724024a1 chore(web): Merge branch 'chore/web/top-level-build-script-rework' into change/web/reorg-source-src-reorg 2022-11-22 12:55:26 +07:00
Joshua A. Horton
52e005a5ca chore(web): Merge branch 'master' into chore/web/top-level-build-script-rework 2022-11-22 12:20:18 +07:00
Marc Durdin
6841a1149f fix(developer): avoid races in init of debugger 2022-11-05 05:27:20 +11:00
Marc Durdin
0c1b1937e3 fix(developer): set keyman.osk immediately after switching device type 2022-11-05 05:26:51 +11:00
Joshua A. Horton
1d8595d48e fix(developer): developer build path partial reversion 2022-10-25 15:44:26 +07:00
Joshua A. Horton
23b516182f change(web): build/<product> -> build/app/<product> 2022-10-25 09:12:43 +07:00
Joshua A. Horton
d36b912c6f fix(developer): KMW copy path lacking a path piece 2022-10-25 08:42:42 +07:00
Joshua A. Horton
242cb1312c fix(developer): fixes developer-server's Web build call 2022-10-24 10:06:18 +07:00
Joshua A. Horton
0d643a88f7 fix(developer): KMW build product copying 2022-10-24 10:05:08 +07:00
Joshua Horton
66f9c520f7
Merge pull request #7343 from keymanapp/change/web/drop-touch-aliases
change(web): now utilizes 'inputMode="none"' on supported touch devices 📴
2022-10-17 10:18:58 +07:00
Marc Durdin
25d91e8f4d fix(developer): manual attachment for kmw in server 2022-10-14 11:10:26 +11:00