Bump for something that would be good to do.
David Blaikie wrote:
> Sebastian Pop wrote:
>> Chris Lattner wrote:
>> > I'm in favor of it. Of course, the truly awesomest thing would be something like:
>> > [cfe-commits] r167788 - [lib/Analysis] Fix bad CFG construction bug when handling C++ 'try' statements.
>> commit_subject_template = %(prefix)s r%(revision)s - %(log)s
Using r172358 as an example (a moderately large commit chosen
otherwise at random), the current commit message subject is:
[llvm-commits] [llvm] r172358 - in /llvm/trunk:
lib/Transforms/IPO/DeadArgumentElimination.cpp (and on and on)
So I assume the new message would be:
[llvm-commits] [llvm] r172358 - Remove redundant 'llvm::' qualifications
Which seems reasonable. (I think the repo prefix is helpful given that
both the Clang and LLVM lists handle mail for multiple repositories
(llvm + compiler-rt + zorg at least on the llvm-commits list, cfe +
libc++ on the cfe-commits list). Unless we could drop the prefix for
the common repo (llvm and cfe respectively) & add it in only for the
I wouldn't mind some way to drop the mailing list prefix too, given
how I organize my email - but I don't suppose there's a nice way to do
that that wouldn't interfere with other people's workflows.
> I just realized that this line does not match Chris' subject line as it doesn't
> print the directories touched by the patch. Please use the following instead:
> commit_subject_template = %(prefix)s r%(revision)s - [%(dirs)s] %(log)s
[llvm-commits] [llvm] r172358 - [include/llvm/ADT
include/llvm/Analysis include/llvm/Object include/llvm/Support
lib/Analysis lib/MC lib/Target lib/Transforms ...] Remove redundant
I suppose this isn't the best example - of course it'll be across lots
of directories. But even for more common commits (working in one area
- changing headers, library, and tests all together) would contain a
lot of redundant information in the "dirs" list.
For what it's worth, (I think) Chris' suggestion of including the
directories was about including them "smart"ly by removing conceptual
duplicates (lib/foo + include/foo + test/foo) and generally giving a
brief sense of what a change is touching. If the change you have adds
the full (repo-relative) path all the directories without any smart
deduplication then I suspect it's going to easily push the log
description off most mail readers (especially mobile) & reduce the
value of this change.
I suspect we'll want to just stick with revision + log for now.
That's fine. Alternatively we can provide a list of all the dirs that we want
to see appearing and match them like this:
for_paths = .*(?P<SelectDirs>(lib/Analysis|lib/Transforms/Vectorize|lib/Transforms/Scalar)).*
commit_subject_template = %(prefix)s r%(revision)s - [%(SelectDirs)s] %(log)s
Could we go one step further and map these paths to names (eg: map
"lib/Analysis", "include/llvm/Analysis", "test/Analysis" -> "Analysis"
and unique the results)? Also, I'd prefer to have the dirs after the
log message I think, though perhaps if we get them short enough it'd
This solution does seem like it could involve a bit of manual work to
update the list of blessed dirs all the time. If we could express it
generically (lib/*, test/*, include/llvm/*) it might be OK, but as it
stands I'm still not sure it's worth the hassle.