diff --git a/.github/workflows/deb-packaging.yml b/.github/workflows/deb-packaging.yml index b04e542cb2..5cafd5f4c2 100644 --- a/.github/workflows/deb-packaging.yml +++ b/.github/workflows/deb-packaging.yml @@ -181,7 +181,6 @@ jobs: uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2 with: name: keyman-signedpkgs - path: artifacts - name: Upload run: | @@ -191,11 +190,10 @@ jobs: *) destination='-experimental' ;; esac - cd artifacts/keyman-signedpkgs ls -R echo -e "::group::${COLOR_GREEN}Upload source package" - cd artifacts/keyman-srcpkg + cd keyman-srcpkg dput -U llso:ubuntu/jammy${destination} *_source.changes echo "::endgroup::" diff --git a/HISTORY.md b/HISTORY.md index 968f4fe513..41956e9679 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,11 @@ # Keyman Version History +## 17.0.54 alpha 2023-02-22 + +* fix(ios): allow duplicate languages in kmp file (#8125) +* fix(linux): Fix paths in upload action of packaging GHA (#8285) +* fix(android/app): Fix OSK width when rotating (#8291) + ## 17.0.53 alpha 2023-02-21 * chore(windows): Remove old Kannada setup strings (#8257) diff --git a/VERSION.md b/VERSION.md index 07e6a58178..d2e54c06f9 100644 --- a/VERSION.md +++ b/VERSION.md @@ -1 +1 @@ -17.0.54 \ No newline at end of file +17.0.55 \ No newline at end of file diff --git a/android/KMAPro/build-play-store-notes.sh b/android/KMAPro/build-play-store-notes.sh index 0266725e69..3846ce9c42 100755 --- a/android/KMAPro/build-play-store-notes.sh +++ b/android/KMAPro/build-play-store-notes.sh @@ -6,8 +6,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE QUIET=0 diff --git a/android/KMAPro/build.sh b/android/KMAPro/build.sh index f2ec3dacda..22794de677 100755 --- a/android/KMAPro/build.sh +++ b/android/KMAPro/build.sh @@ -11,8 +11,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/build/build-download-resources.sh" diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/MainActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/MainActivity.java index 96c0d3edfe..1ac5cf3e0f 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/MainActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/MainActivity.java @@ -345,6 +345,7 @@ public class MainActivity extends BaseActivity implements OnKeyboardEventListene @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); + KMManager.onConfigurationChanged(newConfig); getSupportActionBar().setBackgroundDrawable(getActionBarDrawable(this)); resizeTextView(textView.isKeyboardVisible()); invalidateOptionsMenu(); diff --git a/android/KMEA/build.sh b/android/KMEA/build.sh index 85c2e725de..fdf7bc7eb9 100755 --- a/android/KMEA/build.sh +++ b/android/KMEA/build.sh @@ -16,8 +16,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE display_usage ( ) { diff --git a/android/build-help.sh b/android/build-help.sh index 04f0efa274..d6185d4873 100755 --- a/android/build-help.sh +++ b/android/build-help.sh @@ -8,8 +8,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE QUIET=0 diff --git a/android/build-publish.sh b/android/build-publish.sh index 4acb3c06ba..5aea4a867d 100755 --- a/android/build-publish.sh +++ b/android/build-publish.sh @@ -12,8 +12,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE echo Publishing APKs to Play Store diff --git a/android/build.sh b/android/build.sh index 1e3222cdf7..b33bc35445 100755 --- a/android/build.sh +++ b/android/build.sh @@ -12,8 +12,8 @@ set -e ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # diff --git a/android/utility/i18n-check-unused-strings.sh b/android/utility/i18n-check-unused-strings.sh index 7da2bb1511..062ff8cff4 100755 --- a/android/utility/i18n-check-unused-strings.sh +++ b/android/utility/i18n-check-unused-strings.sh @@ -24,8 +24,8 @@ set -u # die on undefined variables ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # Preparation diff --git a/common/models/types/build.sh b/common/models/types/build.sh index 1ca4487e40..ff116a58b3 100755 --- a/common/models/types/build.sh +++ b/common/models/types/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" ## END STANDARD BUILD SCRIPT INCLUDE diff --git a/common/predictive-text/build.sh b/common/predictive-text/build.sh index cad512b32b..64377629b4 100755 --- a/common/predictive-text/build.sh +++ b/common/predictive-text/build.sh @@ -11,8 +11,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/predictive-text/testing/one-stage-embedded-webworker/build.sh b/common/predictive-text/testing/one-stage-embedded-webworker/build.sh index 217fa88c8a..f1f727b8c0 100755 --- a/common/predictive-text/testing/one-stage-embedded-webworker/build.sh +++ b/common/predictive-text/testing/one-stage-embedded-webworker/build.sh @@ -6,8 +6,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../resources/build/build-utils.sh" . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" ## END STANDARD BUILD SCRIPT INCLUDE diff --git a/common/predictive-text/testing/two-stage-embedded-webworker/build.sh b/common/predictive-text/testing/two-stage-embedded-webworker/build.sh index 5e82595b18..dd1854ec00 100755 --- a/common/predictive-text/testing/two-stage-embedded-webworker/build.sh +++ b/common/predictive-text/testing/two-stage-embedded-webworker/build.sh @@ -6,8 +6,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../resources/build/build-utils.sh" . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" ## END STANDARD BUILD SCRIPT INCLUDE diff --git a/common/predictive-text/unit_tests/test.sh b/common/predictive-text/unit_tests/test.sh index 8abf7a9d47..12a26dd817 100755 --- a/common/predictive-text/unit_tests/test.sh +++ b/common/predictive-text/unit_tests/test.sh @@ -2,8 +2,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/build/build-utils-ci.inc.sh" diff --git a/common/test/keyboards/build.sh b/common/test/keyboards/build.sh index c1e5f0a678..0a8d1782a5 100755 --- a/common/test/keyboards/build.sh +++ b/common/test/keyboards/build.sh @@ -5,8 +5,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" ## END STANDARD BUILD SCRIPT INCLUDE THIS_DIR="$(dirname "$THIS_SCRIPT")" diff --git a/common/test/keyboards/the_99/build.sh b/common/test/keyboards/the_99/build.sh index 8ea4680ada..aae41c2cb5 100755 --- a/common/test/keyboards/the_99/build.sh +++ b/common/test/keyboards/the_99/build.sh @@ -5,8 +5,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../resources/build/build-utils.sh" # . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" ## END STANDARD BUILD SCRIPT INCLUDE THIS_DIR="$(dirname "$THIS_SCRIPT")" diff --git a/common/test/resources/test_kill_browserstack.sh b/common/test/resources/test_kill_browserstack.sh index 0bff81f341..82e40f85cd 100755 --- a/common/test/resources/test_kill_browserstack.sh +++ b/common/test/resources/test_kill_browserstack.sh @@ -7,8 +7,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE diff --git a/common/tools/hextobin/build.sh b/common/tools/hextobin/build.sh index cf84c75ce9..702e6610f0 100755 --- a/common/tools/hextobin/build.sh +++ b/common/tools/hextobin/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/tools/sourcemap-path-remapper/build.sh b/common/tools/sourcemap-path-remapper/build.sh index 1550cdd872..16c5c76a67 100755 --- a/common/tools/sourcemap-path-remapper/build.sh +++ b/common/tools/sourcemap-path-remapper/build.sh @@ -6,8 +6,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/web/input-processor/build.sh b/common/web/input-processor/build.sh index ffbc313f09..03e012aa19 100755 --- a/common/web/input-processor/build.sh +++ b/common/web/input-processor/build.sh @@ -6,8 +6,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" ## END STANDARD BUILD SCRIPT INCLUDE diff --git a/common/web/keyboard-processor/build.sh b/common/web/keyboard-processor/build.sh index 7736c66b47..6e5b3bf4fe 100755 --- a/common/web/keyboard-processor/build.sh +++ b/common/web/keyboard-processor/build.sh @@ -6,8 +6,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/web/keyman-version/build.sh b/common/web/keyman-version/build.sh index 6d943c81f9..718e2ed954 100755 --- a/common/web/keyman-version/build.sh +++ b/common/web/keyman-version/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/web/lm-worker/build.sh b/common/web/lm-worker/build.sh index 1faa61f3ed..f4d38afc10 100755 --- a/common/web/lm-worker/build.sh +++ b/common/web/lm-worker/build.sh @@ -11,8 +11,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/web/recorder/build.sh b/common/web/recorder/build.sh index fb566a18c8..65edd2af9c 100755 --- a/common/web/recorder/build.sh +++ b/common/web/recorder/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/web/sentry-manager/src/build.sh b/common/web/sentry-manager/src/build.sh index 07f36178e1..fe5c6bd434 100755 --- a/common/web/sentry-manager/src/build.sh +++ b/common/web/sentry-manager/src/build.sh @@ -6,8 +6,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/web/types/build.sh b/common/web/types/build.sh index add0f06c09..b24c6fd43a 100755 --- a/common/web/types/build.sh +++ b/common/web/types/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/web/utils/build.sh b/common/web/utils/build.sh index 9232703a85..e789352c8e 100755 --- a/common/web/utils/build.sh +++ b/common/web/utils/build.sh @@ -6,8 +6,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/common/windows/cef-checkout.sh b/common/windows/cef-checkout.sh index 5142fe6dcc..b8326561b8 100755 --- a/common/windows/cef-checkout.sh +++ b/common/windows/cef-checkout.sh @@ -12,8 +12,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" # . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" ## END STANDARD BUILD SCRIPT INCLUDE diff --git a/common/windows/mkver.sh b/common/windows/mkver.sh index b5c82429f2..8ddb9e34ed 100755 --- a/common/windows/mkver.sh +++ b/common/windows/mkver.sh @@ -8,8 +8,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE display_usage() { diff --git a/configure-repo.sh b/configure-repo.sh index d729255b34..5e7feed94a 100755 --- a/configure-repo.sh +++ b/configure-repo.sh @@ -10,7 +10,7 @@ if [[ -n "$WINDIR" ]]; then # https://stackoverflow.com/a/39160850/1836776 SCRIPT_DIR=$(cmd //C cd) else - SCRIPT_DIR="$(dirname "$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")")" + SCRIPT_DIR="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")" fi case $1 in diff --git a/core/build.sh b/core/build.sh index 953ff74f8f..2d09f4fb5f 100755 --- a/core/build.sh +++ b/core/build.sh @@ -5,8 +5,9 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" + ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/core/tools/ldml-const-builder/build.sh b/core/tools/ldml-const-builder/build.sh index ad49783b61..3b1924e7ee 100755 --- a/core/tools/ldml-const-builder/build.sh +++ b/core/tools/ldml-const-builder/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/developer/src/kmc-keyboard/build.sh b/developer/src/kmc-keyboard/build.sh index e4525c6208..37c8ac194c 100755 --- a/developer/src/kmc-keyboard/build.sh +++ b/developer/src/kmc-keyboard/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/developer/src/kmc-model-info/build.sh b/developer/src/kmc-model-info/build.sh index b4f4835880..1a877cb854 100755 --- a/developer/src/kmc-model-info/build.sh +++ b/developer/src/kmc-model-info/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/developer/src/kmc-model/build.sh b/developer/src/kmc-model/build.sh index 2a9db54670..51aef36cea 100755 --- a/developer/src/kmc-model/build.sh +++ b/developer/src/kmc-model/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/developer/src/kmc-package/build.sh b/developer/src/kmc-package/build.sh index 5b0fe9ce87..ae69a60c6b 100755 --- a/developer/src/kmc-package/build.sh +++ b/developer/src/kmc-package/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/developer/src/kmc/build.sh b/developer/src/kmc/build.sh index 0f6b0aaf35..d774a311dd 100755 --- a/developer/src/kmc/build.sh +++ b/developer/src/kmc/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/developer/src/server/build.sh b/developer/src/server/build.sh index 88624c62c3..53585f1df6 100755 --- a/developer/src/server/build.sh +++ b/developer/src/server/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE EX_USAGE=64 diff --git a/developer/src/server/postbuild.sh b/developer/src/server/postbuild.sh index d9683ee4bf..e4b90e7e50 100755 --- a/developer/src/server/postbuild.sh +++ b/developer/src/server/postbuild.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/developer/src/tools/sentry-upload-difs.sh b/developer/src/tools/sentry-upload-difs.sh index a5ca8b472d..dd806eea64 100755 --- a/developer/src/tools/sentry-upload-difs.sh +++ b/developer/src/tools/sentry-upload-difs.sh @@ -18,8 +18,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE cd "$KEYMAN_ROOT/developer/src" diff --git a/docs/build/macos.md b/docs/build/macos.md index c45d2d4673..d8e4f61696 100644 --- a/docs/build/macos.md +++ b/docs/build/macos.md @@ -59,10 +59,11 @@ These dependencies are also listed below if you'd prefer to install manually. echo 'eval "$(pyenv init --path)"' >> ~/.bash_profile ``` - On M1 only (as greadlink is not on the path otherwise in XCode): + On macOS, you will need to adjust your PATH so that coreutils’ `realpath` takes precedence over the BSD one: ```shell - sudo ln -s /opt/homebrew/bin/greadlink /usr/local/bin/greadlink + # Credit: brew info coreutils + PATH="$HOMEBREW_PREFIX/opt/coreutils/libexec/gnubin:$PATH" ``` * Web: node.js, emscripten, openjdk 8 diff --git a/ios/build-help.sh b/ios/build-help.sh index a03a31a88b..766e4aadce 100755 --- a/ios/build-help.sh +++ b/ios/build-help.sh @@ -8,8 +8,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE QUIET=0 diff --git a/ios/engine/KMEI/KeymanEngine/Classes/Resource Data/InstallableKeyboard.swift b/ios/engine/KMEI/KeymanEngine/Classes/Resource Data/InstallableKeyboard.swift index 34b2de6ff4..14a71eb542 100644 --- a/ios/engine/KMEI/KeymanEngine/Classes/Resource Data/InstallableKeyboard.swift +++ b/ios/engine/KMEI/KeymanEngine/Classes/Resource Data/InstallableKeyboard.swift @@ -106,7 +106,10 @@ public struct InstallableKeyboard: Codable, KMPInitializableLanguageResource { self.lgCode = lgCode let languageMatches = metadata.languages.compactMap { return $0.languageId == lgCode ? $0.name : nil } - guard languageMatches.count == 1 else { + if (languageMatches.isEmpty) { + SentryManager.captureAndLog("Could not find languageId '\(lgCode)' for package '\(packageID)'", sentryLevel: .warning) + } + guard languageMatches.count >= 1 else { return nil } diff --git a/ios/engine/KMEI/KeymanEngine/Classes/kmp.json/KMPKeyboard.swift b/ios/engine/KMEI/KeymanEngine/Classes/kmp.json/KMPKeyboard.swift index 75e54f26aa..7a735f5fd3 100644 --- a/ios/engine/KMEI/KeymanEngine/Classes/kmp.json/KMPKeyboard.swift +++ b/ios/engine/KMEI/KeymanEngine/Classes/kmp.json/KMPKeyboard.swift @@ -76,8 +76,9 @@ class KMPKeyboard: Codable, KMPResource { var installableKeyboards : [InstallableKeyboard] = [] for language in self.languages { - let keyboard = InstallableKeyboard(from: self, packageID: packageId!, lgCode: language.languageId)! - installableKeyboards.append( keyboard ) + if let keyboard = InstallableKeyboard(from: self, packageID: packageId!, lgCode: language.languageId) { + installableKeyboards.append( keyboard ) + } } return installableKeyboards diff --git a/ios/i18n-export.sh b/ios/i18n-export.sh index 12d5b0e5a3..5ae87a6f97 100755 --- a/ios/i18n-export.sh +++ b/ios/i18n-export.sh @@ -2,8 +2,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # Include our resource functions; they're pretty useful! diff --git a/ios/kmbuild.sh b/ios/kmbuild.sh index cac351cce8..437452ae48 100755 --- a/ios/kmbuild.sh +++ b/ios/kmbuild.sh @@ -9,8 +9,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # This script runs from its own folder diff --git a/ios/samples/build_common.sh b/ios/samples/build_common.sh index 22cfdeecfc..c3397e29b4 100755 --- a/ios/samples/build_common.sh +++ b/ios/samples/build_common.sh @@ -9,8 +9,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # Please note that this build script (understandably) assumes that it is running on Mac OS X. diff --git a/ios/scripts/kme-universal.sh b/ios/scripts/kme-universal.sh index d197dc0290..57d9280996 100755 --- a/ios/scripts/kme-universal.sh +++ b/ios/scripts/kme-universal.sh @@ -5,8 +5,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE SCHEME_NAME="KeymanEngine" diff --git a/ios/tools/prepRelease.sh b/ios/tools/prepRelease.sh index 6488bbc87a..1f22de45f0 100755 --- a/ios/tools/prepRelease.sh +++ b/ios/tools/prepRelease.sh @@ -11,8 +11,8 @@ set -e ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # This script runs from its parent's folder diff --git a/linux/build.sh b/linux/build.sh index d4a5618c7a..f0aaff70d5 100755 --- a/linux/build.sh +++ b/linux/build.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE ################################ Main script ################################ diff --git a/linux/ibus-keyman/build.sh b/linux/ibus-keyman/build.sh index a2a97caf63..4ea4824a9f 100755 --- a/linux/ibus-keyman/build.sh +++ b/linux/ibus-keyman/build.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE ################################ Main script ################################ diff --git a/linux/keyman-config/build-help.sh b/linux/keyman-config/build-help.sh index a326fcfffc..97f06ca3d0 100755 --- a/linux/keyman-config/build-help.sh +++ b/linux/keyman-config/build-help.sh @@ -5,7 +5,7 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" ## END STANDARD BUILD SCRIPT INCLUDE THIS_DIR=$(dirname "$THIS_SCRIPT") diff --git a/linux/scripts/deb-packaging.sh b/linux/scripts/deb-packaging.sh index 89da34a9b9..62fd389199 100755 --- a/linux/scripts/deb-packaging.sh +++ b/linux/scripts/deb-packaging.sh @@ -5,8 +5,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE builder_describe \ diff --git a/linux/scripts/debian.sh b/linux/scripts/debian.sh index 6ccbbd6935..135de85432 100755 --- a/linux/scripts/debian.sh +++ b/linux/scripts/debian.sh @@ -15,8 +15,8 @@ set -e ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . $(dirname "$THIS_SCRIPT")/package-build.inc.sh diff --git a/linux/scripts/dist.sh b/linux/scripts/dist.sh index 9c96252df7..8a14810cb5 100755 --- a/linux/scripts/dist.sh +++ b/linux/scripts/dist.sh @@ -11,8 +11,8 @@ set -e ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE BASEDIR=$(pwd) diff --git a/linux/scripts/jenkins.sh b/linux/scripts/jenkins.sh index 5d8dd263cb..5c79625955 100755 --- a/linux/scripts/jenkins.sh +++ b/linux/scripts/jenkins.sh @@ -7,8 +7,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/linux/scripts/launchpad.sh b/linux/scripts/launchpad.sh index 8fb316f6b1..587334245c 100755 --- a/linux/scripts/launchpad.sh +++ b/linux/scripts/launchpad.sh @@ -14,8 +14,8 @@ set -e ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . $(dirname "$THIS_SCRIPT")/package-build.inc.sh diff --git a/linux/scripts/reconf.sh b/linux/scripts/reconf.sh index a160412138..49aae8d903 100755 --- a/linux/scripts/reconf.sh +++ b/linux/scripts/reconf.sh @@ -4,8 +4,8 @@ set -e ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE BASEDIR="$KEYMAN_ROOT/linux" diff --git a/linux/scripts/upload-to-debian.sh b/linux/scripts/upload-to-debian.sh index 3f5792e728..af443cac08 100755 --- a/linux/scripts/upload-to-debian.sh +++ b/linux/scripts/upload-to-debian.sh @@ -30,8 +30,8 @@ END ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/mac/Keyman4MacIM/make-km-dmg.sh b/mac/Keyman4MacIM/make-km-dmg.sh index f8739f02bc..645abb72ed 100755 --- a/mac/Keyman4MacIM/make-km-dmg.sh +++ b/mac/Keyman4MacIM/make-km-dmg.sh @@ -2,8 +2,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # Please note that this build script (understandably) assumes that it is running on Mac OS X. diff --git a/mac/Keyman4MacIM/write-download_info.sh b/mac/Keyman4MacIM/write-download_info.sh index 3b9787ac81..716caea1a9 100755 --- a/mac/Keyman4MacIM/write-download_info.sh +++ b/mac/Keyman4MacIM/write-download_info.sh @@ -2,8 +2,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # Please note that this build script (understandably) assumes that it is running on Mac OS X. diff --git a/mac/build-help.sh b/mac/build-help.sh index cce855b741..1c1d75b4de 100755 --- a/mac/build-help.sh +++ b/mac/build-help.sh @@ -8,8 +8,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE QUIET=0 diff --git a/mac/build.sh b/mac/build.sh index 78bbeccd12..05e963e070 100755 --- a/mac/build.sh +++ b/mac/build.sh @@ -3,8 +3,8 @@ set -e ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE KEYMAN_MAC_BASE_PATH="$KEYMAN_ROOT/mac" diff --git a/mac/is_same_version.sh b/mac/is_same_version.sh index 985aecda35..024902317f 100755 --- a/mac/is_same_version.sh +++ b/mac/is_same_version.sh @@ -6,8 +6,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE #TODO: diff --git a/mac/setup/build.sh b/mac/setup/build.sh index b8e732df6f..11fbb66df8 100755 --- a/mac/setup/build.sh +++ b/mac/setup/build.sh @@ -5,8 +5,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # Include our resource functions; they're pretty useful! diff --git a/oem/firstvoices/android/build.sh b/oem/firstvoices/android/build.sh index bcf0865c97..4951d5f305 100755 --- a/oem/firstvoices/android/build.sh +++ b/oem/firstvoices/android/build.sh @@ -10,8 +10,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/build/build-download-resources.sh" diff --git a/oem/firstvoices/common/build_csv_languages.sh b/oem/firstvoices/common/build_csv_languages.sh index ed6562bc6e..19e6ba06ed 100755 --- a/oem/firstvoices/common/build_csv_languages.sh +++ b/oem/firstvoices/common/build_csv_languages.sh @@ -10,8 +10,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/build/build-download-resources.sh" diff --git a/oem/firstvoices/common/build_keyboards.sh b/oem/firstvoices/common/build_keyboards.sh index e5930258f4..4cac20ca56 100755 --- a/oem/firstvoices/common/build_keyboards.sh +++ b/oem/firstvoices/common/build_keyboards.sh @@ -19,8 +19,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/build/jq.inc.sh" diff --git a/oem/firstvoices/ios/build_common.sh b/oem/firstvoices/ios/build_common.sh index 0c00f0daa3..94e318ca7e 100755 --- a/oem/firstvoices/ios/build_common.sh +++ b/oem/firstvoices/ios/build_common.sh @@ -2,8 +2,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # Include our resource functions; they're pretty useful! diff --git a/resources/build/build-utils-ci.test.sh b/resources/build/build-utils-ci.test.sh index e08843428d..acde714a83 100755 --- a/resources/build/build-utils-ci.test.sh +++ b/resources/build/build-utils-ci.test.sh @@ -7,8 +7,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/build/build-utils-ci.inc.sh" diff --git a/resources/build/build-utils.md b/resources/build/build-utils.md index 4332f4389c..3893fd1ea1 100644 --- a/resources/build/build-utils.md +++ b/resources/build/build-utils.md @@ -43,7 +43,7 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" . "$(dirname "$THIS_SCRIPT")//resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE @@ -78,14 +78,12 @@ We use `set -eu` throughout: ```bash ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" . "$(dirname "$THIS_SCRIPT")//resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE ``` -This somewhat unwieldy incantation handles all our build environments, with -`greadlink` necessary on macOS (again installed with homebrew) due to the -included macOS `readlink` struggling with canonicalization of symbolic links. +This somewhat unwieldy incantation handles all our build environments. The intent is to get a good solid consistent path for the script so that we can safely include the build script, no matter what `pwd` is when the script is run. @@ -172,10 +170,10 @@ a user or called by another script: will execute for all targets of the dependency script. If you are working on code within a dependency, you are currently expected to rebuild and test that dependency locally. - + A dependency is similar to, but not the same as, a child project. Child projects live in sub-folders of the parent project, whereas generally a - dependency will be in another folder altogether. + dependency will be in another folder altogether. Dependencies can be defined for all actions and targets, or may be limited to specific action and/or targets. @@ -379,7 +377,7 @@ builder_describe "Sample script" \ A dependency always starts with `@`. The path to the dependency will be relative to the build script folder if the path does not start with `/`. Otherwise, the path -to the dependency is interpreted relative to the root of the repository. It is an +to the dependency is interpreted relative to the root of the repository. It is an error to specify a dependency outside the repo root. Relative paths will be expanded to full paths, again, relative to the root of diff --git a/resources/build/build-utils.sh b/resources/build/build-utils.sh index c8c0fd3bd1..32722b1099 100755 --- a/resources/build/build-utils.sh +++ b/resources/build/build-utils.sh @@ -22,8 +22,8 @@ # Here is how to include this script reliably, cross-platform: # ## START STANDARD BUILD SCRIPT INCLUDE # # adjust relative paths as necessary -# THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -# . "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +# THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +# . "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" # # END STANDARD BUILD SCRIPT INCLUDE # # Note: keep changes to version, tier and tag determination in sync with mkver (windows/src/buildutils/mkver) @@ -38,8 +38,8 @@ function findKeymanRoot() { # See https://stackoverflow.com/questions/59895/how-to-get-the-source-directory-of-a-bash-script-from-within-the-script-itself # None of the answers are 100% correct for cross-platform # On macOS, requires coreutils (`brew install coreutils`) - local SCRIPT=$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}") - KEYMAN_ROOT=$(dirname $(dirname $(dirname "$SCRIPT"))) + local SCRIPT=$(readlink -f "${BASH_SOURCE[0]}") + KEYMAN_ROOT="${SCRIPT%/*/*/*}" readonly KEYMAN_ROOT } diff --git a/resources/build/builder-report.sh b/resources/build/builder-report.sh index c15035b264..6f2a21fa7f 100755 --- a/resources/build/builder-report.sh +++ b/resources/build/builder-report.sh @@ -10,8 +10,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE cd "$KEYMAN_ROOT" diff --git a/resources/build/help-keyman-com.sh b/resources/build/help-keyman-com.sh index 2c1282495c..09d9bceca0 100755 --- a/resources/build/help-keyman-com.sh +++ b/resources/build/help-keyman-com.sh @@ -10,8 +10,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # diff --git a/resources/build/increment-version.sh b/resources/build/increment-version.sh index 4e57f04cb3..dad2037cc0 100755 --- a/resources/build/increment-version.sh +++ b/resources/build/increment-version.sh @@ -18,13 +18,13 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE -. "$(dirname "$THIS_SCRIPT")/trigger-definitions.inc.sh" -. "$(dirname "$THIS_SCRIPT")/trigger-builds.inc.sh" -. "$(dirname "$THIS_SCRIPT")/sentry-control.inc.sh" +. "${THIS_SCRIPT%/*}/trigger-definitions.inc.sh" +. "${THIS_SCRIPT%/*}/trigger-builds.inc.sh" +. "${THIS_SCRIPT%/*}/sentry-control.inc.sh" gitbranch=`git branch --show-current` diff --git a/resources/build/jq.inc.sh b/resources/build/jq.inc.sh index 781a91eed3..cf68aaf4b2 100644 --- a/resources/build/jq.inc.sh +++ b/resources/build/jq.inc.sh @@ -8,8 +8,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -JQ_THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -# . "$(dirname "$THIS_SCRIPT")/build-utils.sh" +JQ_THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +# . "${THIS_SCRIPT%/*}/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE case "${OSTYPE}" in diff --git a/resources/build/npm-publish.inc.sh b/resources/build/npm-publish.inc.sh index 32f9f8d95b..8a178724f3 100644 --- a/resources/build/npm-publish.inc.sh +++ b/resources/build/npm-publish.inc.sh @@ -24,5 +24,5 @@ function npm_publish() { # # See `npm help publish` for more details. echo "Publishing $DRY_RUN npm package with tag $npm_dist_tag" - npm publish $DRY_RUN --access public --tag $npm_dist_tag || fail "Could not publish $npm_dist_tag release." + npm publish $DRY_RUN --access public --tag $npm_dist_tag || builder_die "Could not publish $npm_dist_tag release." fi diff --git a/resources/build/report-history.sh b/resources/build/report-history.sh index 48b0ff61a6..ea373620b6 100755 --- a/resources/build/report-history.sh +++ b/resources/build/report-history.sh @@ -8,8 +8,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/resources/build/run-required-test-builds.sh b/resources/build/run-required-test-builds.sh index 400dd4f8bc..ba0ac978a7 100755 --- a/resources/build/run-required-test-builds.sh +++ b/resources/build/run-required-test-builds.sh @@ -30,13 +30,13 @@ function debug_echo() { ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE -. "$(dirname "$THIS_SCRIPT")/trigger-definitions.inc.sh" -. "$(dirname "$THIS_SCRIPT")/trigger-builds.inc.sh" -. "$(dirname "$THIS_SCRIPT")/jq.inc.sh" +. "${THIS_SCRIPT%/*}/trigger-definitions.inc.sh" +. "${THIS_SCRIPT%/*}/trigger-builds.inc.sh" +. "${THIS_SCRIPT%/*}/jq.inc.sh" # # Iterate through the platforms 'array' passed in and diff --git a/resources/build/tests/build-utils-traps.test.sh b/resources/build/tests/build-utils-traps.test.sh index 2ebd798ea1..9af1b9b626 100755 --- a/resources/build/tests/build-utils-traps.test.sh +++ b/resources/build/tests/build-utils-traps.test.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/resources/build/tests/builder-deps.test.sh b/resources/build/tests/builder-deps.test.sh index 3c6c7334b4..0313eef1bc 100755 --- a/resources/build/tests/builder-deps.test.sh +++ b/resources/build/tests/builder-deps.test.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/resources/build/tests/builder.inc.test.sh b/resources/build/tests/builder.inc.test.sh index 1901dca6d4..46fd7529cf 100755 --- a/resources/build/tests/builder.inc.test.sh +++ b/resources/build/tests/builder.inc.test.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/resources/build/tests/dependencies/app/build.sh b/resources/build/tests/dependencies/app/build.sh index 83bf37f91f..c38f6204ca 100755 --- a/resources/build/tests/dependencies/app/build.sh +++ b/resources/build/tests/dependencies/app/build.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/resources/build/tests/dependencies/library/build.sh b/resources/build/tests/dependencies/library/build.sh index 34dae97fe8..c6da5900bc 100755 --- a/resources/build/tests/dependencies/library/build.sh +++ b/resources/build/tests/dependencies/library/build.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/resources/build/tests/trap-test-builds.sh b/resources/build/tests/trap-test-builds.sh index 5aac777407..cd0b7770dd 100755 --- a/resources/build/tests/trap-test-builds.sh +++ b/resources/build/tests/trap-test-builds.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE builder_describe \ diff --git a/resources/build/tests/trees/build.sh b/resources/build/tests/trees/build.sh index 13d3816367..e5103f18a9 100755 --- a/resources/build/tests/trees/build.sh +++ b/resources/build/tests/trees/build.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/resources/build/tests/trees/child1/build.sh b/resources/build/tests/trees/child1/build.sh index 795e11e6d3..e5d6f98a3a 100755 --- a/resources/build/tests/trees/child1/build.sh +++ b/resources/build/tests/trees/child1/build.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/resources/build/tests/trees/child2/build.sh b/resources/build/tests/trees/child2/build.sh index cbf048ea26..b443e003c9 100755 --- a/resources/build/tests/trees/child2/build.sh +++ b/resources/build/tests/trees/child2/build.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/resources/build/tests/trees/child3_renamed/src/build.sh b/resources/build/tests/trees/child3_renamed/src/build.sh index 508cc0293f..5572302133 100755 --- a/resources/build/tests/trees/child3_renamed/src/build.sh +++ b/resources/build/tests/trees/child3_renamed/src/build.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../build-utils.sh" # END STANDARD BUILD SCRIPT INCLUDE cd "$THIS_SCRIPT_PATH" diff --git a/resources/builder.inc.sh b/resources/builder.inc.sh index ab979bd040..d550ba3906 100755 --- a/resources/builder.inc.sh +++ b/resources/builder.inc.sh @@ -30,8 +30,8 @@ function _builder_findRepoRoot() { # See https://stackoverflow.com/questions/59895/how-to-get-the-source-directory-of-a-bash-script-from-within-the-script-itself # None of the answers are 100% correct for cross-platform # On macOS, requires coreutils (`brew install coreutils`) - local SCRIPT=$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}") - REPO_ROOT=$(dirname $(dirname "$SCRIPT")) + local SCRIPT=$(readlink -f "${BASH_SOURCE[0]}") + REPO_ROOT="${SCRIPT%/*/*}" readonly REPO_ROOT } @@ -44,16 +44,16 @@ function _builder_findRepoRoot() { # ```bash # ## START STANDARD BUILD SCRIPT INCLUDE # # adjust relative paths as necessary -# THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -# . "$(dirname "$THIS_SCRIPT")/resources/builder.inc.sh" +# THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +# . "${THIS_SCRIPT%/*}/resources/builder.inc.sh" # ## END STANDARD BUILD SCRIPT INCLUDE # ``` # function _builder_setBuildScriptIdentifiers() { if [ ! -z ${THIS_SCRIPT+x} ]; then - THIS_SCRIPT_PATH="$(dirname "$THIS_SCRIPT")" + THIS_SCRIPT_PATH="${THIS_SCRIPT%/*}" readonly THIS_SCRIPT_PATH - THIS_SCRIPT_NAME="$(basename "$THIS_SCRIPT")" + THIS_SCRIPT_NAME="${THIS_SCRIPT##*/}" readonly THIS_SCRIPT_NAME # Leaves only the part of the path based upon REPO_ROOT. THIS_SCRIPT_IDENTIFIER=${THIS_SCRIPT_PATH#"$REPO_ROOT/"} diff --git a/resources/devbox/iis-https/setup-iis-https.sh b/resources/devbox/iis-https/setup-iis-https.sh index 1d566f55e0..a0ff2b936b 100755 --- a/resources/devbox/iis-https/setup-iis-https.sh +++ b/resources/devbox/iis-https/setup-iis-https.sh @@ -5,8 +5,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/resources/devbox/macos/keyman.macos.env.sh b/resources/devbox/macos/keyman.macos.env.sh index 34acdfce0f..47895d575e 100755 --- a/resources/devbox/macos/keyman.macos.env.sh +++ b/resources/devbox/macos/keyman.macos.env.sh @@ -1,4 +1,4 @@ -source $HOME/.cargo/env +# source $HOME/.cargo/env #echo 'export PATH="/usr/local/opt/openjdk@8/bin:$PATH"' >> ~/.zshrc #echo 'export PATH="/usr/local/opt/openjdk@8/bin:$PATH"' >> ~/.bashrc export ANT_HOME=/usr/local/opt/ant @@ -15,7 +15,7 @@ export PATH=$ANDROID_HOME/tools/bin:$PATH export PATH=$ANDROID_HOME/platform-tools:$PATH export PATH=$ANDROID_HOME/build-tools/30.0.3:$PATH export PATH="/usr/local/opt/openjdk@8/bin:$PATH" - +export PATH="$HOMEBREW_PREFIX/opt/coreutils/libexec/gnubin:$PATH" export JAVA_HOME=/usr/local/opt/openjdk@8 # Python 2.7 diff --git a/resources/git-hooks/commit-msg b/resources/git-hooks/commit-msg index 187a7bbe22..139d7cdaf9 100755 --- a/resources/git-hooks/commit-msg +++ b/resources/git-hooks/commit-msg @@ -13,7 +13,7 @@ # # Get the directory where this script lives, i.e. resources/git-hooks -HOOK_DIRECTORY="$(dirname "$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")")" +HOOK_DIRECTORY="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")" if [ -f $(dirname "${BASH_SOURCE[0]}")/commit-msg-defs ]; then # This script was run from a symlink and the repo in question has its own commit-msg-defs. diff --git a/resources/git-hooks/prepare-commit-msg b/resources/git-hooks/prepare-commit-msg index a43bb8206a..f6d3db9ca6 100755 --- a/resources/git-hooks/prepare-commit-msg +++ b/resources/git-hooks/prepare-commit-msg @@ -18,7 +18,7 @@ COMMIT_SOURCE=$2 SHA1=$3 # Get the directory where this script lives, i.e. resources/git-hooks -HOOK_DIRECTORY="$(dirname "$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")")" +HOOK_DIRECTORY="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")" if [ -f $(dirname "${BASH_SOURCE[0]}")/commit-msg-defs ]; then # This script was run from a symlink and the repo in question has its own commit-msg-defs. diff --git a/resources/standards-data/ldml-keyboards/techpreview/fetch-latest-cldr-techpreview.sh b/resources/standards-data/ldml-keyboards/techpreview/fetch-latest-cldr-techpreview.sh index 2fd4584167..d430cd2764 100755 --- a/resources/standards-data/ldml-keyboards/techpreview/fetch-latest-cldr-techpreview.sh +++ b/resources/standards-data/ldml-keyboards/techpreview/fetch-latest-cldr-techpreview.sh @@ -15,8 +15,8 @@ fi ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/build/jq.inc.sh" @@ -38,12 +38,12 @@ CHECK_2="${DTD_DIR}/ldmlKeyboardTest.dtd" # Only in Keyboard 3.0+ if [[ ! -f "${CHECK_1}" ]]; then - die "${CHECK_1} did not exist: is ${CLDR_DIR} a valid CLDR keyboard directory?" + builder_die "${CHECK_1} did not exist: is ${CLDR_DIR} a valid CLDR keyboard directory?" fi if [[ ! -f "${CHECK_2}" ]]; then - die "${CHECK_2} did not exist: is ${CLDR_DIR} a valid CLDR keyboard directory?" + builder_die "${CHECK_2} did not exist: is ${CLDR_DIR} a valid CLDR keyboard directory?" fi # collect git info @@ -71,8 +71,8 @@ do echo "${xsd} -> ${json}" (cd .. ; npx -p jgexml xsd2json techpreview/"${xsd}" techpreview/"${json}") || exit echo 'fixup-schema.js' "${json}" - node fixup-schema.js "${json}" || die "failed to fixup schema ${json}" + node fixup-schema.js "${json}" || builder_die "failed to fixup schema ${json}" mv "${json}" tmp.json - ${JQ} . -S < tmp.json > "${json}" || (rm tmp.json ; die "failed to transform final schema ${json}") + ${JQ} . -S < tmp.json > "${json}" || (rm tmp.json ; builder_die "failed to transform final schema ${json}") rm tmp.json done diff --git a/resources/stats/.gitignore b/resources/stats/.gitignore new file mode 100644 index 0000000000..adbb97d2d3 --- /dev/null +++ b/resources/stats/.gitignore @@ -0,0 +1 @@ +data/ \ No newline at end of file diff --git a/resources/stats/gh-pr.txt b/resources/stats/gh-pr.txt new file mode 100644 index 0000000000..defd0b49a0 --- /dev/null +++ b/resources/stats/gh-pr.txt @@ -0,0 +1,9 @@ +{{range .}}{{ + printf "%s\t%s\t%s\t%s\t%s\t%s\n" + (.number | printf "#%v" | autocolor "green") + .state + (.author.login | printf "%s" | autocolor "red") + .title + (.labels | pluck "name" | join "," | printf "%s" | autocolor "blue") + .createdAt +}}{{end}} \ No newline at end of file diff --git a/resources/stats/stats.sh b/resources/stats/stats.sh new file mode 100755 index 0000000000..0a23e38e9b --- /dev/null +++ b/resources/stats/stats.sh @@ -0,0 +1,37 @@ +#!/usr/bin/env bash + +set -e +set -u + +## START STANDARD BUILD SCRIPT INCLUDE +# adjust relative paths as necessary +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../build/build-utils.sh" +## END STANDARD BUILD SCRIPT INCLUDE + +. "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" + +cd "$THIS_SCRIPT_PATH" + +platforms=(android/ ios/ linux/ mac/ web/ windows/ developer/ core/ common/models/) + +startdate=2022-05-01 +stable=stable-15.0 +STATS_ROOT="$KEYMAN_ROOT/resources/stats/data/" +mkdir -p "$STATS_ROOT" + +echo -e "Platform\tAll PRs\t${stable}\tFeatures\tIssues" > "${STATS_ROOT}stats.tsv" + +for p in "${platforms[@]}"; do + echo "Getting stats for $p" + mkdir -p "$STATS_ROOT/$p" + gh pr list --json author,createdAt,number,title,labels,state --template "$(cat gh-pr.txt)" --limit 1000 --search "created:>$startdate -label:auto label:$p" --state all > "$STATS_ROOT/${p}pulls.tsv" + gh pr list --json author,createdAt,number,title,labels,state --template "$(cat gh-pr.txt)" --limit 1000 --search "base:$stable created:>$startdate -label:auto label:$p" --state all > "$STATS_ROOT/${p}pulls-stable.tsv" + gh pr list --json author,createdAt,number,title,labels,state --template "$(cat gh-pr.txt)" --limit 1000 --search "created:>$startdate -label:auto label:feat label:$p" --state all > "$STATS_ROOT/${p}pulls-feat.tsv" + gh issue list --json author,createdAt,number,title,labels,state --template "$(cat gh-pr.txt)" --limit 1000 --search "created:>$startdate -label:auto label:$p" --state all > "$STATS_ROOT/${p}issues.tsv" + stat_all=`cat "$STATS_ROOT/${p}pulls.tsv" | wc -l` + stat_stable=`cat "$STATS_ROOT/${p}pulls-stable.tsv" | wc -l` + stat_feat=`cat "$STATS_ROOT/${p}pulls-feat.tsv" | wc -l` + stat_issues=`cat "$STATS_ROOT/${p}issues.tsv" | wc -l` + echo -e "$p\t$stat_all\t$stat_stable\t$stat_feat\t$stat_issues" >> "${STATS_ROOT}stats.tsv" +done diff --git a/web/build.sh b/web/build.sh index 34e8064587..8988b9623c 100755 --- a/web/build.sh +++ b/web/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/web/ci.sh b/web/ci.sh index d9dfcbf586..046e9ed1c7 100755 --- a/web/ci.sh +++ b/web/ci.sh @@ -9,8 +9,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/web/src/engine/build.sh b/web/src/engine/build.sh index 03d1fbe16e..0a3b571fae 100755 --- a/web/src/engine/build.sh +++ b/web/src/engine/build.sh @@ -8,8 +8,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/web/src/test/manual/embed/android-harness/build.sh b/web/src/test/manual/embed/android-harness/build.sh index d0ca13f748..0445022e5c 100755 --- a/web/src/test/manual/embed/android-harness/build.sh +++ b/web/src/test/manual/embed/android-harness/build.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE THIS_DIR="$(dirname "$THIS_SCRIPT")" diff --git a/web/src/tools/build.sh b/web/src/tools/build.sh index 43fcb2db6b..a9dd7f45d4 100755 --- a/web/src/tools/build.sh +++ b/web/src/tools/build.sh @@ -6,8 +6,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/web/src/tools/building/check-build-size.sh b/web/src/tools/building/check-build-size.sh index 98359290c8..6a20efe043 100755 --- a/web/src/tools/building/check-build-size.sh +++ b/web/src/tools/building/check-build-size.sh @@ -13,8 +13,8 @@ SIZE_THRESHOLD=1024 ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../resources/build/build-utils.sh" . "$KEYMAN_ROOT/resources/build/jq.inc.sh" . "$KEYMAN_ROOT/resources/build/github.inc.sh" ## END STANDARD BUILD SCRIPT INCLUDE diff --git a/web/src/tools/building/sourcemap-root/build.sh b/web/src/tools/building/sourcemap-root/build.sh index 453a1888f8..abed644429 100755 --- a/web/src/tools/building/sourcemap-root/build.sh +++ b/web/src/tools/building/sourcemap-root/build.sh @@ -6,8 +6,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/web/src/tools/testing/bulk_rendering/build.sh b/web/src/tools/testing/bulk_rendering/build.sh index 9e46b74fd4..40e4e6086f 100755 --- a/web/src/tools/testing/bulk_rendering/build.sh +++ b/web/src/tools/testing/bulk_rendering/build.sh @@ -6,8 +6,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/web/src/tools/testing/recorder/build.sh b/web/src/tools/testing/recorder/build.sh index cd28727612..8124665856 100755 --- a/web/src/tools/testing/recorder/build.sh +++ b/web/src/tools/testing/recorder/build.sh @@ -6,8 +6,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" diff --git a/web/src/tools/testing/s_keyman_com.sh b/web/src/tools/testing/s_keyman_com.sh old mode 100644 new mode 100755 index 0bb2ab9cbe..4c1c98b2b1 --- a/web/src/tools/testing/s_keyman_com.sh +++ b/web/src/tools/testing/s_keyman_com.sh @@ -9,8 +9,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../resources/build/build-utils.sh" . "$KEYMAN_ROOT/resources/shellHelperFunctions.sh" ## END STANDARD BUILD SCRIPT INCLUDE diff --git a/web/test.sh b/web/test.sh index 750718f9ab..b3935ce81b 100755 --- a/web/test.sh +++ b/web/test.sh @@ -4,8 +4,8 @@ set -eu ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE . "$KEYMAN_ROOT/resources/build/build-utils-ci.inc.sh" diff --git a/windows/src/buildtools/sentry-upload-difs.sh b/windows/src/buildtools/sentry-upload-difs.sh index 8457018f54..8996d55cad 100755 --- a/windows/src/buildtools/sentry-upload-difs.sh +++ b/windows/src/buildtools/sentry-upload-difs.sh @@ -19,8 +19,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE cd "$KEYMAN_ROOT/windows/src" diff --git a/windows/src/desktop/help/build.sh b/windows/src/desktop/help/build.sh index 51b21ee2c1..0890025951 100755 --- a/windows/src/desktop/help/build.sh +++ b/windows/src/desktop/help/build.sh @@ -2,8 +2,8 @@ ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE QUIET=0 diff --git a/windows/src/desktop/locale/crowdin-control.sh b/windows/src/desktop/locale/crowdin-control.sh index eacd852114..34c7608377 100755 --- a/windows/src/desktop/locale/crowdin-control.sh +++ b/windows/src/desktop/locale/crowdin-control.sh @@ -11,8 +11,8 @@ set -u ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE LOCALE_DIR="$KEYMAN_ROOT/windows/src/desktop/locale/" diff --git a/windows/src/test/manual-tests/i18n-check-unused-strings/i18n-check-unused-strings.sh b/windows/src/test/manual-tests/i18n-check-unused-strings/i18n-check-unused-strings.sh index 6713867b61..fabddb3e03 100755 --- a/windows/src/test/manual-tests/i18n-check-unused-strings/i18n-check-unused-strings.sh +++ b/windows/src/test/manual-tests/i18n-check-unused-strings/i18n-check-unused-strings.sh @@ -20,8 +20,8 @@ set -u # die on undefined variables ## START STANDARD BUILD SCRIPT INCLUDE # adjust relative paths as necessary -THIS_SCRIPT="$(greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null || readlink -f "${BASH_SOURCE[0]}")" -. "$(dirname "$THIS_SCRIPT")/../../../../resources/build/build-utils.sh" +THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")" +. "${THIS_SCRIPT%/*}/../../../../resources/build/build-utils.sh" ## END STANDARD BUILD SCRIPT INCLUDE # Preparation