Commit graph

3007 commits

Author SHA1 Message Date
Marc Durdin
4e5b59f016
Merge pull request #11555 from keymanapp/fix/developer/11554-handle-invalid-default-project-path
fix(developer): handle invalid default project path in options
2024-05-31 13:06:19 +07:00
Marc Durdin
769c10ccf5
Merge pull request #11552 from keymanapp/fix/developer/11551-create-folder-for-mrulist
fix(developer): ensure folder for MRU list is always created
2024-05-30 13:36:31 +07:00
Marc Durdin
e5e21e79cb
Merge pull request #11558 from keymanapp/fix/developer/11557-invalid-project-file-at-launch
fix(developer): handle invalid project file when scanning for owner project
2024-05-30 09:29:19 +07:00
Marc Durdin
84954063f3
Merge pull request #11546 from keymanapp/fix/developer/11545-nomatch-return-causes-exception
fix(developer): handle unsupported `return` statement in `match` and `nomatch` in web compiler
2024-05-30 09:28:47 +07:00
Marc Durdin
951eb571fe chore(developer): rename Default_DefaultProjectPath to Get_Initial_DefaultProjectPath 2024-05-28 14:39:07 +07:00
Marc Durdin
15acd713fb fix(developer): handle invalid project file when scanning for owner project
Also updates the only other place where a project file is loaded like
this, in the project renderer, and handles it too (this scenario is
less likely to happen because the project file must already have been
loaded in order to be presented in the UI).

Fixes: #11557
Fixes: KEYMAN-DEVELOPER-1Z2
2024-05-27 12:46:49 +07:00
Marc Durdin
59a907ee04 fix(developer): handle invalid default project path in options
If a relative or otherwise invalid path is given for `default project
path` in .keymandeveloper/options.json, then this will reset the path
to the default of `%Documents%/Keyman Developer/Projects`.

Fixes: #11554
Fixes: KEYMAN-DEVELOPER-1ZB
2024-05-27 12:14:53 +07:00
Marc Durdin
6d2164f1e6 fix(developer): ensure folder for MRU list is always created
This arises if `%AppData%/Keyman/Keyman Developer` folder is missing.
It is sporadic because most times, Keyman Developer Server wins a
startup race and creates the folder before this code is ever reached.

Fixes: #11551
Fixes: KEYMAN-DEVELOPER-1MY
2024-05-27 10:50:58 +07:00
Marc Durdin
67484cb5d5 fix(developer): handle unsupported return statement in match and nomatch in web compiler
The `return` statement is unsupported in the web compiler. This is
documented, but the problem here was that the `nomatch` and `match`
metarules have no corresponding `fkp` structure, so that caused a fatal
error in the compiler if these were used in combination, e.g.

    nomatch > return

Fixes: #11545
2024-05-27 09:38:46 +07:00
Marc Durdin
e9175de00f fix(developer): test existence of ngrok.exe before atttempting to start
Fixes the scenario where the `%AppData%\Keyman\Keyman Developer\Server\bin`
folder exists, but ngrok.exe is not in the folder, which caused Keyman
Developer Server to crash.

Fixes: #11542
Fixes: KEYMAN-DEVELOPER-1JE
2024-05-27 08:21:13 +07:00
Marc Durdin
84888c2390
Merge pull request #11512 from Nnyny/developer/contexthelp
chore(developer): add context/key-test
2024-05-24 13:51:59 +07:00
Marc Durdin
1e66b6ed0e
Merge pull request #11421 from keymanapp/chore/developer/11317-build.sh
chore(developer): build.sh for developer
2024-05-23 14:22:54 +07:00
Nnyny
273d79e204 context/key-test 2024-05-23 13:45:05 +07:00
Marc Durdin
78de7e901b
Merge pull request #11488 from keymanapp/fix/developer/11486-handle-invalidate-context-in-debugger
fix(developer): handle `KM_CORE_IT_INVALIDATE_CONTEXT` in debugger
2024-05-22 10:56:02 +07:00
Dr Mark C. Sinclair
4b9c2e8f95 chore(developer): Merge branch 'master' into test/developer/kmn-compiler-messages-unit-tests 2024-05-21 09:09:49 +01:00
Marc Durdin
c52d32cca6 fix(developer): handle KM_CORE_IT_INVALIDATE_CONTEXT in debugger
The output from Keyman Core changed in #11172 to emit a
`KM_CORE_IT_INVALIDATE_CONTEXT` action when a frame key is pressed, but
the debugger was not catering for this scenario, causing an assertion
failure.

Fixes: #11486
Fixes: KEYMAN-DEVELOPER-1Y4
2024-05-21 09:02:28 +07:00
Dr Mark C. Sinclair
6c2308637f chore(developer): Merge branch 'master' into test/developer/kmn-compiler-messages-unit-tests 2024-05-20 10:30:36 +01:00
Dr Mark C. Sinclair
23069398bf chore(developer): remove all message text assertions 2024-05-20 10:28:13 +01:00
Marc Durdin
682e141aea refactor(developer): include test_color.cpp in kmcmplib tests 2024-05-20 15:58:17 +07:00
Marc Durdin
8b2070c339 chore(developer): minor cleanup on scripts
Additional shared script resources for Developer and Windows,
refactor of a code signing function, refactor of clean step in build.sh.
2024-05-20 06:35:11 +07:00
Marc Durdin
a062c8773a chore(developer): checkout correct CEF version during release build 2024-05-20 06:35:09 +07:00
Marc Durdin
5c2737738d chore(developer): move to keymancore-2.dll 2024-05-20 06:35:08 +07:00
Marc Durdin
b3da2164ec chore(developer): address review comments 2024-05-20 06:35:06 +07:00
Marc Durdin
8b6d6b0618 chore(developer): cleanup on build scripts
A round of cleanup and consistency for Developer build scripts.
2024-05-20 06:35:05 +07:00
Marc Durdin
4e679dcab4 chore(developer): SIGNTIME env var support
Also some more script cleanup and ensure common/core packages are also
published.
2024-05-20 06:35:02 +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
378cd72512 chore(developer): remove old inst makefiles 2024-05-20 06:34:55 +07:00
Marc Durdin
fa57d5c674 chore(developer): final work on build.sh for developer
Now builds from a clean repo:

  developer/src/build.sh configure build test publish

* Splits kmbrowserhost into kmdbrowserhost for Developer; this means
  that Developer Browser Host now inherits the Developer settings rather
  than the Keyman for Windows settings, and simplifies distribution and
  management. The only difference between the two is in the startup code
  so this seems like a good split.

* Cleanup of various build scripts and dependencies.
2024-05-20 06:34:53 +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
2d249cb8e6 chore(developer): cleanup test paths 2024-05-20 06:34:48 +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
Marc Durdin
2499ebf4bb chore(developer): move windows common Makefiles to build scripts
Relates to #11317.
2024-05-20 06:34:38 +07:00
Marc Durdin
86c62ff36c chore(developer): transition remaining projects to build.sh
Relates to #11317.

All projects now have a build.sh. Still need to work on inst/, remove
old Makefiles, and update CI.
2024-05-20 06:33:51 +07:00
Marc Durdin
8c14b20515 chore(developer): tike/build.sh 2024-05-20 06:33:49 +07:00
Marc Durdin
7ce07c71be chore(developer): move to build.sh for setup
Relates to #11317.

Initial baby steps for configuring build environment for Delphi and VC++
within build.sh without needing to call out to batch files.

Proof-of-concept build.sh for setup.dpr.
2024-05-20 06:33:48 +07:00
Joshua Horton
aa68c1755e
Merge pull request #11402 from keymanapp/chore/web/other-dependency-updates
chore(web): EventEmitter3, sinon dependency updates 🏃
2024-05-15 14:10:52 +07:00
Joshua Horton
887a47930f
Merge pull request #11318 from keymanapp/chore/web/chai-update
chore(web): updates chai, @types/chai dependencies 🏃
2024-05-15 14:10:27 +07:00
Steven R. Loomis
52c65c2e5d
Merge branch 'master' into chore/core/8800-cxx17 2024-05-13 17:45:40 -05:00
Dr Mark C. Sinclair
23affbae3a chore(developer): Merge branch 'master' into test/developer/kmn-compiler-messages-unit-tests 2024-05-13 10:19:14 +01:00
Darcy Wong
cbf1fd5cb1 chore(common): Merge beta to master for sprint A18S1 part 2 2024-05-10 06:27:02 +07:00
Joshua A. Horton
8d7721545a chore(web): updates sinon to a version with fully-ESM artifact 2024-05-09 08:49:51 +07:00
Steven R. Loomis
5a45e80806 chore(developer): update nlohmann/json@v3.11.13
- Update from https://github.com/nlohmann/json/releases/tag/v3.11.3
- Needed for C++17

Fixes: #8800
2024-05-08 17:30:11 -05:00
Steven R. Loomis
18afd44b44 Merge branch 'chore/core/11033-points-not-units' of https://github.com/keymanapp/keyman into chore/core/11033-points-not-units 2024-05-08 09:07:12 -05:00
Steven R. Loomis
ca05471520 chore(windows): more updates for libkeymancore version 2024-05-08 09:07:01 -05:00
Steven R. Loomis
1fe76bcd26
Merge branch 'master' into chore/core/11033-points-not-units 2024-05-07 09:26:07 -05: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
Dr Mark C. Sinclair
7dc33d1f7a chore(developer): Merge branch 'master' into test/developer/keyboard-info-compiler-unit-tests-3 2024-05-06 11:16:00 +01:00
Marc Durdin
8474372baa fix(developer): define lastSelLength variable
Fixes #11361.
2024-05-06 10:25:04 +07:00
Marc Durdin
4fc94a9e70 fix(developer): handle missing Description element for File element in package compiler
Fixes #11353.
2024-05-03 14:31:10 +07:00
Marc Durdin
78902e3891 fix(developer): handle missing Name element for File element in package compiler
Fixes #11351.
2024-05-03 14:25:35 +07:00