aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* | | | | ci: remove unnecessary matrix from codeql workflow (#22239)dundargoc2023-02-12
| | | | |
* | | | | ci: inline external environment scripts (#22237)dundargoc2023-02-12
| | | | | | | | | | | | | | | | | | | | Scripts that define the build itself shouldn't be external as they lead to hard to find bugs.
* | | | | build: treat clang-tidy warnings as errors (#22238)dundargoc2023-02-12
| | | | |
* | | | | build: don't check environment variable to detect CI (#22234)dundargoc2023-02-12
| | | | | | | | | | | | | | | | | | | | Instead use the cmake option, which should act as the definitive source to determine whether we use CI or not.
* | | | | ci: convert environment variables to matrix variables (#22224)dundargoc2023-02-12
| | | | | | | | | | | | | | | | | | | | Having as few indirections as possible makes it easier to understand the code.
* | | | | ci: delete ci/ (#22227)dundargoc2023-02-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Having CI scripts that is separate from the build system causes tremendous amounts of problems, headaches and bugs. Testing the validity of the scripts locally become near impossible as time goes on as they're only vetted if it works on whatever CI provider we happened to have at the time, with their own quirks and behavior. The extra indirection between "cmake <-> general CI scripts <-> GHA" is also a frequent source of problems, as the orchestration needs to be done with environment variables, cmake flags and github actions matrix strategy. This combination has turned out to be exceptionally fragile. Examples: https://github.com/neovim/neovim/commit/15394b6855c3b17be06bf2bfbac7797d9c3ebf1d https://github.com/neovim/neovim/commit/13aa23b62af4df3e7f10687b76fe8c04efa2a598 https://github.com/neovim/neovim/pull/22072#discussion_r1094390713 A lot of the code was inlined to .github/workflows/ci.yml without further modifications. While this in itself doesn't integrate with our build system any more than the current situation, it does 1. remove a level of indirection, and more importantly 2. allow us to slowly start integrating the CI into our build system now that all the relevant code is in one place.
* | | | | ci: show all logs at the end of a run (#22226)dundargoc2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ci: show all logs at the end of a run The current CI won't show the logs on error due to early exit. This will at least show the logs, although for all tests at once.
* | | | | fix(filetype): make vim.filetype.match() work with contents only (#22181)Jonas Strittmatter2023-02-11
| | | | | | | | | | | | | | | Co-authored-by: Gregory Anders <greg@gpanders.com>
* | | | | ci: don't delete core dumps at the start of the run (#22223)dundargoc2023-02-11
| | | | | | | | | | | | | | | There shouldn't be any core dumps before we have started testing.
* | | | | refactor: reduce scope of locals as per the style guide (#22211)dundargoc2023-02-11
| | | | |
* | | | | vim-patch:9.0.1295: the option initialization function is too long (#22222)zeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The option initialization function is too long. Solution: Move code to separate functions. (Yegappan Lakshmanan, closes vim/vim#11966) https://github.com/vim/vim/commit/6c41bedeed2a1f98fb9c55ff85634138782ad92a Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* | | | | ci: inline build commands and remove before_script.sh (#22202)dundargoc2023-02-11
| | | | | | | | | | | | | | | | | | | | Abstracting the build commands to a separate script makes it more difficult to reason about it and more error-prone.
* | | | | ci: run lintcommit file from PR branch (#22219)dundargoc2023-02-11
| | | | | | | | | | | | | | | | | | | | As the trigger type is no longer pull_request_target there is no longer any risk of using the lintcommit script directly from the user PR.
* | | | | vim-patch:9.0.1300: 'statusline' only supports one "%=" item (#22218)zeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: 'statusline' only supports one "%=" item. Solution: Add support for multiple "%=" items. (TJ DeVries, Yegappan Lakshmanan, closes vim/vim#11970, closes vim/vim#11965) https://github.com/vim/vim/commit/3ec78f973fdaec2cea8e036ed38037b2fe40670b Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* | | | | Merge pull request #22217 from zeertzjq/vim-9.0.1298zeertzjq2023-02-11
|\ \ \ \ \ | | | | | | | | | | | | vim-patch:9.0.{1298,1299}: c_CTRL-R_CTRL-R doesn't trigger incsearch
| * | | | | vim-patch:9.0.1299: change for triggering incsearch not sufficiently testedzeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Change for triggering incsearch not sufficiently tested. Solution: Add a test case. Simplify the code. (closes vim/vim#11971) https://github.com/vim/vim/commit/412e0e4ed903682f352d8ea58ded480930cc664f
| * | | | | vim-patch:9.0.1298: inserting register on the cmdline does not trigger incsearchzeertzjq2023-02-11
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Inserting a register on the command line does not trigger incsearch or update hlsearch. Solution: Have cmdline_insert_reg() return CMDLINE_CHANGED when appropriate and handle it correctly. (Ken Takata, closes vim/vim#11960) https://github.com/vim/vim/commit/c4b7dec38292fe1cfad7aa5f244031fc6f7c7a09 Co-authored-by: K.Takata <kentkt@csc.jp>
* | | | | fix(rpc)!: preseve files when stdio channel is closed (#22137)zeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | BREAKING CHANGE: Unsaved changes are now preserved rather than discarded when stdio channel is closed.
* | | | | refactor: replace char_u with char (#21901)dundargoc2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | refactor: replace char_u with char Work on https://github.com/neovim/neovim/issues/459
* | | | | ci: remove reviewers from the refactor label (#22216)dundargoc2023-02-11
| | | | | | | | | | | | | | | Anyone can review a refactor depending on what's being refactored.
* | | | | docs: reword news.txt to ensure a consistent style (#22215)Sizhe Zhao2023-02-11
| | | | |
* | | | | build: enable MSVC level 3 warnings (#21934)dundargoc2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MSVC has 4 different warning levels: 1 (severe), 2 (significant), 3 (production quality) and 4 (informational). Enabling level 3 warnings mostly revealed conversion problems, similar to GCC/clang -Wconversion flag.
* | | | | refactor: reduce scope of locals as per the style guide (#22206)dundargoc2023-02-11
| |_|/ / |/| | |
* | | | vim-patch:9.0.1297: wrong value for $LC_CTYPE makes the environ test fail ↵zeertzjq2023-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#22210) Problem: Wrong value for $LC_CTYPE makes the environ test fail. Solution: Unset $LC_CTYPE when running tests. (closes vim/vim#11963) https://github.com/vim/vim/commit/962d91643520ec3748fcf5af3263d89ccfcdda92 Co-authored-by: WuerfelDev <dev@wuerfeldev.de>
* | | | Merge pull request #21887 from bfredl/asanterrorbfredl2023-02-10
|\ \ \ \ | | | | | | | | | | build(ci): let ASAN print tracebacks for more errors (SIGABORT, SIGILL)
| * | | | build(ci): let ASAN print tracebacks for more errors (SIGABORT, SIGILL)bfredl2023-02-10
|/ / / /
* | | | Merge pull request #22077 from bfredl/neolua_clientbfredl2023-02-10
|\ \ \ \ | | | | | | | | | | refactor(tests): integrate lua-client into core and use core for functionaltests
| * | | | fix(client): wait for session to exitbfredl2023-02-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This replicates the old native.pid_wait(self._pid) call, except using the proper libuv pattern (run loop unitil exit callback)
| * | | | fix(tests): fixes for using vim.mpack and more ASANbfredl2023-02-10
| | | | |
| * | | | refactor(tests): move lua-client into core and use it for functionaltestsbfredl2023-02-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Eliminates lua-client and non-static libluv as test time dependencies Note: the API for a public lua-client is not yet finished. The interface needs to be adjusted to work in the embedded loop of a nvim instance (to use it to talk between instances)
* | | | | build: mark uninteresting variables as advanced (#22208)dundargoc2023-02-10
| | | | | | | | | | | | | | | Only the most important variables should be shown by default.
* | | | | Merge pull request #22194 from bfredl/noflushbfredl2023-02-10
|\ \ \ \ \ | |/ / / / |/| | | | refactor(ui): remove some superfluous redraw and ui_flush() calls
| * | | | refactor(ui): remove some superfluous ui_flush() callsbfredl2023-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - <expr> mapping has no business saving and restoring the low-level UI cursor. The cursor will be put in a reasonable position after input is processed, chill out. - TUI handles output needed for suspend - vgetc() family of function does flushing
| * | | | refactor(ui): don't reimplement redrawing in focus gained handlingbfredl2023-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | These are just ordinary boring events now. Modes already redraw events themselves.
* | | | | ci: simplify lintcommit output (#22204)dundargoc2023-02-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Suggest reading CONTRIBUTING.md once, not for each commit failure - Suggest using "fix" type if none of the provided types are appropriate - Remove "dist" type. It's rarely used and can be replaced by using the "build" type
* | | | | ci: remove unnecessary environment variables (#22175)dundargoc2023-02-10
| | | | |
* | | | | ci: split functionaltest-lua into two separate jobs (#22201)dundargoc2023-02-10
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | More specifically, move the job testing the oldest supported cmake into its own job. This opens the way for other jobs to use powerful and advanced cmake features such as choosing which files to use with the -S flag. Removed testing from this job as this probably won't reveal anything that other jobs already doesn't already show, since the only difference is the cmake version.
* | | | ci: inline test.sh to run_tests.sh (#22198)dundargoc2023-02-10
| | | | | | | | | | | | This will get rid of the common/ directory.
* | | | ci(lintcommit): turn off debug tracing (#22196)dundargoc2023-02-09
| | | | | | | | | | | | | | | | The default output is too verbose and messy for someone not already familiar with lintcommit, which defeats it purpose.
* | | | ci: remove base branch from cache key (#22195)dundargoc2023-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Using the base branch as cache means that pull requests won't be able to use the cache from the master branch, since the master branch cache doesn't have a base_ref as it's generated from a push. Removing base_ref makes the cache key from master and PR branch the same, provided the any build files don't change.
* | | | ci: inline internal caching script to Github actions (#22192)dundargoc2023-02-09
|/ / / | | | | | | | | | | | | I don't think it's possible to meaningfully abstract away caching on multiple providers, as each provider has different mechanisms on how they work.
* | | ci: add individual timeout limits for all tests (#22193)dundargoc2023-02-09
| | | | | | | | | | | | | | | The CI somtimes freezes on a specific test, wasting 45 minutes for the entire job. Adding a timeout of 15 minutes to functionaltest and 5 minutes to unittests will mitigate the problem.
* | | Merge pull request #22186 from clason/maintainChristian Clason2023-02-09
|\ \ \ | | | | | | | | | | | | * docs(maintain): add note on updating `luvref.txt` * docs(luvref): update version info
| * | | docs(luvref): update version infoChristian Clason2023-02-09
| | | |
| * | | docs(maintain): add note on updating luvref.txtChristian Clason2023-02-09
| | | |
* | | | test(exit_spec): make sure that autocommands are triggered (#22188)zeertzjq2023-02-09
| | | | | | | | | | | | | | | | | | | | Previously, if the autocommands are not triggered, the tests may still pass because no assertion is done. Add an assertion so that the tests will fail if the autocommands aren't triggered.
* | | | build: remove codecov related files (#20859)dundargoc2023-02-09
| | | | | | | | | | | | These aren't needed as we don't use codecov anymore.
* | | | fix(rpc): ignore redraw events when exiting (#22184)zeertzjq2023-02-09
| | | | | | | | | | | | | | | | When a TUI client has already stopped, handling UI events will cause a heap-use-after-free, so ignore them.
* | | | fix(rpc): ignore redraw events when not in UI client (#21892)zeertzjq2023-02-09
| | | | | | | | | | | | Otherwise it will crash.
* | | | build: create test/CMakeLists.txt and move test-related code (#22179)dundargoc2023-02-08
| | | | | | | | | | | | | | | | | | | | Having a clear separation between build code and test code makes it easier to get a higher-level understanding of how the neovim build works.