aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/release.yml
Commit message (Collapse)AuthorAge
* ci: use ubuntu docker container to build appimagemliszcz2022-10-07
| | | | | | | | Switch back to Ubuntu 18.04 for buliding the appimage. This allows for using the appimage on older systems that do not provide GLIBC_2.29. Fixes #19711. Fixes #20113.
* ci(publish-winget): use versioned tags for action #20417Vedant2022-10-01
|
* ci(release): remove unnecessary matrix strategydundargoc2022-09-30
| | | | We only have one Windows release job, so the matrix setup isn't needed.
* build(macos): restore and test universal build (#20383)Christian Clason2022-09-28
| | | | Build tree-sitter parsers for arm64 as well as x86 Check that all created binaries contain both architectures
* ci(publish-winget): fix errors that prevents release (#20232)Vedant2022-09-19
|
* ci(release-winget): publish nightly winget prerelease #20209Vedant2022-09-16
|
* ci(release): move release-winget steps into release job #19689Vedant2022-08-13
|
* ci(release): build with standard gcc on UbuntuChristian Clason2022-08-09
| | | | Ubuntu-20.04 ships with GCC 10.3.0, which is enough to avoid #14150
* ci(release): bump deprecated ubuntu image to 20.04Christian Clason2022-08-09
| | | | | `ubuntu-18.04` is now deprecated and subject to outages, see https://github.blog/changelog/2022-08-09-github-actions-the-ubuntu-18-04-actions-runner-image-is-being-deprecated-and-will-be-removed-by-12-1-22/
* ci(release): use cpack on macOS #19459Carlo Cabrera2022-07-22
| | | | We use `cpack` to generate the release tarballs on Linux. Now that we don't need to bundle `libintl`, we can do the same on macOS.
* ci(windows): config and build before publish step (#19416)kylo2522022-07-18
| | | | Problem: Windows package step failed (silently). Solution: Make sure to configure cmake before attempting to build the package target.
* ci: refactor build.ps1 #19336kylo2522022-07-17
| | | | | | | | | | | | Refactor `build.ps1` into a more modular design https://github.com/neovim/neovim/blob/9728f3b558c8cf9bd2bc331de8a5cc80ba0d3797/.github/workflows/ci.yml#L283-L296 - Separate CI steps. - Remove unneeded code related to setting up CMake. - Use parallel/incremental builds. - Fix github's cache. - Clear the way for the possibility of replacing this file with a cmake-preset: https://github.com/neovim/neovim/pull/19128
* ci(release): link `gettext` include directoryCarlo Cabrera2022-06-29
| | | | | | Our previous mangling of gettext broke the `HAVE_WORKING_LIBINTL` test because it prevented CMake from finding `libintl.h`. Let's fix that by linking Gettext's `include` directory into `/usr/local` too.
* refactor(ci): cleanup release.yml #19132Vedant2022-06-28
|
* ci(release): build a universal binary on macOSCarlo Cabrera2022-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | After some tweaks to our dep builds, we can now build a universal binary for macOS by using `CMAKE_OSX_ARCHITECTURES`. So, let's do that. This requires a number of additional changes: 1. We need to build on macOS 11, since earlier versions do not support building universal (M1 + Intel) binaries. 2. We need to provision a universal `libintl`. The linker will look for an ARM64 version of this library when linking the `nvim` binary. While we're here: 1. Link statically to `libintl`. This allows to to avoid having to do any install name rewriting or codesigning to package Neovim. 2. Bump the `MACOSX_DEPLOYMENT_TARGET` to `11`. We're already using a `libintl` built by Homebrew (through the pre-installed version of `gettext`), and that is built for macOS 11. In order to ensure we link to `libintl.a` instead of `libintl.dylib`, we have to make sure that CMake can't find the latter. This ideally should be a matter of doing `brew unlink gettext`. However, CMake is too adept at finding things that Homebrew has installed (even when not linked), so we have to do a bit more than that. This appears in the additional step ensuring static linkage to `libintl`. We end up breaking some Homebrew-installed software in the process, and some of these software is called during our build (e.g. curl, git, wget). To avoid any adverse effects, let's just uninstall them.
* ci(release): skip CoreServices system library on macOS (#19021)Christian Clason2022-06-19
| | | | | | | | | | Problem: The release script bundles a system library (CoreServices) that was added in #18294, which leads to errors on M1 since the architecture is different from the Github runner. Solution: Skip CoreServices when bundling the libraries (as was done for the CoreFoundation library that #18294 replaced with CoreServices).
* ci: bump github actions versions #18616dundargoc2022-05-20
|
* ci: remove remnants of gperf #18550Justin M. Keyes2022-05-12
| | | | gperf was removed in 36613b888bae7df764a26a28ca1627a2c0c2edeb yay!
* refactor(packaging): Windows: improve MSI, remove NSIS #18069Henry Fraser2022-04-11
| | | | | | | | | | - Removed NSIS installer. - Prevents undefined behaviour when two installations are performed to the same directory (NSIS + MSI). - Reduced cost of maintaining two installers that do the same thing. - Chose Wix MSI due to its better integration with Windows. - Added Wix patch file to add neovim binaries to the system path during installation. - Replaced neovim installer icons with better looking versions. - Renamed neovim installer icons from logo.ico -> neovim.ico for all icons to better reflect contents.
* ci(macos): minimize log output from brew updateDundar Göc2022-03-07
| | | | | Also remove perl from brew install to prevent a warning that states it's already installed.
* Merge pull request #17467 from dundargoc/ci/remove-failing-windowsJames McCoy2022-02-25
|\ | | | | ci: remove failing windows CI tests
| * ci: bump Windows image to windows-2019James McCoy2022-02-20
| | | | | | | | | | | | | | | | 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.
* | ci: improved cpack packagingHenry Fraser2022-02-24
|/ | | | | | | | | | | | | | | | | | | | | | 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.
* ci(release): enable gh's api debug logs when creating the releaseJames McCoy2022-01-12
| | | | | | | This is intended to help track down why the release is sporadically left in draft state, rather than being published. [skip ci]
* ci: remove outdated brew workaround that isn't needed anymoreDundar Göc2021-12-31
|
* ci: remove "brew upgrade" from macos jobsDundar Göc2021-12-04
| | | | | | Packages are automatically upgraded on install. This will avoid upgrading unrelated packages, cutting the macos job time to about a half.
* ci!: remove win32 builds/releasesJames McCoy2021-11-14
|
* ci(release): delete nightly/stable tag so release recreates itJames McCoy2021-11-02
| | | | | | | | Even though the releaes itself gets deleted, if the tag is not, then creating a new release just re-uses the same tag, even though we're using “--target <sha>”. [skip ci]
* ci(release): do not fail if stable/nightly release doesn't existJames McCoy2021-10-30
| | | | [skip ci]
* ci(release): re-publish "stable" release for versioned releasesJames McCoy2021-10-30
| | | | [skip ci]
* ci(release): use gh cli instead of 3rd-party actionsJames McCoy2021-10-30
| | | | | | Closes #15709 [skip ci]
* build: use RelWithDebInfo build for nightlies, Release for releasesJames McCoy2021-08-13
| | | | | | | | Unlike Release build type, RelWithDebInfo does not disable asserts. This helps get better debug info from people brave enough to use the nightly builds, but shouldn't be used for official releases. [skip ci]
* feat(ci): Add sha256 checksums to release notesOliver Marriott2021-07-02
|
* ci: upgrade to gcc-11 on ubuntu-18.04glacambre2021-06-16
| | | | | | | | | | In https://github.com/neovim/neovim/issues/14150 , investigations showed that using an older gcc to build the appimage could result in severe perf issues. This is because older gcc versions happily replace calls to libc functions with their own, which happen to be less optimized than their libc counterparts. We fix this problem by upgrading to gcc-11 on ubuntu-18.04.
* fix(ci): Remove gcc@8/gcc@9 homebrew workaroundJames McCoy2021-06-04
|
* ci(gha/release): Bump to ubuntu-18.04James McCoy2021-05-02
| | | | | Per https://wiki.ubuntu.com/Releases, 16.04 is no longer under standard support. Switch to the next LTS, 18.04, for the next couple years.
* ci(gha/release): Enable "contents: write" permission to publish releaseJames McCoy2021-04-21
|
* ci(gha/win): Specify valid directory for DEPS_BUILD_DIRJames McCoy2021-04-21
|
* ci(GHA/release): Delete the release when creating a new nightlyJames McCoy2021-03-14
| | | | | | | | | | This reverts #13733. Disabling delete of the release leaves behind a draft release associated with the previous nightly tag, which is annoying to cleanup. In the rare circumstances that the creation of a new nightly fails after deleting the previous nightly, the job can be re-run or a nightly can be missing for a day.
* ci(GHA/release): Stop installing gcc-multilibJames McCoy2021-03-14
| | | | | Recent changes in Xenial have made it uninstallable and we aren't actually using anything from it for the release builds.
* ci(gha): brew unlink gcc@8/@9 to fix upgrade issuesJames McCoy2021-01-11
|
* ci(gha): brew upgrade before installingJames McCoy2021-01-10
|
* Do not delete the nightly releaseMichał Kiełbowicz2021-01-10
|
* ci: Fix typo in release.yml that prevents optimized nightly build (#13671)Collided Scope2021-01-03
| | | Assuming the `CMAKE_BUILD_TYPE` directive is case-sensitive, this *actually* prevents the nightly build from being optimized. Even if it doesn't, the typo causes `:checkhealth` to issue a dummy warning in the Performance section.
* ci: Add Windows binaries to the releaseJames McCoy2020-12-31
|
* GHA/osx: workaround for brew update error (#13584)notomo2020-12-22
|
* Revert "Use oldest macOS version for release workflow"James McCoy2020-12-11
|
* Use oldest macOS version for release workflowMitchell Hanberg2020-12-11
|
* GHA: Use oldest OS images to build releasesJames McCoy2020-12-09
| | | | Closes #13493
* GHA: Perform a full checkout for release workflowJames McCoy2020-12-06
| | | | | This is needed to get a tag-based version from `git describe` rather than just the commit.