Commit graph

81 commits

Author SHA1 Message Date
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
e50966f265 chore(developer): sentry 7.102.0 for Server 2024-02-22 12:45:28 +07:00
Marc Durdin
9a3d4e30f4 chore(developer): restore previous tags 2024-02-22 12:45:12 +07:00
Marc Durdin
d7411ec4c4 fix(developer): version string matches for sentry
Fixes two things:
* $VERSION_GIT_TAG was being misinterpreted by mkver as
  $VERSION + "_GIT_TAG". This has been addressed by making the $VERSION
  match the last one in the replaceVersionStrings_Mkver function, and
  also have moved to using the newer $VersionGitTag and $Environment
  vartiables instead.
* The 'dist' property was being set in sentry-cli sourcemap uploads,
  though we never set the dist prop when we initialize sentry.
2024-02-22 11:48:56 +07:00
Marc Durdin
5111e5b32b
Merge pull request #10359 from keymanapp/chore/developer/10357-ngrok-v3
chore(developer): upgrade ngrok to v3
2024-01-24 19:29:02 +11:00
Marc Durdin
11359737f3 chore(developer): remove ngrok region entirely 2024-01-24 12:16:10 +07:00
Marc Durdin
5df9464a30 chore(developer): let ngrok choose region -- experimental 2024-01-19 13:56:51 +07:00
Marc Durdin
a24b672a88 chore(developer): upgrade ngrok package to 5.0 beta 2024-01-11 09:57:32 +07:00
Joshua A. Horton
3870509465 fix(developer): model should activate instantly if matching keyboard exists when registered 2024-01-08 10:00:07 +07:00
Joshua A. Horton
b4944c7b5a fix(developer): fixes test-page model registration hook 2024-01-08 09:44:37 +07:00
Marc Durdin
662ed0e50c fix(common): publish @keymanapp/developer-utils as npm module
Fixes #10111.
2023-12-01 14:05:51 +07:00
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