diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs new file mode 100644 index 0000000000..00e7c7f3a5 --- /dev/null +++ b/.git-blame-ignore-revs @@ -0,0 +1,11 @@ +# To use this file (requires git 2.23): +# git config blame.ignoreRevsFile .git-blame-ignore-revs + +# eval.c: factor out eval/funcs.c #11828 +# - This is a move/rename. git 2.33 doesn't know how to ignore it. +# It is here anyway, (1) in case git improves later, and (2) to +# save you the trouble of attempting this. +6c5bbf07d988ef55e5e8ba8d70b62c1f0885261b + +# style / uncrustify +2d240024acbd68c2d3f82bc72cb12b1a4928c6bf diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index da222bbc90..4d93c979ed 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -183,20 +183,21 @@ master build. To view the defects, just request access; you will be approved. ``` git log --oneline --no-merges --grep coverity ``` - + ### Clang sanitizers (ASAN and UBSAN) ASAN/UBSAN can be used to detect memory errors and other common forms of undefined behavior at runtime in debug builds. - To build neovim with sanitizers enabled, use + +- To build Neovim with sanitizers enabled, use ``` rm -rf build && CMAKE_EXTRA_FLAGS="-DCMAKE_C_COMPILER=clang -DCLANG_ASAN_UBSAN=1" make ``` - When running neovim, use +- When running Neovim, use ``` UBSAN_OPTIONS=print_stacktrace=1 ASAN_OPTIONS=log_path=/tmp/nvim_asan nvim args... ``` - If neovim exits unexpectedly, check `/tmp/nvim_asan.{PID}` (or your preferred `log_path`) for log files with error messages. - +- If Neovim exits unexpectedly, check `/tmp/nvim_asan.{PID}` (or your preferred `log_path`) for log files with error messages. + Coding ------ @@ -226,6 +227,10 @@ operator in Nvim: ### Navigate +- Set `blame.ignoreRevsFile` to ignore [noise commits](https://github.com/neovim/neovim/commit/2d240024acbd68c2d3f82bc72cb12b1a4928c6bf) in git blame: + ``` + git config blame.ignoreRevsFile .git-blame-ignore-revs + ``` - Use **[universal-ctags](https://github.com/universal-ctags/ctags).** ("Exuberant ctags", the typical `ctags` binary provided by your distro, is unmaintained and won't recognize many function signatures in Neovim source.) diff --git a/README.md b/README.md index ba8e7bff37..8342c27fd7 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ [Chat](https://app.element.io/#/room/#neovim:matrix.org) | [Twitter](https://twitter.com/Neovim) -[![GitHub CI](https://github.com/neovim/neovim/workflows/CI/badge.svg)](https://github.com/neovim/neovim/actions?query=workflow%3A%22CI%22) +[![GitHub CI](https://github.com/neovim/neovim/workflows/CI/badge.svg)](https://github.com/neovim/neovim/actions?query=workflow%3ACI+branch%3Amaster+event%3Apush) [![Codecov coverage](https://img.shields.io/codecov/c/github/neovim/neovim.svg)](https://codecov.io/gh/neovim/neovim) [![Coverity Scan analysis](https://scan.coverity.com/projects/2227/badge.svg)](https://scan.coverity.com/projects/2227) [![Clang analysis](https://neovim.io/doc/reports/clang/badge.svg)](https://neovim.io/doc/reports/clang)