Before this change the link checker would ignore errors in a file if
the last link in a file was correct. The last link would wipe out the
error variable and set it to nil. Furthermore, it replaced errored
links with the empty string.
If we find an error that we can't correct, append the error message to
an an errs slice and leave the string as is.
Signed-off-by: Mike Danese <mikedanese@google.com>
The basic idea is that in the main mungedocs we run the entirefile and
create an annotated set of lines about that file. All mungers then act
on a struct mungeLines instead of on a bytes array. Making use of the
metadata where appropriete. Helper functions exist to make updating a
'macro block' extremely easy.
* Add analytics munger w/ munge heading
* More link autofixes
* Allow running a subset of munges
* Fix repo root detection
* Only process non-preformatted blocks
* Gendocs no longer adds the analytics link; mungedocs does that in a
second pass.