Main changes are:
- implemented the previously discussed trailer block recognizing rule
(recognized trailer + 25% trailers or 100% trailers)
- forbidding leading whitespace in trailers to avoid false positives
Once the recognized trailer + 25% trailers rule is implemented,
implementing the 100% trailer rule gives us backwards compatibility and
is only a few lines of code, so I included it.
Summary of changes from v3:
2/6->2/8:
- squashed Ramsay Jones's "static" patch
new->5/8:
- new patch
5/6->6/8:
- new trailer block recognizing rule
- reverted to the existing behavior of ignoring comments, since the
number of trailers and non-trailers in the trailer block now
matters more
new->7/8:
- new patch
6/6->8/8:
- updated trailer block recognizing code, since the continuation
lines must not be counted if they follow a trailer line
Jonathan Tan (8):
trailer: improve const correctness
trailer: use list.h for doubly-linked list
trailer: streamline trailer item create and add
trailer: make args have their own struct
trailer: clarify failure modes in parse_trailer
trailer: allow non-trailers in trailer block
trailer: forbid leading whitespace in trailers
trailer: support values folded to multiple lines
Documentation/git-interpret-trailers.txt | 14 +-
t/t7513-interpret-trailers.sh | 299 +++++++++++++++
trailer.c | 619 +++++++++++++++++--------------
3 files changed, 651 insertions(+), 281 deletions(-)
--
2.8.0.rc3.226.g39d4020