Addresses: #12571
- Added the following installers through CMake files:
- Windows NSIS.
- Windows MSI.
- Windows zip.
- MacOs tarball.
- Linux tarball.
- Linux Deb package.
- Tweaked pipeline CPack commands to build using new CMakeLists.txt configuration file.
- Added icons and relevant packaging files.
- Updated notes.md to reflect new installation instructions.
This isn't meant to be the perfect solution, it's simply a first pass at using a
simple packaging system to build Windows installers. A Debian package has also
been added since it's very easy but other packages have been left out due to
limiting the scope. Hopefully we can build further upon this and improve it
over time with code signing, better icons and more user-friendly installation
graphics and so on.
The VS 2019 CMake generator no longer has different generator types for
different architectures. Now, the architecture is specified via CMake's
`-A` switch. However, this requires we also propagate
`${CMAKE_GENERATOR_PLATFORM}` to the bundled deps, so they build for the
same architecture as Nvim.
Switch libuv from https://github.com/neovim/libuv fork to upstream for WIN32.
Upstream at 1.42.0 is now used for all platforms.
BREAKING CHANGE: removes Windows 7 support
BREAKING CHANGE: removes support for mouse and alternate buffers in TUI for
Windows 8 and 8.1
GHA now provides python3.exe by default -- actions/python-versions#78
Ensure Python 2 directory is earlier in $PATH so bare python always
invokes Python 2.
The `ruby_eval` RPC message will be available in neovim-ruby
0.9.0.pre.*. That will become 0.9.0 once `rubyeval` is merged to neovim.
The `--version` argument isn't needed, as `gem` should pick the latest
release.
scoop is a Windows package manager, similar to homebrew on OSX.
It is written on powershell, works in unelevated accounts,
is regularly maintained, and does not need mingw/msys2/cygwin
or WSL environments.
Sample use case is running (busybox) bash,
which can be installed via scoop via "scoop install busybox",
to use CI bash scripts in Appveyor.
Parts of scoop's directory can be cached to avoid downloads.
scoop modifies the registry for persistence environment variables
so scoop itself cannot be cached.
* Add ci/common/submit_coverage.sh, used with Travis and AppVeyor
* use gcovr, with coverage.xml for better branch coverage reporting, and
easier processing of gcov files in general
* codecov: use flags again, with `uname -s` additionally
Ref: https://github.com/neovim/neovim/pull/10227#issuecomment-502923543
* remove now unused parsers.gcov config from codecov.yml
Problem: Calling :stopinsert from RPC while in terminal-mode does not
go back to normal-mode.
Solution: Implement a check() handler for state_enter(), adapted from
insert_check().
Fix#7807
appveyor.yml: set cache to an absolute path.
Desperate attempt to get AppVeyor cache to work.
My assumption in a7a56293aa#9852 that that different jobs were
overwriting each other's cache is probably wrong: AppVeyor
docs/discussions hint that the cache is per-config (though I haven't
found a clear, unambiguous statement as such).
Give variables a default value to pass strict mode.
$ErrorActionPreference defines the default behavior
if a powershell command fails.
If it's set to 'stop', then it aborts the script
on the first unresolved error.
This behavior extends to native programs like cmake
but do not depend on it.
https://github.com/PowerShell/PowerShell/issues/3996