build(deps): bump ruff from 0.9.3 to 0.9.4 in /nvim/langservers (#1965) #6785
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
bootstrap: | |
strategy: | |
matrix: | |
os: | |
- macos-latest | |
- ubuntu-latest | |
name: bootstrap | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: install neovim (macos) | |
if: runner.os == 'macOS' | |
run: | | |
curl -L https://github.com/neovim/neovim/releases/download/nightly/nvim-macos-$(uname -m).tar.gz | sudo tar -C /usr/local --strip 1 -xzf - | |
- name: install neovim (linux) | |
if: runner.os == 'Linux' | |
run: | | |
curl -L https://github.com/neovim/neovim/releases/download/nightly/nvim-linux-$(uname -m).tar.gz | sudo tar -C /usr/local --strip 1 -xzf - | |
- name: install zsh & linuxbrew on Linux | |
if: runner.os == 'Linux' | |
run: | | |
sudo apt update | |
sudo apt install -y zsh | |
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | |
echo "PATH=/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:${PATH}" >>${GITHUB_ENV} | |
env: | |
NONINTERACTIVE: 1 | |
- name: set brew env vars | |
run: | | |
echo "HOMEBREW_PREFIX=$(brew --prefix)" >>${GITHUB_ENV} | |
echo "HOMEBREW_NO_INSTALL_CLEANUP=1" >>${GITHUB_ENV} | |
echo "HOMEBREW_NO_INSTALL_FROM_API=" >>${GITHUB_ENV} | |
echo "HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1" >>${GITHUB_ENV} | |
- name: install early dependencies | |
run: | | |
brew update | |
brew install coreutils jq | |
- uses: actions/[email protected] | |
- name: get repo versions | |
id: get-repo-versions | |
run: | | |
git ls-remote https://github.com/golang/tools.git master | awk '{print "golang-tools-version=" $1}' >>${GITHUB_OUTPUT} | |
git ls-remote https://git.sr.ht/~technomancy/fnlfmt master | awk '{print "fnlfmt-version=" $1}' >>${GITHUB_OUTPUT} | |
git ls-remote https://github.com/luajit/luajit.git v2.1 | awk '{print "luajit-version=" $1}' >>${GITHUB_OUTPUT} | |
- name: langservers cache | |
id: nvim-langservers-cache | |
uses: actions/[email protected] | |
with: | |
path: ~/.cache/nvim/langservers | |
key: "${{ runner.os }}-${{ hashFiles('tools/nvim-bootstrap/*.go') }}-${{ steps.get-repo-versions.outputs.golang-tools-version }}-${{ steps.get-repo-versions.outputs.fnlfmt-version }}" | |
restore-keys: "${{ runner.os }}-${{ hashFiles('tools/nvim-bootstrap/*.go') }}-" | |
- name: set product-version | |
id: os-deployment-target | |
run: | | |
if [[ ${RUNNER} == "macOS" ]]; then | |
echo "MACOSX_DEPLOYMENT_TARGET=$(sw_vers -productVersion)" >>${GITHUB_ENV} | |
echo "product-version=$(sw_vers -productVersion)" >>${GITHUB_OUTPUT} | |
else | |
echo "product-version=$(lsb_release -ds)" >>${GITHUB_OUTPUT} | |
fi | |
echo "arch=$(uname -m)" >>${GITHUB_OUTPUT} | |
env: | |
RUNNER: ${{ runner.os }} | |
- name: hererocks cache | |
id: nvim-hererocks-cache | |
uses: actions/[email protected] | |
with: | |
path: ~/.cache/nvim/hr | |
key: "${{ runner.os }}-${{ steps.os-deployment-target.outputs.arch }}-${{ steps.get-repo-versions.outputs.luajit-version }}-${{ steps.os-deployment-target.outputs.product-version }}-${{ hashFiles('nvim/vimfiles-dev-1.rockspec') }}" | |
# this will always cache miss, but the idea is to reuse work between | |
# pushes by leveraging restore-keys. | |
- name: mr cache | |
id: mr-cache | |
uses: actions/[email protected] | |
with: | |
path: ~/.local/share/nvim/site/pack/mr | |
key: "${{ runner.os }}-${{ hashFiles('nvim/mrconfig') }}-${{ github.sha }}" | |
restore-keys: "${{ runner.os }}-${{ hashFiles('nvim/mrconfig') }}-" | |
- name: run setup | |
run: | | |
timeout -k 10s 30m ./bootstrap/setup | |
unblock-pr: | |
name: unblock-pr | |
runs-on: ubuntu-latest | |
needs: | |
- bootstrap | |
steps: | |
- run: "true" |