Commit graph

33476 commits

Author SHA1 Message Date
Eberhard Beilharz
69db9e9a37
maint(core): exclude .configured files from source tarball 🏗️
In the source tarball we don't want to include `.configured` files so
that a build will call `npm i` first.

Fixes: #15905
Follows: #15926
Test-bot: skip
2026-05-07 19:06:26 +02:00
Eberhard Beilharz
e03c37cacd
chore(linux): Merge branch 'maint/linux/sourcepkg' into chore/linux/checksource 2026-05-07 19:02:54 +02:00
Eberhard Beilharz
14e097ab95
maint(linux): fix source tarball used for packaging
The source tarball we upload to downloads.keyman.com contains all files
necessary to run `${KEYMAN_ROOT}/build.sh`, i.e. it contains all projects
that can be build on Linux. However, that is not the command used when
building Debian packages. There we limit the build to the `linux`
subfolder. Therefore we only need a subset of the files. Using the full
tarball causes some lintian errors.

This change creates and uploads a second tarball on release builds that
contains only the files needed for Debian packaging. The file is named
`keyman_$VERSION.pkg.tar.xz`.

Build-bot: skip
Test-bot: skip
2026-05-07 18:46:20 +02:00
Eberhard Beilharz
b0cc243e1d
chore(linux): remove --project parameter
The option to be able to specify a project for some linux scripts was
left over from older Keyman versions where Keyman was split over several
source packages. The current Keyman version builds multiple binary
Debian packages from just one source package, so this option is no longer
needed. This change gets rid of it.

Build-bot: skip
Test-bot: skip
2026-05-07 16:56:30 +02:00
Eberhard Beilharz
c825fb25f8
chore(linux): make debian.sh a builder script
This change modifies `debian.sh` so that it is a full builder script. This
allows further cleanup in `package-build.inc.sh`.

Follows: #15916
Build-bot: skip
Test-bot: skip
2026-05-07 16:55:00 +02:00
dependabot[bot]
2afd679590
chore(deps): bump ip-address and socks
Bumps [ip-address](https://github.com/beaugunderson/ip-address) and [socks](https://github.com/JoshGlazebrook/socks). These dependencies needed to be updated together.

Updates `ip-address` from 9.0.5 to 10.2.0
- [Commits](https://github.com/beaugunderson/ip-address/commits)

Updates `socks` from 2.8.3 to 2.8.8
- [Release notes](https://github.com/JoshGlazebrook/socks/releases)
- [Commits](https://github.com/JoshGlazebrook/socks/compare/2.8.3...2.8.8)

---
updated-dependencies:
- dependency-name: ip-address
  dependency-version: 10.2.0
  dependency-type: indirect
- dependency-name: socks
  dependency-version: 2.8.8
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-06 18:17:30 +00:00
Keyman Server
591318b6d0
Merge pull request #15917 from keymanapp/auto/version-master-19.0.229
auto: increment master version to 19.0.229
2026-05-06 20:03:46 +02:00
Keyman Build Agent
17fa6b348a auto: increment master version to 19.0.229
Test-bot: skip
Build-bot: skip
2026-05-06 13:01:23 -05:00
Eberhard Beilharz
2c8f878f1d
chore(linux): add verification for source tarball and source package
This change adds a new GitHub action that verifies that Keyman can build
from the source package. Also check that source package used for Launchpad
and Debian/Ubuntu packaging doesn't produce lintian errors. Previously
lintian errors did go unnoticed because they didn't stop the build.

Also refactor `launchpad.sh` script to be a proper builder script, and add
some new parameters to allow skipping some steps in the script.

Build-bot: skip
Test-bot: skip
2026-05-06 19:03:12 +02:00
Marc Durdin
e9cdaa444e
Merge pull request #15909 from keymanapp/chore/move-l10n-docs
chore: move localization documentation to /docs
2026-05-06 18:15:32 +10:00
rc-swag
c5ecfdfd36
Merge pull request #15771 from keymanapp/fix/windows/15594/caps-lock-stores-change-filters
fix(windows): caps lock stores to work in compliant applications
2026-05-06 10:46:48 +10:00
rc-swag
278a1fe754
Merge branch 'master' into fix/windows/15594/caps-lock-stores-change-filters 2026-05-06 09:50:36 +10:00
Keyman Server
12c707dabf
Merge pull request #15910 from keymanapp/auto/version-master-19.0.228
auto: increment master version to 19.0.228
2026-05-05 20:03:40 +02:00
Keyman Build Agent
3116e70a0e auto: increment master version to 19.0.228
Test-bot: skip
Build-bot: skip
2026-05-05 13:01:19 -05:00
Marc Durdin
fd466f338d chore: move localization documentation to /docs
Test-bot: skip
Build-bot: skip
2026-05-05 16:31:27 +02:00
Eberhard Beilharz
53ff8cdf71
Merge pull request #15908 from keymanapp/maint/linux/installemsdk
maint(linux): make emscripten setup on build agents idempotent

The automatic installation of emscripten on build agents did not work if `EMSCRIPTEN_BASE` was set. This change improves things for a corrupt installation by using `EMSCRIPTEN_BASE` if already set, and by skipping clone if it already exists.
2026-05-05 11:53:35 +02:00
Eberhard Beilharz
673e044a4b
maint(linux): make emscripten setup on build agents idempotent
The automatic installation of emscripten on build agents did not work
if `EMSCRIPTEN_BASE` was set. This change improves things for a corrupt
installation by using `EMSCRIPTEN_BASE` if already set, and by skipping
clone if it already exists.

Build-bot: skip build:developer
Test-bot: skip
2026-05-05 10:03:33 +02:00
Keyman Server
275d113ee8
Merge pull request #15906 from keymanapp/auto/version-master-19.0.227
auto: increment master version to 19.0.227
2026-05-04 20:02:21 +02:00
Keyman Build Agent
45773efddf auto: increment master version to 19.0.227
Test-bot: skip
Build-bot: skip
2026-05-04 13:01:12 -05:00
dependabot[bot]
c77dab10fc
chore(deps): bump path-to-regexp and express
Bumps [path-to-regexp](https://github.com/pillarjs/path-to-regexp) to 0.1.13 and updates ancestor dependency [express](https://github.com/expressjs/express). These dependencies need to be updated together.


Updates `path-to-regexp` from 0.1.12 to 0.1.13
- [Release notes](https://github.com/pillarjs/path-to-regexp/releases)
- [Changelog](https://github.com/pillarjs/path-to-regexp/blob/v.0.1.13/History.md)
- [Commits](https://github.com/pillarjs/path-to-regexp/compare/v0.1.12...v.0.1.13)

Updates `express` from 4.21.2 to 4.22.1
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/v4.22.1/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.21.2...v4.22.1)

---
updated-dependencies:
- dependency-name: path-to-regexp
  dependency-version: 0.1.13
  dependency-type: indirect
- dependency-name: express
  dependency-version: 4.22.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-04 09:37:20 +00:00
Marc Durdin
78d5a105e9
Merge pull request #15865 from keymanapp/chore/common/cleanup-optionals-for-ldml-reader
chore(common): cleanup optionals in ldml keyboard reader
2026-05-04 18:55:07 +10:00
Keyman Server
a094fd6bb2
Merge pull request #15901 from keymanapp/auto/version-master-19.0.226
auto: increment master version to 19.0.226
2026-05-01 20:03:48 +02:00
Keyman Build Agent
90b1b11d2c auto: increment master version to 19.0.226
Test-bot: skip
Build-bot: skip
2026-05-01 13:01:29 -05:00
rc-swag
8fb5ae4c62
Merge pull request #15724 from keymanapp/fix/windows/15571-contextual-help-chm-file-has-blank-pages
fix(windows): contextual help chm file has blank pages
2026-05-01 13:46:43 +10:00
Keyman Server
0302a69ec9
Merge pull request #15900 from keymanapp/auto/version-master-19.0.225
auto: increment master version to 19.0.225
2026-04-30 20:02:09 +02:00
Keyman Build Agent
3dad38b4dc auto: increment master version to 19.0.225
Test-bot: skip
Build-bot: skip
2026-04-30 13:01:13 -05:00
Eberhard Beilharz
2709891365
Merge pull request #15820 from keymanapp/fix/linux/context
fix(linux): fix context after typing Bksp with Wayland

This fixes a problem with the context after typing Backspace when using Wayland. Wayland uses double-buffering for the text, so we always have to commit after making changes.

This is only a partial fix, so we can't really test this.

Part-of: #15676
2026-04-30 10:18:35 +02:00
rc-swag
02db51c9b6 fix(windows): address review comments
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-04-28 23:16:17 +10:00
rc-swag
d98ef429ca
Merge branch 'master' into fix/windows/15571-contextual-help-chm-file-has-blank-pages
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-04-24 11:26:20 +10:00
Keyman Server
2c5ddaa44b
Merge pull request #15871 from keymanapp/auto/version-master-19.0.224
auto: increment master version to 19.0.224
2026-04-23 20:02:06 +02:00
Keyman Build Agent
61e44acc8e auto: increment master version to 19.0.224
Test-bot: skip
Build-bot: skip
2026-04-23 13:01:11 -05:00
dependabot[bot]
08f03a0d2b
chore(deps): bump fast-xml-parser from 5.3.8 to 5.7.1
Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 5.3.8 to 5.7.1.
- [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases)
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/compare/v5.3.8...v5.7.1)

---
updated-dependencies:
- dependency-name: fast-xml-parser
  dependency-version: 5.7.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-23 06:14:26 +00:00
dependabot[bot]
5ef1292648
chore(deps): bump uuid and @actions/core
Removes [uuid](https://github.com/uuidjs/uuid). It's no longer used after updating ancestor dependency [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core). These dependencies need to be updated together.


Removes `uuid`

Updates `@actions/core` from 1.9.1 to 1.11.1
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/core)

---
updated-dependencies:
- dependency-name: uuid
  dependency-version: 
  dependency-type: indirect
- dependency-name: "@actions/core"
  dependency-version: 1.11.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-23 01:47:44 +00:00
Darcy Wong
fd5b1fbfbb
Merge pull request #15863 from keymanapp/chore/android/reorder-lang-list
fix(android): Reorder display language list
2026-04-23 10:42:16 +12:00
Marc Durdin
e99813b3e3 chore(common): cleanup optionals in ldml keyboard reader
`boxArrays` had some optional chaining that was either not needed,
and/or was used in an inappropriate context, for example within the
iterable argument to a `for` statement, which would have caused an "not
iterable" error if it ever actually resolved to `undefined`.

This should have no material impact on the code, but helps to clarify
code readability.

Test-bot: skip
2026-04-22 15:33:26 +02:00
Darcy Wong
d66ecec73d fix(android): Address review comments
* Move Espanol back
* Capitalize Svwnska (Swedish)
2026-04-22 13:53:00 +07:00
Darcy Wong
ded6e1c6f3 fix(android): Reorder display language list 2026-04-22 10:42:37 +07:00
rc-swag
2f61208dec
Merge branch 'master' into fix/windows/15571-contextual-help-chm-file-has-blank-pages
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-04-19 20:00:43 +10:00
dependabot[bot]
e5f56672e3
chore(deps-dev): bump basic-ftp from 5.0.5 to 5.2.2
Bumps [basic-ftp](https://github.com/patrickjuchli/basic-ftp) from 5.0.5 to 5.2.2.
- [Release notes](https://github.com/patrickjuchli/basic-ftp/releases)
- [Changelog](https://github.com/patrickjuchli/basic-ftp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patrickjuchli/basic-ftp/compare/v5.0.5...v5.2.2)

---
updated-dependencies:
- dependency-name: basic-ftp
  dependency-version: 5.2.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-10 20:20:16 +00:00
Eberhard Beilharz
139ca64367
docs(linux): improve colors
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-04-09 20:56:20 +02:00
Eberhard Beilharz
8e9e957cc0
fix(linux): some refactorings and improvements 2026-04-09 20:37:21 +02:00
Eberhard Beilharz
1714e00901
docs(linux): add and update docs on GTK and IBus 2026-04-09 20:35:56 +02:00
Keyman Server
f99512c328
Merge pull request #15830 from keymanapp/auto/version-master-19.0.223
auto: increment master version to 19.0.223
2026-04-08 20:04:13 +02:00
Keyman Build Agent
f494a10e24 auto: increment master version to 19.0.223
Test-bot: skip
Build-bot: skip
2026-04-08 13:02:18 -05:00
dependabot[bot]
957d26e28f
chore(deps): bump lodash and @microsoft/api-extractor
Bumps [lodash](https://github.com/lodash/lodash) to 4.18.1 and updates ancestor dependency [@microsoft/api-extractor](https://github.com/microsoft/rushstack/tree/HEAD/apps/api-extractor). These dependencies need to be updated together.


Updates `lodash` from 4.17.23 to 4.18.1
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.23...4.18.1)

Updates `@microsoft/api-extractor` from 7.57.6 to 7.58.1
- [Changelog](https://github.com/microsoft/rushstack/blob/main/apps/api-extractor/CHANGELOG.md)
- [Commits](https://github.com/microsoft/rushstack/commits/@microsoft/api-extractor_v7.58.1/apps/api-extractor)

---
updated-dependencies:
- dependency-name: lodash
  dependency-version: 4.18.1
  dependency-type: indirect
- dependency-name: "@microsoft/api-extractor"
  dependency-version: 7.58.1
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-08 17:07:46 +00:00
Eberhard Beilharz
fc6e2af9c6
Merge branch 'master' into fix/linux/context
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-04-08 18:30:45 +02:00
Eberhard Beilharz
ad9128eb1d
chore(linux): add comment on purpose of is_dirty flag
Addresses code review comment.
2026-04-08 18:16:08 +02:00
Eberhard Beilharz
b71f299d7e
Update linux/ibus-keyman/src/engine.c
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-04-08 18:08:34 +02:00
Eberhard Beilharz
0166861f0b
Merge pull request #15823 from keymanapp/fix/linux/memmove
fix(linux): fix memory problem

This fixes a problem identified by devin.ai: Because of the operator precedence the previous code caused `memmove` to read `sizeof(commit_queue_item) - 1` bytes past the end of `commit_queue`. With this change `memmove` now reads the intended `MAX_QUEUE_SIZE - 1` `commit_queue_items`.
2026-04-08 18:03:02 +02:00
Eberhard Beilharz
b765b55660
fix(linux): fix memory problem
This fixes a problem identified by devin.ai: Because of the operator
precedence the previous code caused `memmove` to read
`sizeof(commit_queue_item) - 1` bytes past the end of `commit_queue`.
With this change `memmove` now reads the intended `MAX_QUEUE_SIZE - 1`
`commit_queue_items`.

Test-bot: skip
2026-04-07 15:14:37 +02:00