action-setup-vim icon indicating copy to clipboard operation
action-setup-vim copied to clipboard

Support to build Neovim from source

Open kkoomen opened this issue 5 years ago • 5 comments

Hi,

First of all, props for the plugin. Really useful for myself.


I am experiencing issues when running ubuntu-latest + v0.2.0 for neovim using the following workflow setup:

  linux_neovim:
    name: Linux Tests (NeoVim)
    strategy:
      matrix:
        os: [ubuntu-latest]
        neovim: [true]
        vim-version: [v0.2.0, stable]
        node-version: [10, 12, 14]
    runs-on: ${{ matrix.os }}
    steps:
      - uses: actions/checkout@v2
        with:
          submodules: true
      - uses: actions/setup-node@v1
        with:
          node-version: ${{ matrix.node-version }}
      - run: npm ci --no-save
      - run: npm run build:binary -- node${{ matrix.node-version }}-linux-x64
      - uses: rhysd/action-setup-vim@v1
        id: vim
        with:
          version: ${{ matrix.vim-version }}
          neovim: ${{ matrix.neovim }}
      - name: Run tests
        run: ./scripts/run-vader-tests.sh "${{ steps.neovim.outputs.executable }}"

The tests fail like so:

image

It does make sense, because neovim added support for linux x64 at v0.3.2. Is there a way that I can still support v0.2.0? My plugin has a minimum version that's required for the users to have and I want to test against these versions.

Let me know what's possible or if there's an alternative I can do. Perhaps let it build from source instead of getting the linux64.tar.gz?

kkoomen avatar Oct 23 '20 06:10 kkoomen

Is there a way that I can still support v0.2.0?

How do you make Neovim v0.2.0 work on Linux? As you said, v0.3.2 is the first version which supports Linux. I think compiling Neovim v0.2.0 for Linux would fail and you need to make some patches to make it work.

My recommendation is using macOS worker for v0.2.0.

rhysd avatar Oct 23 '20 09:10 rhysd

I used https://github.com/Vimjas/vim-testbed before for my docker + travis tests. They compile from source and it works perfectly. Do you think you can allow support for older versions? It should work, because it has always worked in my docker.

kkoomen avatar Oct 23 '20 11:10 kkoomen

Hmm... What is the purpose of testing Neovim 0.2 on Linux? Since it does not support Linux, no user uses Neovim 0.2 on Linux. I don't think testing such a combination makes sense. Other combination which user actually can take would be better (e.g. Neovim 0.2 & macOS).

rhysd avatar Oct 27 '20 08:10 rhysd

Since it does not support Linux

NeoVim didn't add prebuild linux binaries into their releases, but they did support linux if you build it manually. This is why vim-testbed works, because they build manually from source.

I want to test it, because I do provide a minimum version for neovim + vim and I want to test against these minimum versions. If I can't test this then I can't guarantee which version works which doesn't. I know 0.2.0 is the limit I can support so I want to test against it.

kkoomen avatar Oct 27 '20 09:10 kkoomen

Oh, OK, I misunderstood. Currently this action does not have capability to build Neovim from source.

rhysd avatar Oct 27 '20 10:10 rhysd