diff options
author | dundargoc <gocdundar@gmail.com> | 2025-02-05 22:53:24 +0100 |
---|---|---|
committer | dundargoc <33953936+dundargoc@users.noreply.github.com> | 2025-02-08 14:14:42 +0100 |
commit | 818a2980db2cce6dd16c13ec7eb56a42fc812149 (patch) | |
tree | 78aaec178f526423a2c1915e069717612c295a64 | |
parent | a9cdf76e3a142c78b2b5da58c428e15e31cb0a15 (diff) | |
download | rneovim-818a2980db2cce6dd16c13ec7eb56a42fc812149.tar.gz rneovim-818a2980db2cce6dd16c13ec7eb56a42fc812149.tar.bz2 rneovim-818a2980db2cce6dd16c13ec7eb56a42fc812149.zip |
ci(arm64): skip installing npm to prevent segmentation faults
Installing npm on linux arm64 causes intermittent segmentation faults
for unknown reasons.
Closes https://github.com/neovim/neovim/issues/32339.
-rwxr-xr-x | .github/scripts/install_deps.sh | 17 | ||||
-rw-r--r-- | .github/workflows/test.yml | 4 |
2 files changed, 14 insertions, 7 deletions
diff --git a/.github/scripts/install_deps.sh b/.github/scripts/install_deps.sh index 5e2c88c7af..dea9ec11da 100755 --- a/.github/scripts/install_deps.sh +++ b/.github/scripts/install_deps.sh @@ -9,8 +9,9 @@ while (($# > 0)); do esac done -os=$(uname -s) -if [[ $os == Linux ]]; then +OS=$(uname -s) +ARCH=$(uname -m) +if [[ $OS == Linux ]]; then sudo apt-get update sudo apt-get install -y build-essential cmake curl gettext ninja-build @@ -34,13 +35,23 @@ if [[ $os == Linux ]]; then # Use default CC to avoid compilation problems when installing Python modules CC=cc python3 -m pip -q install --user --upgrade --break-system-packages pynvim + + # Skip installing npm on aarch64 as it tends to cause intermittent segmentation faults. + # See https://github.com/neovim/neovim/issues/32339. + if [[ $ARCH != aarch64 ]]; then + npm install -g neovim + npm link neovim + fi fi -elif [[ $os == Darwin ]]; then +elif [[ $OS == Darwin ]]; then brew update --quiet brew install ninja if [[ -n $TEST ]]; then brew install cpanminus fswatch + npm install -g neovim + npm link neovim + # Use default CC to avoid compilation problems when installing Python modules CC=cc python3 -m pip -q install --user --upgrade --break-system-packages pynvim fi diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index a366dea082..797f102879 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -139,10 +139,6 @@ jobs: echo "Install neovim RubyGem." gem install --no-document --bindir "$BIN_DIR" --user-install --pre neovim - echo "Install neovim npm package" - npm install -g neovim - npm link neovim - sudo cpanm -n Neovim::Ext || cat "$HOME/.cpanm/build.log" perl -W -e 'use Neovim::Ext; print $Neovim::Ext::VERSION' |