Merge branch 'master' into stable-7.2

* master:
  blame.cache: Define interface and POJO to cache blame results
  CgitMidxCompatibilityTest: remove unnecessary cast
  Replace usage of deprecated Config#getEnum method
  Update GetRefsBenchmark to use 3 state core.trustStat
  URIish: fix stack overflow in regex matching
  BlameGeneratorTest: Extract "file.txt" to a constant
  MultiPackIndexWriter: add missing @since for new API class
  DefaultTypedConfigGetter: Box values to avoid infinite recursion
  midx.MultiPackIndexPrettyPrinter: pretty printer to debug multi pack index
  midx.MultiPackIndexWriter: a writer for the multipack index format
  test/tests.bzl: Add docstrings to module and function
  [ssh known_hosts] Correct parsing of host key lines
  Improve configuration of trusting file attributes in FileSnapshot
  Config: add getters for primitive types without default value
  CommitConfig: fix potential NPE
  test.BUILD: add rule for "external tests"
  midx.PackIndexMerger: Helper to iterate over n-indexes
  PackIndex.MutableEntry: new methods to copy its contents
  PackDirectory: make template variables names more readable
  Log pruned packfiles as debug and not warn logs
  LooseObjects: compute loose object path before retry loop
  LooseObjects: convert while loop into for loop

Change-Id: Ia17db405d32f26f730c5206606c1ad3ff0ea28ee