docs: CONTRIBUTING.md: add diagnostics and backward compatibility
This commit is contained in:
parent
1b876db049
commit
000ca6bcdd
@ -4,6 +4,30 @@ Thank you for contributing.
|
||||
|
||||
See [wiki: Development](https://github.com/nvim-tree/nvim-tree.lua/wiki/Development) for environment setup, tips and tools.
|
||||
|
||||
<!--
|
||||
https://github.com/jonschlinkert/markdown-toc
|
||||
markdown-toc --maxdepth=2 -i CONTRIBUTING.md
|
||||
-->
|
||||
|
||||
<!-- toc -->
|
||||
|
||||
- [Tools](#tools)
|
||||
- [Quality](#quality)
|
||||
* [lint](#lint)
|
||||
* [style](#style)
|
||||
* [check](#check)
|
||||
- [Diagnostics](#diagnostics)
|
||||
- [Backwards Compatibility](#backwards-compatibility)
|
||||
- [Adding New Actions](#adding-new-actions)
|
||||
- [Documentation](#documentation)
|
||||
* [Opts](#opts)
|
||||
* [API](#api)
|
||||
- [Windows](#windows)
|
||||
- [Pull Request](#pull-request)
|
||||
* [Subject](#subject)
|
||||
|
||||
<!-- tocstop -->
|
||||
|
||||
# Tools
|
||||
|
||||
Following are used during CI and strongly recommended during local development.
|
||||
@ -72,6 +96,30 @@ curl -L "https://github.com/LuaLS/lua-language-server/releases/download/3.9.1/lu
|
||||
PATH="luals/bin:${PATH}" make check
|
||||
```
|
||||
|
||||
# Diagnostics
|
||||
|
||||
Diagnostics issues may not be suppressed. See [luals](https://luals.github.io) documentation for details on how to structure the code and comments.
|
||||
|
||||
Suppressions are permitted only in the following cases:
|
||||
|
||||
- Backwards compatibility shims
|
||||
- neovim API metadata incorrect, awaiting upstream fix
|
||||
- classic class framework
|
||||
|
||||
# Backwards Compatibility
|
||||
|
||||
Whenever new neovim API is introduced, please ensure that it is available in older versions. See `:help deprecated.txt` and `$VIMRUNTIME/lua/vim/_meta/api.lua`
|
||||
|
||||
See `nvim-tree.setup` for the oldest supported version of neovim. If the API is not availble in that version, a backwards compatibility shim must be used e.g.
|
||||
|
||||
```lua
|
||||
if vim.fn.has("nvim-0.10") == 1 then
|
||||
modified = vim.api.nvim_get_option_value("modified", { buf = target_bufid })
|
||||
else
|
||||
modified = vim.api.nvim_buf_get_option(target_bufid, "modified") ---@diagnostic disable-line: deprecated
|
||||
end
|
||||
```
|
||||
|
||||
# Adding New Actions
|
||||
|
||||
To add a new action, add a file in `actions/name-of-the-action.lua`. You should export a `setup` function if some configuration is needed.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user