You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We found in #198 and llvm/llvm-project#93034 that LLVM occasionally introduces breaking changes in clang-format in patch (and presumably minor) version releases. Because this action just uses the latest version of clang-format under a major version, this action's output can be non-deterministic as minor and patch versions are accepted into Ubuntu and those changes are pulled into this repo's container image builds.
To reduce the effects of this thrashing, there are a couple of possible solutions:
Provide a way to specify minor and patch versions as args to the action. If these versions are added to the container images, this could be tricky as it expands the build matrix by a lot.
Check if the desired clang-format version is already in the PATH in the runner, and if it is, use that instead of the Docker image. This shifts the responsibility onto users of this action to get the appropriate LLVM tools into their Actions runners, which they're probably already doing for other CI workflows.
The text was updated successfully, but these errors were encountered:
Option 2 IMO is probably going to be the most flexible. LLVM provides a script that can be downloaded via wget that's pretty easy to set up in a CI and then you can install whatever version of clang you want (almost). This is probably going to be the least maintenance work as well as updating for each minor patch release will probably be a pain.
We found in #198 and llvm/llvm-project#93034 that LLVM occasionally introduces breaking changes in
clang-format
in patch (and presumably minor) version releases. Because this action just uses the latest version ofclang-format
under a major version, this action's output can be non-deterministic as minor and patch versions are accepted into Ubuntu and those changes are pulled into this repo's container image builds.To reduce the effects of this thrashing, there are a couple of possible solutions:
clang-format
version is already in the PATH in the runner, and if it is, use that instead of the Docker image. This shifts the responsibility onto users of this action to get the appropriate LLVM tools into their Actions runners, which they're probably already doing for other CI workflows.The text was updated successfully, but these errors were encountered: