Commit graph

33096 commits

Author SHA1 Message Date
Marc Durdin
411cd06df7 fix(developer): use C.UTF-8 locale to for consistent cross-platform whitespace management
On mac arch build, kmcmplib is failing to trim U+2002, unlike all other
platforms. Using UTF-8 locale should treat the ISO 30112 POSIX space
characters, which includes U+2002, as whitespace.
2024-11-06 13:34:28 +07:00
Marc Durdin
3c680e3334 fix(developer): normalize path separators in unit tests in kmcmplib
While kmc did this already in its callbacks, the unit test callbacks
did not, which meant that some keyboard tests failed on Linux and macOS.

Relates-to: #12623
2024-11-06 12:57:55 +07:00
rc-swag
883092e217 feat(windows): fix installHelper 2024-11-06 15:53:45 +10:00
rc-swag
79a23a71fd chore(windows): Merge branch 'epic/windows-updates' into feat/windows/add-apply-now-update
# 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-11-06 14:29:57 +10:00
Marc Durdin
a68ed0d322 chore: update minimum versions 2024-11-06 11:14:59 +07:00
Marc Durdin
d88f16e153 chore(developer): include build-utils-ci.inc.sh in kmcmplib 2024-11-06 11:09:14 +07:00
Marc Durdin
f4bd99f935 fix(developer): reconnect --full-test in kmcmplib build and enable for CI
The --full-test parameter in kmcmplib build.sh has not been working.
This PR reconnects the parameter and also enables it by default for CI
test builds (not release builds).

Fixes: #12623
2024-11-06 10:59:29 +07:00
Marc Durdin
393a15e2f2 chore(developer): skip masaram_gondi in kmcmplib full test
masaram_gondi.kmx fixture is built from a known-bad source, which is
caught in kmcmplib 18.0.

This failure is because the keyboard source had non-BMP characters in
the key part of the rule on line 215, which has been picked up by the
18.0 compiler in #11806:

```
$keymanonly: if(opt1 = 'gondi') any(Vyanjana)"𑵄" + any(Vyanjana)	>	index(Vyanjana,2) U+11D45
```

The trick here is that the compiled fixture
developer/src/kmcmplib/tests/fixtures/keyboards-repo/masaram_gondi.kmx
is based on a [broken version of the keyboard
source](965ef1941f/release/m/masaram_gondi/source/masaram_gondi.kmn)
in the keyboards repo ([fixed
version](06cfd2d186/release/m/masaram_gondi/source/masaram_gondi.kmn)),
and updating to the fixed version will also trigger updates to a bunch
of other keyboards. I think the simplest resolution is probably to skip
masaram_gondi for 18.0.

Relates-to: #12623
Relates-to: #11806
2024-11-06 09:49:39 +07:00
Marc Durdin
baf08c77e6 fix(developer): correct regression from #12107
Fixes a regression arising from #12107 in debug store strings.

Relates-to: #12623
Relates-to: #12107
2024-11-06 09:48:00 +07:00
Marc Durdin
121d0e38d1
Merge pull request #12627 from keymanapp/fix/developer/12626-handle-merge-commits-when-checking-git-log
fix(developer): handle merge commits when checking git log date
2024-11-06 03:07:01 +01:00
Marc Durdin
7af4ae42ae
chore: Apply suggestions from code review 2024-11-06 03:06:47 +01:00
Marc Durdin
f717b2ba5c fix(developer): handle merge commits when checking git log date
Relates-to: keymanapp/keyboards#3143
Fixes: #12626
Fixes: KEYMAN-DEVELOPER-2AY
2024-11-06 06:11:38 +07:00
Marc Durdin
c4e305a139 fix(windows): correct engine help source path for upload 2024-11-06 05:40:32 +07:00
Keyman Server
705977325d
Merge pull request #12624 from keymanapp/auto/version-master-18.0.136
auto: increment master version to 18.0.136
2024-11-05 10:04:50 -08:00
Keyman Build Agent
1fbb7c8264 auto: increment master version to 18.0.136 2024-11-05 13:04:09 -05:00
Eberhard Beilharz
f4f13a2a2f
Merge pull request #12616 from keymanapp/fix/linux/12587_webkit
fix(linux): set environment variable for rendering of downloads dialog
2024-11-05 16:18:46 +01:00
Eberhard Beilharz
095638e286
Merge branch 'master' into fix/linux/12587_webkit 2024-11-05 08:44:27 +01:00
Eberhard Beilharz
e3d5ef41bb
Merge pull request #12615 from keymanapp/fix/linux/missingDependencies
fix(linux): properly check for missing dependencies
2024-11-05 08:44:08 +01:00
Eberhard Beilharz
6f8920de26
Merge pull request #12614 from keymanapp/chore/linux/launchpad
chore(linux): add support for Ubuntu 25.04 Plucky Puffin
2024-11-05 08:43:49 +01:00
Marc Durdin
c683657969 feat(developer): analyze osk-char-use merge with existing mapping file
A gap in the kmc-analyze module displayMap support was that it was not
possible to extend an existing mapping file, but only to rewrite one.
This caused issues because the mappings could change between runs, if
keyboards changed, meaning fonts would not be backward compatible. This
change guarantees an existing mapping file will have exactly the same
character mappings, and only adds new mappings that are found.

Also adds unit tests and enables for kmc-analyze.

Fixes: #9767
2024-11-05 14:43:29 +07:00
rc-swag
e239ec710a feat(windows): Review comments 2024-11-05 17:20:12 +10:00
Marc Durdin
ea6714956f
Merge pull request #12608 from keymanapp/fix/developer/12607-force-server-directory-before-config-save
fix(developer): create Server config directory before options save
2024-11-05 07:07:02 +01:00
Marc Durdin
ea629bed95
Merge pull request #12602 from keymanapp/docs/websites-readme-debug
docs: Update websites readme with debug info
2024-11-05 07:06:52 +01:00
Marc Durdin
a233e4b4d5
Merge pull request #12601 from keymanapp/refactor/web/12347-move-engine-web-into-app-repo
refactor(web): move web engine help to app repo
2024-11-05 07:06:41 +01:00
Marc Durdin
c655f9d2eb
Merge pull request #12600 from keymanapp/refactor/windows/12347-move-engine-windows-into-app-repo
refactor(windows): move windows Engine help in-repo
2024-11-05 07:06:32 +01:00
Marc Durdin
41f592b12b
Merge pull request #12599 from keymanapp/refactor/ios/12347-move-engine-ios-into-app-repo
refactor(ios): move ios Engine help in-repo
2024-11-05 07:06:22 +01:00
Marc Durdin
4b8ee71892
Merge pull request #12598 from keymanapp/refactor/android/12347-move-engine-android-into-app-repo
refactor(android): move Android Engine help in-repo
2024-11-05 07:06:11 +01:00
Marc Durdin
1fc6558eea
Merge pull request #12596 from keymanapp/fix/developer/12553-kmc-model-handle-missing-files
fix(developer): handle missing files in kmc-model
2024-11-05 07:06:03 +01:00
Marc Durdin
9c403bc947
Merge pull request #12595 from keymanapp/fix/developer/12546-kmc-kmn-handle-missing-files
fix(developer): handle missing files in kmc-kmn
2024-11-05 07:05:52 +01:00
Marc Durdin
60e7f869fb
Merge pull request #12594 from keymanapp/fix/developer/12517-paste-into-wordlist-editor
fix(developer): handle paste of TSV into Wordlist grid
2024-11-05 07:05:40 +01:00
rc-swag
7be490a67b
feat(windows): review comment suggestions
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-11-05 11:33:18 +10:00
Keyman Server
4ab4937cc0
Merge pull request #12618 from keymanapp/auto/version-master-18.0.135
auto: increment master version to 18.0.135
2024-11-04 10:03:05 -08:00
Keyman Build Agent
c2af4ce791 auto: increment master version to 18.0.135 2024-11-04 13:02:28 -05:00
Eberhard Beilharz
a15a005648
fix(linux): set environment variable for rendering of downloads dialog
This works around a problem in webkit2gtk where the download dialog
sometimes only renders a blank screen. Setting the environment variable
seems to help, not only in the cases that the issue describes (with a
NVidia graphics card), but also in my testing in a VM.

Fixes: #12587
2024-11-04 18:53:18 +01:00
Eberhard Beilharz
f6b8ce010a
chore(linux): add support for Ubuntu 25.04 Plucky Puffin
With this change we will also build and provide binaries on Launchpad
for the next Ubuntu release, 25.04 Plucky Puffin.
2024-11-04 18:21:45 +01:00
Eberhard Beilharz
0688c43253
fix(linux): properly check for missing dependencies
The previous implementation didn't work because the import of
`download_and_install_package` happened before we checked for the missing
dependencies and so the program crashed. This change fixes this and now
does the imports after checking for the missing dependencies so that we
can display an error message to the user.

Also fix a warning.
2024-11-04 18:10:19 +01:00
Steven R. Loomis
6252d584c1
Merge branch 'master' into fix/developer/12467-invalid-marker-names 2024-11-04 10:16:47 -06:00
Steven R. Loomis
3eac4f12c9 fix(common): check for invalid markers
- pattern parser update
- correct spelling of Error_InvalidVariableIdentifier
- track and report bad marker strings (look like markers but not)
- fix: may have missed markers mentioned in variables
- tests for above

Fixes: 12467
2024-11-04 10:15:56 -06:00
Steven R. Loomis
ebf2222f4f
Merge pull request #12606 from keymanapp/fix/developer/12455-no-uset-on-to 2024-11-04 07:16:23 -06:00
Dr Mark C. Sinclair
036ce049af chore(developer): update comments to remover TODO where virtual key section cannot be reached 2024-11-04 10:28:53 +00:00
sgschantz
9ff6d70ac1 fix(ios): fix keyboard height layout for portrait 2024-11-04 16:25:10 +07:00
Marc Durdin
0467febf46
chore(developer): apply review suggestions 2024-11-04 05:01:43 +01:00
Marc Durdin
ae9a4210c3 fix(developer): create Server config directory before options save
Also use back-off logic for saving in case config file is locked by
another process.

Fixes: #12607
Fixes: KEYMAN-DEVELOPER-1Z1
2024-11-04 08:08:28 +07:00
Steven R. Loomis
fb4f22da66 fix(common): check for invalid markers
- pattern parser update

Fixes: 12467
2024-11-01 16:50:25 -05:00
Steven R. Loomis
c057112c9f fix(developer): add a test for empty varable id, fix message
- stray \u in Error_InvalidVariableIdentifer
- add a test for an empty variable id
2024-11-01 13:47:39 -05:00
Steven R. Loomis
ac99a4c54d fix(developer): ldml don't allow a uset as right-hand-side variable
- to="$[triisap]" is a mistake and not allowed.
- it's either meant to be a regular variable, or a map. Both of those are different syntax.
- add a test for the failing case, and also for the escaped case (to="\$[…)
2024-11-01 13:03:31 -05:00
Keyman Server
6144265ace
Merge pull request #12605 from keymanapp/auto/version-master-18.0.134
auto: increment master version to 18.0.134
2024-11-01 11:02:49 -07:00
Keyman Build Agent
6c87129d0f auto: increment master version to 18.0.134 2024-11-01 14:02:08 -04:00
Dr Mark C. Sinclair
ed42594b1a fix(developer): minor layout changes 2024-11-01 12:10:39 +00:00
Dr Mark C. Sinclair
94019b92b5 fix(developer): add wsRequired flag to check for whitespace between modifiers and modifier(s) and key 2024-11-01 11:43:16 +00:00