Commit Graph

410 Commits

Author SHA1 Message Date
dundargoc
7348cc3a5b ci: add workflow_dispatch to optional.yml workflow
This makes it convenient to test optional.yml on release branch.
2023-12-29 20:02:43 +01:00
dundargoc
130bfe22c8 ci: disable libintl on mac release
The releases doesn't work on intel mac as libintl isn't available on the system
by default. This makes `:language` not work for the shipped macos releases,
though the reduction in build system complexity most likely outweighs that.
2023-12-27 00:01:28 +01:00
Carlo Cabrera
0496e1e889 build(ci): ensure correct headers are used on macOS
Currently, the release build picks up headers in
`/Library/Frameworks/Mono.framework/Headers`. You can verify this by
downloading the latest nightly build and checking the output of `nvim
--version`.

These headers are likely to be from a different version of `libintl` than the
one we link to. Let's avoid usage of them by setting `CMAKE_FIND_FRAMEWORK` to
`NEVER`.
2023-12-27 00:01:28 +01:00
dundargoc
84804e9afd ci: remove winget workflow
All releases that aren't directly maintained by us should live in the
`neovim/neovim-releases` repository to make it clear that neovim isn't
directly responsible for it and to correctly manage expectations that
it's provided on a best-effort case.

Closes https://github.com/neovim/neovim/issues/26717.
2023-12-26 22:43:39 +01:00
Vedant
da4eda6e9c ci(release/winget): get msi from previous job instead of downloading 2023-12-26 22:18:40 +01:00
zeertzjq
c6d127f3a4 ci(release): create version tag after "stable" tag 2023-12-20 22:15:52 +08:00
James McCoy
150f2b274d
ci(s390x): run build & test as a non-root user
(cherry picked from commit 3d8cd0c5d3)
2023-12-19 07:38:10 -05:00
James McCoy
0abb96f554
ci(s390x): double TEST_TIMEOUT since tests are running via qemu
(cherry picked from commit 1beef6cd21)
2023-12-19 07:38:10 -05:00
dundargoc
5677563743
ci: various fixes
- install attr only when tesitng
- fix s390x workflow by checking out the merge PR instead of master

(cherry picked from commit 9ad239690f)
2023-12-19 07:38:09 -05:00
dundargoc
205e8e4bcf
ci: add optional CI that can be triggered manually
These are meant for expensive or situational tests that may not be
suitable to run each time, but can occasionally be useful.

Currently only add testing for s390x. The job is enabled by adding the
ci-s390x label in github.

(cherry picked from commit 20dd9f3a26)
2023-12-19 07:38:09 -05:00
dundargoc
90890238ac ci: work around flaky python3 tests
Python3 provider tests suddenly became extremely flaky on macos for
unknown reasons. For some reason, installing python with the
setup-python action over using the default python fixes the flakiness.
Use this workaround for the time being to unblock CI while we figure out
the root cause.
2023-11-11 15:21:30 +08:00
dundargoc
cc398c5b06 ci: fix mac release
(cherry picked from commit b020a26d2d)
2023-10-09 22:30:52 +02:00
dundargoc
3dae99d86a ci: add runner image version to cache key
This will ensure the cache isn't used when an image upgrade changes the
compiler version, causing the build to fail.

(cherry picked from commit dd6b6f185b)
2023-06-10 14:37:00 +00:00
zeertzjq
0db9169a52 ci: remove ci/ from cache key
The ci/ directory is now only used for Cirrus, not for GitHub Actions.

(cherry picked from commit d928079c81)
2023-06-02 09:39:00 +00:00
github-actions[bot]
06d137681e
[Backport release-0.9] ci(response): use pagination for timeline events (#23844)
ci(response): use pagination for timeline events

GitHub paginates responses with many results, which needs to be taken
into account as the number of events in an issue can be large.

(cherry picked from commit b5a8b6b16d)

Co-authored-by: dundargoc <gocdundar@gmail.com>
2023-05-30 21:53:07 +02:00
github-actions[bot]
4b79441b14
[Backport release-0.9] ci: replace stale bot with custom implementation (#23843)
ci: replace stale bot with custom implementation

The stale action has a bug where it won't close an issue/PR if it has
comments after the stale label.

(cherry picked from commit 5a97c0b0b9)

Co-authored-by: dundargoc <gocdundar@gmail.com>
2023-05-30 21:51:29 +02:00
github-actions[bot]
2113b9e4b0
[Backport release-0.9] ci: auto add label according title (#23842)
ci: add issue open check
2023-05-30 21:48:43 +02:00
zeertzjq
1513666203 ci(labeler): add back GitHub token for type-scope
It is required by `gh pr edit`.
2023-05-30 21:30:45 +02:00
dundargoc
afdb5fa3cd ci: remove unnecessary token usage 2023-05-30 21:30:16 +02:00
dundargoc
cd73e54c42
ci: remove reviewdog for uncrustify (#23840)
Now that uncrustify is bundled it is no longer necessary.
2023-05-30 21:16:07 +02:00
dundargoc
0a954f41c4
ci: replace stylua action with our own lint target (#23838)
This will prevent situations where the linting works on CI but not
locally, at the cost of increased CI time.

Also manually ignore `runtime/vim/lua/re.lua`, as the .styluaignore
isn't respected when specifying a file instead of a directory.
2023-05-30 21:10:55 +02:00
github-actions[bot]
8463161daa
[Backport release-0.9] ci: update reviewers (#23837)
ci: update reviewers

(cherry picked from commit a647cfcbcb)

Co-authored-by: dundargoc <gocdundar@gmail.com>
2023-05-30 20:42:49 +02:00
dundargoc
72209f4bf7
ci: remove team reviewers (#23836)
Team reviewers is a nice feature that comes with a severe drawback: it
makes testing the workflows incredibly difficult as they won't work
without a similar token by the tester.
2023-05-30 20:39:25 +02:00
github-actions[bot]
2833230791
[Backport release-0.9] ci: use a set instead of array for team reviewers (#23835)
ci: use a set instead of array for team reviewers

Adding the same team multiple times will fails the review job.

(cherry picked from commit 4cb2b747c0)

Co-authored-by: dundargoc <gocdundar@gmail.com>
2023-05-30 20:29:26 +02:00
dundargoc
b257480955 ci: remove api-docs-check workflow
Having a workflow that creates a PR with the necessary changes on master
is redundant as this check is enforced for each PR anyway.

(cherry picked from commit c84e668242)
2023-05-30 17:32:39 +00:00
github-actions[bot]
a4097be568
[Backport release-0.9] ci: simplify backport workflow (#23832)
ci: simplify backport workflow

(cherry picked from commit baebb30e36)

Co-authored-by: dundargoc <gocdundar@gmail.com>
2023-05-30 18:37:31 +02:00
dundargoc
954cc51226 ci(release): clean up wording and undeprecate tar.gz
(cherry picked from commit 0357de7d72)
2023-05-29 11:41:11 +00:00
dundargoc
9edddceb18 ci: make all linux releases work with same glibc version 2023-05-04 17:12:11 +02:00
dundargoc
19bc7456b8 ci: don't automatically enable -Werror if in CI environment
This catches downstream consumers of neovim off-guard when trying to use
neovim in an esoteric environment not tested in our own CI.

Closes https://github.com/neovim/neovim/issues/22932

(cherry picked from commit 0256b67e89)
2023-04-08 01:28:25 +00:00
Christian Clason
fbee2e4d9c
ci(release): promote appimage over tar.gz (#22908) 2023-04-06 11:09:33 +02:00
dundargoc
9d5cbd1b15
ci!: remove the .deb release (#22773)
Having multiple release artifacts per platform is a maintenance burden.
Furthermore, it is a maintenance burden that doesn't directly improve
the Nvim editor itself. The releases are meant to be a quick way for
users to try out and use neovim on their platform and was never intended
to be a buffet of releases for every conceivable setup.

Users are encouraged to the following replacements:

- Github action `action-setup-vim` to have neovim installed on their
  PATH for their CI jobs. See https://github.com/rhysd/action-setup-vim.
- Use the appimage, either as is or by extracting it
  - To use as is, run `chmod u+x nvim.appimage && ./nvim.appimage`
  - If your system does not have FUSE you can extract the appimage with
    `./nvim.appimage --appimage-extract && ./squashfs-root/usr/bin/nvim`
- Build it manually. See https://github.com/neovim/neovim/wiki/Building-Neovim.

Work on https://github.com/neovim/neovim/issues/22684
2023-04-05 09:22:29 +02:00
Lewis Russell
090ade4af6
refactor(treesitter): delegate region calculation to treesitter (#22576) 2023-04-04 13:58:16 +02:00
dundargoc
598ff4f7d1
ci: update reviewers 2023-04-02 17:37:05 +02:00
dundargoc
a478fd4175
ci: use "ci" as the commit type for dependabot updates 2023-03-24 05:39:18 +01:00
dependabot[bot]
b2253cd000
build(deps): bump actions/stale from 7 to 8
Bumps [actions/stale](https://github.com/actions/stale) from 7 to 8.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v7...v8)
2023-03-23 23:32:45 +07:00
zeertzjq
3875b1fc8d
ci(labeler): don't automatically add "lua" label (#22765)
The labeler adds "lua" label to too many files. When there is already
a "treesitter" or "lsp" label, a "lua" label isn't useful. Instead it's
better to add the label manually to PRs for general Lua support.
2023-03-23 21:40:50 +08:00
ii14
17ce634b8f build!: rename sanitizer options from CLANG_* to ENABLE_* 2023-03-17 03:40:57 +01:00
dundargoc
9d574f8dd7
ci: bump to windows 2022
Skip failing funcitonaltests. Use jobstart() instead termopen() for
oldtests to prevent CI freezing.
2023-03-11 22:56:16 +01:00
dundargoc
a1edbd3564
ci: skip ruby provider tests on Windows
Installing the ruby provider takes anything between 1 and 1.5 minutes on
Windows, which is a big drain on our CI. Remove it until we find a more
sustainable solution.
2023-03-11 09:41:58 +01:00
dundargoc
1a71e5c362 ci: don't install unused packages
The lua client is no longer needed after
d6279f9392. One of its dependencies,
mpack, is still needed however. Remove lua-nvim and replace it with
lua-mpack.

The other packages are most likely not needed as we no longer run tests
for external dependencies.
2023-03-11 09:38:29 +01:00
dundargoc
5aaed9cbfc ci: test build with external dependencies on every pull request
Only testing the build with external dependencies on build system
changes is too naive, as demonstrated by
b9f19d3e28.
2023-03-11 09:38:29 +01:00
dundargoc
6cd7b5eeef ci: remove environment variable DEPS_BUILD_DIR from CI
If one uses .deps when DEPS_BUILD_DIR is defined in another location it
leads to very surprising behaviors, as it looks for libraries in other
places other than .deps.
2023-03-11 09:38:29 +01:00
Christian Clason
898f902e00
ci(news): don't run on draft (#22574) 2023-03-08 18:18:03 +01:00
bfredl
30632dd21a refactor(build): make installation of runtime/ more effective
Currently files to install in runtime/ is detected by recursive glob
pattern which has two problems:

- cmake needs to do a of work at config time and
  build/runtime/cmake_install.cmake becomes HUGE (2.5MB, biggest config file)
- we need to explicitly specify each file suffix used in the entire
  runtime, which is duplication of information.

These globs specify every single file in a subdirectory.
Thus, we can just install every runtime/ subdirectory as a single
install command. Furthermore, at the top-level, only .vim and .lua files
need to be installed.

Further possible refactor: we could move files which does not belong
in $PREFIX/runtime out of $REPO/runtime. Then runtime could be installed
with a single install_helper(DIRECTORY ...) command.
2023-03-07 20:16:52 +01:00
dundargoc
af23d17388
test: move oldtests to test directory (#22536)
The new oldtest directory is in test/old/testdir. The reason for this is
that many tests have hardcoded the parent directory name to be
'testdir'.
2023-03-07 11:13:04 +08:00
dundargoc
d877aa32f2 ci: remove core dump checking from test.yml
There is already a superior core dump check in test/helpers.lua, which
makes this obsolete.
2023-03-05 14:52:05 +01:00
dundargoc
98876db155 ci: use the same deps directory location for all jobs
Having separate directory location causes failures to be inconsistent
and ultimately confusing. A common problem is a file with a particular
name is searched for the entire repository, which gives different
results if the dependency directory is inside the neovim directory or
outside of it.
2023-03-05 14:52:05 +01:00
dundargoc
3683d6b7a8
ci: move configuring cmake to the build part of the CI
If the configuration fails then lints shouldn't be run, as most lint
steps depends on a successful configuration.
2023-03-04 17:55:42 +01:00
dundargoc
521034edef
ci: build all build types on each PR (#22441)
Building with Release and RelWithDebInfo build types only on build
system changes is too optimistic, as shown by
https://github.com/neovim/neovim/pull/22436 and
659234c95a.
2023-02-27 22:47:34 +01:00
Justin M. Keyes
6752f1005d docs: naming conventions, guidelines
close #21063
2023-02-22 16:23:49 +01:00