-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: Add a plugin template that follows these best practices #21
Comments
hey 👋 thanks, this sounds like a great idea! 🙏
I'm on vacation now, but I'll see if I can find some time to take a closer look at it soon. We could probably add a link to your repo to the document. |
Sorry it took me so long. I've added a link to your template to the readme: 1af067a Thanks for creating and maintaining it 🙏 😄 |
All good, and thank you for the guide! The CI stuff is still WIP but I hope to complete it for real in a month or so |
https://github.com/ColinKennedy/nvim-best-practices-plugin-template is now done. Or at least at a MVP state that's shareable :) |
Hi @mrcjkb would you mind if I ask you for some help / advice on solving an issue with "Add Windows + luarocks + busted + Neovim + GitHub workflow"? I saw your replies over at leafo/gh-actions-luarocks#14 while reading the whole thread but unfortunately I don't seem to be any closer to getting it working the best-practices plugin. Any help would be really appreciated. I have several attempts / iterations. The latest is Workflow: Detailsname: test
on: [push]
jobs:
test:
strategy:
fail-fast: false
matrix:
luaVersion: ["5.1", "5.2", "5.3", "5.4", "luajit"]
os:
- ubuntu-latest
- macos-latest
- windows-latest
runs-on: ${{ matrix.os }}
name: split test (using lua ${{ matrix.luaVersion }} on ${{ matrix.os }}
steps:
- uses: actions/checkout@master
- uses: ilammy/msvc-dev-cmd@v1
- uses: leafo/gh-actions-lua@master
with:
luaVersion: ${{ matrix.luaVersion }}
buildCache: false
- uses: hishamhm/gh-actions-luarocks@master
with:
luarocksVersion: "3.10.0"
- uses: rhysd/action-setup-vim@v1
with:
neovim: true
version: ${{ matrix.neovim }}
- name: build
run: |
luarocks test plugin-template-scm-1.rockspec --prepare
- name: test
run: |
luarocks test --test-type busted The 5.1 install works for ubuntu and macos. But windows fails with
It seems to me that any time I throw luarocks into the mix or try to install something using luarocks, things break. Anyway I don't actually intend to support multiple lua versions, just the one that Neovim comes with (luajit). But this is the closest I've gotten to a cross-OS luarocks Neovim unittests working |
I no longer use the gh-actions-luarocks action on Windows. You could try adding |
I've written a few plugins now based on this page's recommendations and can say it's pretty time consuming to get all the different pieces working correctly. To solve this, I made a "featureful" plugin template that implements everything. It's not 100% ready just yet but here's a preview
https://github.com/ColinKennedy/nvim-best-practices-plugin-template
The WIP elements that are left:
3 unittests are failing (> 100 are passing)The GitHub CI actions are blocked in but aren't passing yetThe flow of documentation could be improvedTo fix this, I think all meta documentation of "this is how the repository works" will go into Wiki pages and the README.md other files will just be a standard Neovim plugin templateThe Wiki is available hereConsidering more CI. e.g. https://github.com/linkchecker/linkchecker or other thingsAs said, it's a bit WIP still but I would really appreciate any feedback on it.
The text was updated successfully, but these errors were encountered: