[llvm-dev] "[NFC]" Abuse

Christian Kühnel via llvm-dev llvm-dev at lists.llvm.org
Tue Jun 22 02:51:20 PDT 2021


Hi Luke,

I would like to add a thought in another direction. We could reduce some of
the pain with two flavors of continuous integration:

1) We could be running some **automatic integration testing with downstream
users**: Have some **public** CI machine build the heads of LLVM and a
downstream project (e.g. Rust, Tensorflow) and see if the builds still
pass.

This would make it easier to identify the breakages and provide feedback to
a) the person implementing the change and b) the downstream users who might
need to adapt to that change. At least a couple of Rust and TensorFlow
folks would be interested in that. However that only works for open source
usages of LLVM.

Augie and I set up a **prototype for a LLVM + Rust CI build** [1] to see
what that would look like. This would certainly need more discussion and
work for production use.

2) Not really addressing your ABI/API use case: We could try to move
towards **100% pre-merge testing** (i.e. building every change before
merging it to the main branch). I chased down a couple of "NFCs" that broke
the build or some test. That could have been prevented with pre-merge
testing. This is not trivial to implement and would require a workflow
change.

This approach would not solve the tagging question, but we could reduce
some of the pains around debugging broken builds.

[1]
https://buildkite.com/llvm-project/rust-llvm-integrate-prototype/builds?branch=master

Best,
Christian


On Thu, Jun 17, 2021 at 7:11 PM Luke Drummond via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Hi all
>
> Twice in the last week I've had to bisect crashes in the middle end or
> failed CI
> due to commits marked "[NFC]" that changed something fundamental about a
> public
> API or the format of IR.
>
> While I understand LLVM's always been pretty fluid with API and ABI
> stability,
> it smacks a little when the offending commit is marked "[NFC]".
>
> Can some elders / code-owners comment on the expected threshold for what no
> longer counts as "NFC"? I'd personally like to limit its usage to things
> like
> changing a local variable name, rewording a comment, or clang-formatting
> something - not API, ABI, or IR changes.
>
> All the Best
>
> Luke
> --
> Codeplay Software Ltd.
> Company registered in England and Wales, number: 04567874
> Registered office: Regent House, 316 Beulah Hill, London, SE19 3HF
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20210622/9309e25b/attachment.html>


More information about the llvm-dev mailing list