AcademySoftwareFoundation / OpenShadingLanguage

Advanced shading language for production GI renderers
BSD 3-Clause "New" or "Revised" License
2.09k stars 357 forks source link

ci: test against LLVM 17 #1760

Closed lgritz closed 8 months ago

lgritz commented 9 months ago

Bump the "bleeding edge" test to LLVM 17, the "stable latest releases" test to 16.

lgritz commented 9 months ago

Does this seem ok?

AlexMWells commented 9 months ago

So which clang versions will CI be exercising now?

lgritz commented 9 months ago

Clang or LLVM?

With this test, I believe our CI will test against llvm (for JIT) with every major version from 9 to 17, inclusive. (That actually feels like unnecessarily many, maybe it's time to raise the minimum for future OSL 1.14+ releases?)

But our CI only builds with a few versions of clang: 9, 13, and 14 (on Linux), and 15 (on Mac). Most of our build matrix uses gcc, plus the icc & icx tests. It would be unwieldy to expand the CI tests to make every combination test against every compiler, so we kind of sample. Historically, we have rarely or never found much sensitivity to building against one or another version of clang, as long as they both support the same level of C++ standard.

The one exception is that sometimes newer versions monotonically add new warnings, so we should always be doing one build with the very latest clang to make sure we compile cleanly with no warnings. I'll amend this PR to make sure one build uses the latest clang 17 to ensure we have full coverage there.

lgritz commented 9 months ago

Amended: Test clang 17 compilation with MacOS-13 build