cpplocate icon indicating copy to clipboard operation
cpplocate copied to clipboard

Rewrite CI with GitHub Actions

Open ekilmer opened this issue 4 years ago • 1 comments

I see that there are both Travis and Appveyor CI files, but they seem outdated and aren't passing.

Would you be willing to review a PR that reimplemented the CI using GitHub Actions? GitHub Actions is free for public repos and supports Linux, Mac, and Windows runners.

If the above is okay, would you want to keep the CI environments exactly the same:

  • compiler versions
    • Linux - GCC 5
    • macOS - XCode 9.1
    • WIndows - VS 2013, 2015, 2017
  • CMake configurations (Debug and Release)
  • Architectures (x86-64)
  • CMake version (3.0, as specified as the minimum version in the CMakeLists.txt)

Or are there any modifications to reduce the number of jobs or update minimum versions?

ekilmer avatar Jan 28 '22 19:01 ekilmer

Thanks for the proposition. I, too, worked on a Github bases CI back over in our cmake template repository and I'll take over this solution as a starting point.

Regarding the target environments, I think we actually target others or even more by now. Especially newer ones, that are the default environments on current operating systems, are missing, as they usually require little adjustments to our setup and code to keep running free of errors and warnings.

When I try to sum up our target architectures, I suppose it will by something like this:

  • OS: Windows, macOS, Linux, UNIX-like, BSD-like
  • Platforms: x86, x86_64, ARM
  • CMake: all 3.X
  • Compilers: all C++11 compatible compilers, but with focus on MSVC, gcc, clang, cygwin, icc

Please note that cpplocate may not run on all mentioned platforms and configurations, but we strive for this state and are happy to take bug reports, issues, and PRs to ensure operatability on these platforms.

scheibel avatar Feb 06 '22 16:02 scheibel