Commit graph

15453 commits

Author SHA1 Message Date
Marc Durdin
3977ffda2f fix(web): remove spurious log "No keyboard stubs exist"
This error has been logged for every start of Keyman Engine for Web in
embedded contexts, but nothing bad ever happens. It does not really seem
to be anything we need to worry about. (It may be that the
`setDefaultKeyboard()` call will never return true, but it is still
harmless in any case.)
2022-07-05 15:36:21 +10:00
Marc Durdin
88c7363ab7 fix(ios): only override console object in ios-host if debug enabled 2022-07-05 13:14:39 +10:00
Marc Durdin
10caf08919 fix(web): only report console errors if _enabled 2022-07-05 13:14:20 +10:00
Marc Durdin
0b64871be3 fix(web): improve console.error() reporting
The back story:

Currently Keyman for Android reports errors sent to the console via
`console.error()` into Sentry but sentry-manager itself does not. This
means that Keyman for iPhone and iPad and other users of sentry-manager
do not report these errors. Many of these errors are important.

What's worse is that Keyman for Android's error reporting here (via the
`sendKMWError()` function in Keyman Engine for Android) does not capture
stack traces, and so many of the errors we get do not have enough
information to resolve them.

Furthermore, by having `sendKMWError()` in Keyman for Android, we
capture exceptions and other program errors twice -- once on the web
side, and once on the Java side -- this adds noise to our error
reporting. Sentry also tends to lump many unrelated `sendKMWError()`
events together, so tracking resolution to the errors is painful.

The fix:

This adds a patch to sentry-manager to capture `console.error()` and
`console.warning()` events and report them through Sentry's normal error
reporting, and disables the `sendKMWError()` report (although we leave
the breadcrumb in place for when there are later, related Java errors).
There is a Sentry integration called CaptureConsole, but it does not
support capturing stack traces until v6.14
(https://github.com/getsentry/sentry-javascript/pull/4034). Updating
Sentry to 6.14 or newer is a bigger job (due to ES6 baseline req. etc.)

Note that Keyman for iOS currently has some other stubs in place
overriding the `console.*` functions. These should be removed for
release builds, so that we can use this pattern instead. I will try and
tackle this in a follow-up PR (I will build it on my mac so I can test
it).

A sample error report captured with this mechanism (no sourcemaps here
because this is a -local build):

https://sentry.io/organizations/keyman/issues/3401287467/events/c40fd2cebb7743cc8dfe72e0dd34bf65/?project=5983524

I am proposing we back-port this to 15.0-stable as we are missing a lot
of data in many of our error reports on Android.
2022-07-05 10:57:42 +10:00
Keyman Server
05d7775e30
Merge pull request #6883 from keymanapp/auto/version-master-16.0.25
auto: increment master version to 16.0.25
2022-07-03 04:02:49 +10:00
Keyman Build Agent
81c45dd1ed auto: increment master version to 16.0.25 2022-07-02 14:02:10 -04:00
Marc Durdin
939772a670
Merge pull request #6867 from keymanapp/fix/windows/show-version-number
fix(windows): show full version number
2022-07-02 05:51:57 +10:00
Marc Durdin
378e1a341d
Merge pull request #6847 from keymanapp/fix/common/trigger-builds-stable
fix(common): trigger builds correctly for stable builds
2022-07-02 05:51:47 +10:00
Keyman Server
613c194bf9
Merge pull request #6872 from keymanapp/auto/version-master-16.0.24
auto: increment master version to 16.0.24
2022-06-30 04:02:37 +10:00
Keyman Build Agent
59b7323fd6 auto: increment master version to 16.0.24 2022-06-29 14:01:52 -04:00
Joshua Horton
658865d0af
Merge pull request #6854 from keymanapp/fix/web/6853-refresh-layout-undef-guard
fix(web): null-guard for refreshLayout
2022-06-29 13:30:01 +07:00
Joshua Horton
581bda77aa
Merge pull request #6786 from keymanapp/fix/web/6735-sticky-backspace-on-resize
fix(web): clears repeating bksp on keyboard reload ⬅️
2022-06-29 13:28:01 +07:00
Marc Durdin
f639a95e55 fix(windows): show full version number
Updated various places in Keyman for Windows to show the full
VersionWithTag rather than the short version number we had been
previously showing:

- Support tab
- System Information, About dialog
2022-06-29 11:03:41 +10:00
Keyman Server
850bb2c187
Merge pull request #6864 from keymanapp/auto/version-master-16.0.23
auto: increment master version to 16.0.23
2022-06-29 04:02:25 +10:00
Keyman Build Agent
2393ecec53 auto: increment master version to 16.0.23 2022-06-28 14:01:36 -04:00
Joshua Horton
13d160bfba
Merge pull request #6855 from keymanapp/fix/ios/6807-known-image-height
fix(ios): eliminates conditional height for banner image
2022-06-28 08:28:31 +07:00
Keyman Server
314a1f96f8
Merge pull request #6858 from keymanapp/auto/version-master-16.0.22
auto: increment master version to 16.0.22
2022-06-28 04:02:55 +10:00
Keyman Build Agent
0151193439 auto: increment master version to 16.0.22 2022-06-27 14:02:10 -04:00
Eberhard Beilharz
3180fc0c4e
Merge pull request #6841 from keymanapp/fix/linux/6813-KeyboardInterrupt-cherrypick
fix(linux): Catch KeyboardInterrupt 🍒
2022-06-27 09:33:55 +02:00
Eberhard Beilharz
e831cc6c92
Merge pull request #6840 from keymanapp/fix/linux/6811-link-cherrypick
fix(linux): Deal with non-existing files 🍒
2022-06-27 09:33:43 +02:00
jahorton
db9558e900 fix(ios): eliminates conditional height for banner image 2022-06-27 10:52:31 +07:00
jahorton
25e21a0109 fix(web): a more polished version 2022-06-27 10:14:21 +07:00
jahorton
858966fa91 fix(web): null-guard for refreshLayout 2022-06-27 10:09:11 +07:00
Joshua Horton
bcfd822baa
Merge pull request #6836 from keymanapp/chore/ios/wkwebview-for-infoview
chore(ios): modernizes app-help's internals
2022-06-27 08:26:25 +07:00
Keyman Server
b472fb47ae
Merge pull request #6850 from keymanapp/auto/version-master-16.0.21
auto: increment master version to 16.0.21
2022-06-27 04:02:31 +10:00
Keyman Build Agent
5e4d0a9de6 auto: increment master version to 16.0.21 2022-06-26 14:01:56 -04:00
Marc Durdin
cb94639ebb fix(common): trigger builds correctly for stable builds 2022-06-26 14:33:36 +10:00
Marc Durdin
ff30b60e25
Merge pull request #6780 from keymanapp/chore/web/tweak-check-web-file-size-message
chore(web): shorten check/web/file-size check message
2022-06-26 07:53:31 +10:00
Marc Durdin
78fae1442c
Apply suggestions from code review 2022-06-25 07:49:01 +10:00
Marc Durdin
b659d6bfd7
Update web/tools/check-build-size.sh 2022-06-25 07:48:15 +10:00
Keyman Server
a0ae1b4c2d
Merge pull request #6845 from keymanapp/auto/version-master-16.0.20
auto: increment master version to 16.0.20
2022-06-25 06:20:45 +10:00
Keyman Build Agent
7279471180 auto: increment master version to 16.0.20 2022-06-24 16:20:07 -04:00
Marc Durdin
bd377ee421
Merge pull request #6835 from keymanapp/chore/ios/log-script-actions
chore(ios): log script actions and fixup export settings to avoid version being clobbered
2022-06-25 05:58:45 +10:00
Eberhard Beilharz
d18d720687
fix(linux): Catch KeyboardInterrupt
When the user cancels km-config by pressing Ctrl-C we don't want
this to be reported on Sentry.

Fixes #6813.

(cherry picked from commit 978c24e270)
2022-06-24 08:48:26 +02:00
Eberhard Beilharz
afef8193d6
fix(linux): Deal with non-existing files
This change deals with files that are referenced in the keyboard
package but don't actually exist.

Fixes #6811.

(cherry picked from commit b837a7fb86)
2022-06-24 08:48:04 +02:00
Marc Durdin
e4f0b7c6dc
Merge pull request #6821 from keymanapp/dependabot/npm_and_yarn/got-11.8.5
chore(deps): bump got from 11.8.3 to 11.8.5
2022-06-24 14:51:25 +10:00
Marc Durdin
cc18058cfe chore(ios): rename run-xcodebuild to run_xcodebuild 2022-06-24 14:03:55 +10:00
jahorton
04d1b17883 fix(ios): fixed up delegate func names 2022-06-24 09:35:17 +07:00
jahorton
b247c87a15 chore(ios): also, the set-up specific version 2022-06-24 09:14:19 +07:00
jahorton
3be58b3e9b chore(ios): converts InfoViewController from UIWebView to WKWebView 2022-06-24 09:01:58 +07:00
Marc Durdin
291a5b67c2 chore(ios): include build-utils.sh for samples 2022-06-24 12:00:29 +10:00
Marc Durdin
0730098236 chore(ios): update ios/macos build scripts to log scripts
Adds run-xcodebuild function to wrap xcodebuild calls to keep logging
and error handling consistent. Currently used only by the iOS build; the
macOS build has a corresponding execBuildCommand function which does
pretty much the same thing (changing that would belong in a separate PR
I think and low priority.)
2022-06-24 11:37:46 +10:00
Joshua Horton
f6841333a2
Merge pull request #6557 from keymanapp/change/web/5943-ie-rooting
change(web): drops old IE-related handling code
2022-06-24 08:35:03 +07:00
Marc Durdin
bb1c6a0d57 chore(ios): add manageAppVersionAndBuildNumber=false 2022-06-24 09:18:49 +10:00
Marc Durdin
9904f91801 chore(ios): improve logging 2022-06-24 07:55:07 +10:00
Marc Durdin
fb53bb9396 chore(ios): attempt to log script actions 2022-06-24 07:18:02 +10:00
Keyman Server
feab0c4479
Merge pull request #6834 from keymanapp/auto/version-master-16.0.19
auto: increment master version to 16.0.19
2022-06-24 04:02:04 +10:00
Keyman Build Agent
77f3f694ef auto: increment master version to 16.0.19 2022-06-23 14:01:25 -04:00
Marc Durdin
3321667ffa
Merge pull request #6629 from keymanapp/chore/common/move-common-core-desktop-to-core
chore(core): move common/core/desktop/ to core/ 🍏
2022-06-23 06:24:42 +10:00
Keyman Server
ee2698cfcd
Merge pull request #6823 from keymanapp/auto/version-master-16.0.18
auto: increment master version to 16.0.18
2022-06-22 16:24:35 +10:00