diff --git a/HISTORY.md b/HISTORY.md index d28e839223..0022d7aec9 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,25 @@ # Keyman Version History +## 19.0.43 alpha 2025-05-20 + +* chore(ios): FirstVoices certificate update (#13991) +* fix(linux): configurable path in `.service` file when using basu (#13980) + +## 19.0.42 alpha 2025-05-20 + +* maint(linux): add `--no-werror` option to not report warnings as errors (#13988) + +## 19.0.41 alpha 2025-05-19 + +* fix(web): inspectable test-script mode should not be auto-enabled in local-env tests (#13895) +* maint(common): evaluate and apply npm audit fix (without forced changes) (#13897) +* maint: update mocha (#13899) +* maint: update @actions/github + @octokit references (#13900) +* maint(common): update fast-json-patch to ^3.1.1 (#13901) +* change(web): cancel flicks when both returning to and releasing at original tap location (#13683) +* fix(web): empty layout fontSize property should default to 1em (#13959) +* maint(linux): fix release build to run all tests except integration tests (#13968) + ## 19.0.40 alpha 2025-05-17 * maint(common): Add zip.inc.sh for cross-platform zipping (#13812) diff --git a/VERSION.md b/VERSION.md index b74da15626..f63d9a2f0d 100644 --- a/VERSION.md +++ b/VERSION.md @@ -1 +1 @@ -19.0.41 \ No newline at end of file +19.0.44 \ No newline at end of file diff --git a/core/build.sh b/core/build.sh index 291bb750b8..94e8ae4e38 100755 --- a/core/build.sh +++ b/core/build.sh @@ -69,7 +69,8 @@ Libraries will be built in 'build///src'. "uninstall uninstall libraries from current system" \ "${archtargets[@]}" \ "--no-tests do not configure tests (used by other projects)" \ - "--test,-t=opt_tests test[s] to run (space separated)" + "--test,-t=opt_tests test[s] to run (space separated)" \ + "--no-werror don't report warnings as errors" builder_parse "$@" @@ -115,6 +116,11 @@ builder_describe_outputs \ build:arch /core/build/arch/$BUILDER_CONFIGURATION/src/libkeymancore.a \ build:wasm /core/build/wasm/$BUILDER_CONFIGURATION/src/libkeymancore.a +MESON_ARGS=--werror +if builder_has_option --no-werror; then + MESON_ARGS= +fi + if builder_has_action configure; then # Import our standard compiler defines source "$KEYMAN_ROOT/resources/build/meson/standard_meson_build.inc.sh" diff --git a/core/commands.inc.sh b/core/commands.inc.sh index f2c49d88ca..761be3db4d 100644 --- a/core/commands.inc.sh +++ b/core/commands.inc.sh @@ -55,7 +55,7 @@ do_configure() { else pushd "$THIS_SCRIPT_PATH" > /dev/null # Additional arguments are used by Linux build, e.g. -Dprefix=${INSTALLDIR} - meson setup "$MESON_PATH" $MESON_CROSS_FILE --werror --buildtype $BUILDER_CONFIGURATION $STANDARD_MESON_ARGS "${builder_extra_params[@]}" + meson setup "$MESON_PATH" $MESON_CROSS_FILE ${MESON_ARGS} --buildtype $BUILDER_CONFIGURATION $STANDARD_MESON_ARGS "${builder_extra_params[@]}" popd > /dev/null fi diff --git a/linux/build.sh b/linux/build.sh index 1e4b281b72..ae5e5d3bd4 100755 --- a/linux/build.sh +++ b/linux/build.sh @@ -27,7 +27,8 @@ builder_describe \ "--no-integration+ don't run integration tests" \ "--coverage+ capture test coverage" \ "--report+ create coverage report" \ - "--open open the coverage reports in the browser" + "--open open the coverage reports in the browser" \ + "--no-werror+ don't report warnings as errors" builder_parse "$@" diff --git a/linux/ibus-keyman/build.sh b/linux/ibus-keyman/build.sh index d21c52c2ae..b3ec6be21a 100755 --- a/linux/ibus-keyman/build.sh +++ b/linux/ibus-keyman/build.sh @@ -21,7 +21,8 @@ builder_describe \ "@../keyman-system-service:service" \ "--no-integration don't run integration tests" \ "--report create coverage report" \ - "--coverage capture test coverage" + "--coverage capture test coverage" \ + "--no-werror don't report warnings as errors" builder_parse "$@" @@ -45,6 +46,11 @@ else MESON_COVERAGE= fi +MESON_ARGS=--werror +if builder_has_option --no-werror; then + MESON_ARGS= +fi + if builder_has_action configure; then # Import our standard compiler defines source "$KEYMAN_ROOT/resources/build/meson/standard_meson_build.inc.sh" @@ -53,7 +59,7 @@ fi configure_action() { # shellcheck disable=SC2086,SC2154 - meson setup ${MESON_COVERAGE} --werror --buildtype $MESON_TARGET "${builder_extra_params[@]}" "$MESON_PATH" + meson setup ${MESON_COVERAGE} ${MESON_ARGS} --buildtype $MESON_TARGET "${builder_extra_params[@]}" "$MESON_PATH" } test_action() { diff --git a/linux/keyman-system-service/build.sh b/linux/keyman-system-service/build.sh index cb66486f01..c673907882 100755 --- a/linux/keyman-system-service/build.sh +++ b/linux/keyman-system-service/build.sh @@ -19,7 +19,8 @@ builder_describe \ "uninstall uninstall artifacts" \ "--no-integration don't run integration tests" \ "--report create coverage report" \ - "--coverage capture test coverage" + "--coverage capture test coverage" \ + "--no-werror don't report warnings as errors" builder_parse "$@" @@ -42,6 +43,11 @@ else fi MESON_PATH="build/$(uname -m)/$MESON_TARGET" +MESON_ARGS=--werror +if builder_has_option --no-werror; then + MESON_ARGS= +fi + clean_action() { rm -rf "$THIS_SCRIPT_PATH/build/" } @@ -61,7 +67,7 @@ check_missing_coverage_configuration() { configure_action() { # shellcheck disable=SC2086,SC2154,SC2248 - meson setup ${MESON_COVERAGE} --werror --buildtype ${MESON_TARGET} "${builder_extra_params[@]}" "${MESON_PATH}" + meson setup ${MESON_COVERAGE} ${MESON_ARGS} --buildtype ${MESON_TARGET} "${builder_extra_params[@]}" "${MESON_PATH}" } test_action() { diff --git a/linux/keyman-system-service/resources/com.keyman.SystemService1.service.basu b/linux/keyman-system-service/resources/com.keyman.SystemService1.service.basu index 67dd16eb5a..357743bbfb 100644 --- a/linux/keyman-system-service/resources/com.keyman.SystemService1.service.basu +++ b/linux/keyman-system-service/resources/com.keyman.SystemService1.service.basu @@ -3,5 +3,5 @@ [D-BUS Service] Name=com.keyman.SystemService1 -Exec=/usr/libexec/systemd-keyman.service +Exec=@LIBEXECDIR@/systemd-keyman.service User=root diff --git a/linux/keyman-system-service/resources/meson.build.in b/linux/keyman-system-service/resources/meson.build.in index 3ddafdaaf3..5003e2e4b3 100644 --- a/linux/keyman-system-service/resources/meson.build.in +++ b/linux/keyman-system-service/resources/meson.build.in @@ -1,11 +1,26 @@ # This file will be appended to meson.build by build.sh +cfg = configuration_data() +cfg.set('LIBEXECDIR', get_option('prefix') / get_option('libexecdir')) + install_data('com.keyman.SystemService1.conf', install_dir: get_option('datadir') / 'dbus-1/system.d/') if systemd.name() == 'libsystemd' install_data('com.keyman.SystemService1.service.systemd', install_dir: get_option('datadir') / 'dbus-1/system-services/', rename: ['com.keyman.SystemService1.service']) else # libelogind or basu - install_data('com.keyman.SystemService1.service.basu', install_dir: get_option('datadir') / 'dbus-1/system-services/') + configure_file( + configuration: cfg, + input: 'com.keyman.SystemService1.service.basu', + output: 'com.keyman.SystemService1.service', + install: true, + install_dir: get_option('datadir') / 'dbus-1/system-services/' + ) endif -install_data('systemd-keyman.service', install_dir: get_option('prefix') / 'lib/systemd/system/') +configure_file( + configuration: cfg, + input: 'systemd-keyman.service.in', + output: 'systemd-keyman.service', + install: true, + install_dir: get_option('prefix') / 'lib/systemd/system/' +) diff --git a/linux/keyman-system-service/resources/systemd-keyman.service b/linux/keyman-system-service/resources/systemd-keyman.service.in similarity index 95% rename from linux/keyman-system-service/resources/systemd-keyman.service rename to linux/keyman-system-service/resources/systemd-keyman.service.in index a0e76f549f..aad8d66f6e 100644 --- a/linux/keyman-system-service/resources/systemd-keyman.service +++ b/linux/keyman-system-service/resources/systemd-keyman.service.in @@ -9,7 +9,7 @@ Documentation=https://github.com/keymanapp/keyman/tree/master/linux/keyman-syste [Service] Type=dbus BusName=com.keyman.SystemService1 -ExecStart=/usr/libexec/keyman-system-service +ExecStart=@LIBEXECDIR@/keyman-system-service Restart=on-failure # Filesystem lockdown diff --git a/oem/firstvoices/ios/exportAppStore.plist b/oem/firstvoices/ios/exportAppStore.plist index 1d826a49bb..35155c59ea 100644 --- a/oem/firstvoices/ios/exportAppStore.plist +++ b/oem/firstvoices/ios/exportAppStore.plist @@ -7,9 +7,9 @@ teamID D7TR486TEH signingCertificate - 227D454DE9320031D7E9C3E02FEB7463B9A33776 + D7B7973A30C90C1A04666667F24B4D5C7E913923 installerSigningCertificate - 227D454DE9320031D7E9C3E02FEB7463B9A33776 + D7B7973A30C90C1A04666667F24B4D5C7E913923 provisioningProfiles com.firstvoices.keyboards diff --git a/resources/teamcity/keyman-linux-release.sh b/resources/teamcity/keyman-linux-release.sh index d50cb75cdb..138c273eba 100755 --- a/resources/teamcity/keyman-linux-release.sh +++ b/resources/teamcity/keyman-linux-release.sh @@ -169,7 +169,7 @@ if builder_has_action all; then set_variables_for_nvm linux_build_action - linux_unit_tests_action + linux_unit_tests_action --no-integration publish_action else builder_run_action configure linux_install_dependencies_action @@ -177,6 +177,6 @@ else set_variables_for_nvm builder_run_action build linux_build_action - builder_run_action test linux_unit_tests_action + builder_run_action test linux_unit_tests_action --no-integration builder_run_action publish publish_action fi