| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
| |
Users can parse this file to get the shasum they require.
|
|
|
|
|
|
|
| |
Remove `nvim-linux64.tar.gz` and `nvim.appimage` as maintaining
these is too much work.
Also fix directory names to be consistent.
|
|
|
|
|
|
|
| |
Problem: No releases for ARM Linux.
Solution: Provide appimages and tarballs for `linux-arm64`. Rename
x86 releases to `linux-x86_64` for consistency.
|
|
|
|
|
|
|
|
| |
Problem: Some CI jobs are redundant: `RelWithDebInfo` is already tested
on Linux-Arm64; `MinSizeRel` and Ninja Multi Config are not sufficiently
relevant in practice to spend CI cycles on.
Solution: Remove `build-types` job.
|
|
|
|
|
|
|
| |
Problem: Linux `aarch64`/`arm64` builds are not tested.
Solution: Add `ubuntu-arm` runners to test matrix (using
`RelWithDebInfo` build).
|
|
|
|
|
| |
This is because we reference to deprecated.txt from news.txt, so
deprecation news updates are made only in deprecated.txt.
|
| |
|
|
|
|
|
| |
There is a "performance" section in news.txt so it makes sense we should
also give a reminder to update news for performance improvements.
|
|
|
|
|
|
| |
A new security restriction in Ubuntu 24.04 prevents users from using
`unshare`, so we need to disable it in order for the test to work
properly.
|
|
|
|
| |
Since the Makefile is not used to build, running the tests via the Makefile causes cmake to reconfigure and revert the release build back to debug.
|
|
|
|
|
|
|
| |
Tests should not rely on being run inside a git clone, so the Linux
builds cover this use case. The macOS builds will continue running with
the .git directory so there's still unix-ish coverage within a git
clone.
|
|
|
|
|
|
| |
This ensures that no tests fail due to differences between release and debug builds.
The release build-type check is now unnecessary, too, so remove it.
|
|
|
| |
Explicitly installing Python 3.13 using (deprecated version of) `setup-python` looks to be no longer required for provider tests to pass.
|
|
|
|
|
| |
It's the same workaround as 88ed9ffcd1c022811ebc8818e153fe94e4741671,
which was later removed in f707ce76acb86e064d549dc762f5636af072d3c5
after it turned out to be stable after a while.
|
|
|
|
|
|
| |
Problem: macos-12 GH runners are deprecated and will be removed soon.
Solution: use macos-13 runners instead.
|
| |
|
|
|
|
| |
Also bump clang to version 20.
|
|
|
|
| |
Co-authored-by: Mathias Fussenegger <f.mathias@zignar.net>
Co-authored-by: Ananth Bhaskararaman <antsub@gmail.com>
|
| |
|
| |
|
|
|
|
|
|
|
| |
This will ensure automatic backports created by the backport action does
not request reviewers (since the commit in question has already been
vetted and merged), but manual backports created by users does request
reviewers as these commits has not been vetted previously.
|
|
|
|
|
| |
This makes it easy to keep track of which backport PRs have failed and
need manual intervention to fix.
|
|
|
|
|
| |
This will automatically merge backported PRs without human intervention
if the tests pass.
|
|
|
|
|
| |
Does not fix everything, but at least let's test run to finish before
timeout
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Installing treesitter parser is hard (harder than
climbing to heaven).
Solution: Add optional support for wasm parsers with `wasmtime`.
Notes:
* Needs to be enabled by setting `ENABLE_WASMTIME` for tree-sitter and
Neovim. Build with
`make CMAKE_EXTRA_FLAGS=-DENABLE_WASMTIME=ON
DEPS_CMAKE_FLAGS=-DENABLE_WASMTIME=ON`
* Adds optional Rust (obviously) and C11 dependencies.
* Wasmtime comes with a lot of features that can negatively affect
Neovim performance due to library and symbol table size. Make sure to
build with minimal features and full LTO.
* To reduce re-compilation times, install `sccache` and build with
`RUSTC_WRAPPER=<path/to/sccache> make ...`
|
|
|
|
|
|
|
|
| |
Problem: Adding support for modern Nvim features (reflow, OSC 8, full
utf8/emoji support) requires coupling libvterm to Nvim internals
(e.g., utf8proc).
Solution: Vendor libvterm at v0.3.3.
|
|
|
|
|
|
|
|
|
|
| |
Problem: the zip plugin is not tested.
Solution: include tests (Damien)
closes: vim/vim#15411
https://github.com/vim/vim/commit/d7af21e746f3992c650caf6b76465880b96302b4
Co-authored-by: Damien <141588647+xrandomname@users.noreply.github.com>
|
|
|
|
| |
It's been vendored since https://github.com/neovim/neovim/pull/25870.
|
| |
|
|
|
|
|
|
| |
Previously the label was not added if the backport PR was created
manually. The new code is also easier to maintain as it's close to other
label-related code.
|
|
|
|
|
|
|
|
|
|
|
| |
Since lintcommit is a required check, it will always need to be run.
However, the lintcommit script is not designed to work on PRs that
doesn't target master branch (and it's not clear whether it's even
desirable).
To circumvent this we create a "dummy" lintcommit check that is run on
release branches that always passes, thus fulfilling the condition of
the required check.
|
|
|
|
|
| |
We can't skip CI runs as there are required checks that needs to always
be run.
|
|
|
|
|
|
|
|
|
|
|
| |
Github doesn't allow workflows to be run from the `github-actions`
account, which is the default account. This caused the CI on backport
PRs to not be run. The way to circumvent this is to use a token that
essentially "pretends" to be another user, which in turn triggers the CI
as desired.
Also run lintcommit on release branches as that is now a required check,
meaning it must always be run.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Auto-merging is a useful feature by github, but it requires required
checks which requires a few adjustments. The primary change is that
required checks can't use `paths` or `paths-ignore` as that risks not
running the job, and required checks must always be run.
A workaround for this is to introduce a dummy workflow which is used for
every path not used in the real workflow. That way the required job is
"always" run as far as github is concerned. The workaround is unweildly
so it's only useful to do it for costly workflows where the potential
benefits are big. If not it's better to simply remove any `paths` or
`paths-ignore` from a workflow instead.
|
| |
|
|
|
|
|
| |
`backport` is too similar `ci:backport release-x.y` and causes
confusion.
|
|
|
|
|
| |
These jobs should be safe to just use the latest as there's not many
moving parts as opposed to `test.yml`.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`[Backport release-x.y]` will no longer be part of the pull request
title. This means the PR titles will go from looking like
```
[Backport release-0.9] fix(languagetree): remove double recursion in LanguageTree:parse
```
to
```
fix(languagetree): remove double recursion in LanguageTree:parse
```
The benefit of this is that pull requests merged with the "Squash and
Merge" strategy (which uses the PR title as the commit message), will
still follow the conventional commits specification. This will help
tools that rely on conventional commits such as git-cliff.
The `backport` label is added to backported PRs to help distinguish
between backport PRs with regular PRs in the "Pull Requests" tab on
github.
To reduce confusion with the `backport` label, the label to trigger the
backporting has been changed from `backport release-x.y` to
`ci:backport release-x.y`. This is also more consistent with other
labels that trigger a CI job which all use the `ci:` prefix.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This will change the commits messages from
```
version.c: update [skip ci]
```
to
```
docs: update version.c [skip ci]
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add more filters so that LuaJIT can parse headers on macOS 14.
The system headers use a style of enum introduced in C++11 (and allowed
as an extension in C by clang) of the form:
enum Name : Type {
The system headers also use bitfields in the mach_vm_range_recipe* types:
struct Foo { int bar : 32; }
Neither of these constructs can be parsed by LuaJIT, so filter the lines
out. Neither of these declarations are used by neovim's unittests.
There is a (now closed) issue about bitfields for LuaJIT:
https://github.com/LuaJIT/LuaJIT/issues/951
Fixes #26145.
|
|
|
|
|
|
|
| |
Python 3.12+ throws an error if you try to install a package in an
externally managed environment. Using `--break-system-packages` is not
recommended for personal use, but for CI it should be fine and is
probably the most straightforward solution.
|
|
|
|
|
|
|
|
|
| |
Co-authored-by: ite-usagi <77563904+ite-usagi@users.noreply.github.com>
Co-authored-by: v-sim <56476039+v-sim@users.noreply.github.com>
Co-authored-by: Evgeni Chasnovski <evgeni.chasnovski@gmail.com>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Co-authored-by: Quico Augustijn <quico.public@gmail.com>
Co-authored-by: nhld <nahnera@gmail.com>
Co-authored-by: francisco souza <108725+fsouza@users.noreply.github.com>
|
|
|
|
| |
This allows us to easily test the release branch if needed.
|
| |
|
|
|
|
|
|
| |
This will immensely reduce the complexity required to support both
architectures, reduce overall lines of code and unblock follow-up
simplifications.
|
|
|
|
| |
Add the label `ci:windows-asan` to enable it.
|
|
|
|
|
|
|
| |
`github.ref` is now defined for both pull requests and pushes, meaning
that it can be used to simplify the concurrency group.
`cancel-in-progress` is set to true only if the trigger is a pull
request, as we don't want master runs to cancel each other out.
|
|
|
|
|
|
|
|
|
|
| |
Setting the label `ci:skip-news` will skip the job. This is useful for
maintainers to indicate to contributors that a feature isn't big enough
to warrant a news entry, or for contributors who dislike red CI even if
there's nothing wrong.
Also change label `ci-s390x` to `ci:s390x`; this way it'll be easier to
see that `ci:` are a subcategory of labels that affect CI in some way.
|