Permalink
Commits on Nov 13, 2018
  1. Tenth batch for 2.20

    gitster committed Nov 13, 2018
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. Merge branch 'nd/complete-format-patch'

    gitster committed Nov 13, 2018
    The support for format-patch (and send-email) by the command-line
    completion script (in contrib/) has been simplified a bit.
    
    * nd/complete-format-patch:
      completion: use __gitcomp_builtin for format-patch
  3. Merge branch 'nd/tree-walk-path-exclusion'

    gitster committed Nov 13, 2018
    Pathspec matching against a tree object were buggy when negative
    pathspec elements were involved, which has been fixed.
    
    * nd/tree-walk-path-exclusion:
      tree-walk.c: fix overoptimistic inclusion in :(exclude) matching
  4. Merge branch 'sg/travis-install-dependencies'

    gitster committed Nov 13, 2018
    The procedure to install dependencies before testing at Travis CI
    is getting revamped for both simplicity and flexibility, taking
    advantage of the recent move to the vm-based environment.
    
    * sg/travis-install-dependencies:
      travis-ci: install packages in 'ci/install-dependencies.sh'
  5. Merge branch 'bp/add-diff-files-optim'

    gitster committed Nov 13, 2018
    "git add" needs to internally run "diff-files" equivalent, and the
    codepath learned the same optimization as "diff-files" has to run
    lstat(2) in parallel to find which paths have been updated in the
    working tree.
    
    * bp/add-diff-files-optim:
      add: speed up cmd_add() by utilizing read_cache_preload()
  6. Merge branch 'jk/xdiff-interface'

    gitster committed Nov 13, 2018
    The interface into "xdiff" library used to discover the offset and
    size of a generated patch hunk by first formatting it into the
    textual hunk header "@@ -n,m +k,l @@" and then parsing the numbers
    out.  A new interface has been introduced to allow callers a more
    direct access to them.
    
    * jk/xdiff-interface:
      xdiff-interface: drop parse_hunk_header()
      range-diff: use a hunk callback
      diff: convert --check to use a hunk callback
      combine-diff: use an xdiff hunk callback
      diff: use hunk callback for word-diff
      diff: discard hunk headers for patch-ids earlier
      diff: avoid generating unused hunk header lines
      xdiff-interface: provide a separate consume callback for hunks
      xdiff: provide a separate emit callback for hunks
  7. Merge branch 'jk/misc-unused-fixes'

    gitster committed Nov 13, 2018
    Assorted fixes for bugs found while auditing -Wunused-parameter
    warnings.
    
    * jk/misc-unused-fixes:
      approxidate: fix NULL dereference in date_time()
      pathspec: handle non-terminated strings with :(attr)
      approxidate: handle pending number for "specials"
      rev-list: handle flags for --indexed-objects
  8. Merge branch 'nd/per-worktree-ref-iteration'

    gitster committed Nov 13, 2018
    The code to traverse objects for reachability, used to decide what
    objects are unreferenced and expendable, have been taught to also
    consider per-worktree refs of other worktrees as starting points to
    prevent data loss.
    
    * nd/per-worktree-ref-iteration:
      git-worktree.txt: correct linkgit command name
      reflog expire: cover reflog from all worktrees
      fsck: check HEAD and reflog from other worktrees
      fsck: move fsck_head_link() to get_default_heads() to avoid some globals
      revision.c: better error reporting on ref from different worktrees
      revision.c: correct a parameter name
      refs: new ref types to make per-worktree refs visible to all worktrees
      Add a place for (not) sharing stuff between worktrees
      refs.c: indent with tabs, not spaces
  9. Merge branch 'bp/refresh-index-using-preload'

    gitster committed Nov 13, 2018
    The helper function to refresh the cached stat information in the
    in-core index has learned to perform the lstat() part of the
    operation in parallel on multi-core platforms.
    
    * bp/refresh-index-using-preload:
      refresh_index: remove unnecessary calls to preload_index()
      speed up refresh_index() by utilizing preload_index()
  10. Merge branch 'ag/rebase-i-in-c'

    gitster committed Nov 13, 2018
    Code clean-up for a topic already in 'master'.
    
    * ag/rebase-i-in-c:
      sequencer.c: remove a stray semicolon
  11. Merge branch 'al/send-email-auto-cte-fixup'

    gitster committed Nov 13, 2018
    "git send-email --transfer-encoding=..." in recent versions of Git
    sometimes produced an empty "Content-Transfer-Encoding:" header,
    which has been corrected.
    
    * al/send-email-auto-cte-fixup:
      send-email: avoid empty transfer encoding header
  12. Merge branch 'ds/add-missing-tags'

    gitster committed Nov 13, 2018
    The history traversal used to implement the tag-following has been
    optimized by introducing a new helper.
    
    * ds/add-missing-tags:
      remote: make add_missing_tags() linear
      test-reach: test get_reachable_subset
      commit-reach: implement get_reachable_subset
  13. Merge branch 'sh/mingw-safer-compat-poll'

    gitster committed Nov 13, 2018
    Windows fix.
    
    * sh/mingw-safer-compat-poll:
      poll: use GetTickCount64() to avoid wrap-around issues
  14. Merge branch 'js/rebase-p-tests'

    gitster committed Nov 13, 2018
    In preparation to the day when we can deprecate and remove the
    "rebase -p", make sure we can skip and later remove tests for
    it.
    
    * js/rebase-p-tests:
      tests: optionally skip `git rebase -p` tests
      t3418: decouple test cases from a previous `rebase -p` test case
      t3404: decouple some test cases from outcomes of previous test cases
  15. Merge branch 'pw/am-rebase-read-author-script'

    gitster committed Nov 13, 2018
    Unify code to read the author-script used in "git am" and the
    commands that use the sequencer machinery, e.g. "git rebase -i".
    
    * pw/am-rebase-read-author-script:
      sequencer: use read_author_script()
      add read_author_script() to libgit
      am: rename read_author_script()
      am: improve author-script error reporting
      am: don't die in read_author_script()
  16. Merge branch 'jc/war-on-string-list'

    gitster committed Nov 13, 2018
    Replace three string-list instances used as look-up tables in "git
    fetch" with hashmaps.
    
    * jc/war-on-string-list:
      fetch: replace string-list used as a look-up table with a hashmap
  17. Merge branch 'ag/rev-parse-all-exclude-fix'

    gitster committed Nov 13, 2018
    "git rev-parse --exclude=* --branches --branches"  (i.e. first
    saying "add only things that do not match '*' out of all branches"
    and then adding all branches, without any exclusion this time")
    worked as expected, but "--exclude=* --all --all" did not work the
    same way, which has been fixed.
    
    * ag/rev-parse-all-exclude-fix:
      rev-parse: clear --exclude list after 'git rev-parse --all'
  18. Merge branch 'jt/tighten-fetch-proto-v2-response'

    gitster committed Nov 13, 2018
    "git fetch" was a bit loose in parsing resposes from the other side
    when talking over the protocol v2.
    
    * jt/tighten-fetch-proto-v2-response:
      fetch-pack: be more precise in parsing v2 response
  19. Merge branch 'ao/submodule-wo-gitmodules-checked-out'

    gitster committed Nov 13, 2018
    The submodule support has been updated to read from the blob at
    HEAD:.gitmodules when the .gitmodules file is missing from the
    working tree.
    
    * ao/submodule-wo-gitmodules-checked-out:
      t/helper: add test-submodule-nested-repo-config
      submodule: support reading .gitmodules when it's not in the working tree
      submodule: add a helper to check if it is safe to write to .gitmodules
      t7506: clean up .gitmodules properly before setting up new scenario
      submodule: use the 'submodule--helper config' command
      submodule--helper: add a new 'config' subcommand
      t7411: be nicer to future tests and really clean things up
      t7411: merge tests 5 and 6
      submodule: factor out a config_set_in_gitmodules_file_gently function
      submodule: add a print_config_from_gitmodules() helper
  20. Merge branch 'nb/worktree-api-doc'

    gitster committed Nov 13, 2018
    Code readability fix.
    
    * nb/worktree-api-doc:
      worktree: rename is_worktree_locked to worktree_lock_reason
      worktree: update documentation for lock_reason and lock_reason_valid
  21. Merge branch 'ma/sequencer-do-reset-saner-loop-termination'

    gitster committed Nov 13, 2018
    Code readability fix.
    
    * ma/sequencer-do-reset-saner-loop-termination:
      sequencer: break out of loop explicitly
  22. Merge branch 'js/mingw-utf8-env'

    gitster committed Nov 13, 2018
    Windows fix.
    
    * js/mingw-utf8-env:
      mingw: reencode environment variables on the fly (UTF-16 <-> UTF-8)
      t7800: fix quoting
  23. Merge branch 'js/mingw-perl5lib'

    gitster committed Nov 13, 2018
    Windows fix.
    
    * js/mingw-perl5lib:
      mingw: unset PERL5LIB by default
      config: move Windows-specific config settings into compat/mingw.c
      config: allow for platform-specific core.* config settings
      config: rename `dummy` parameter to `cb` in git_default_config()
  24. Merge branch 'js/mingw-isatty-and-dup2'

    gitster committed Nov 13, 2018
    Windows fix.
    
    * js/mingw-isatty-and-dup2:
      mingw: fix isatty() after dup2()
  25. Merge branch 'ab/pack-tests-cleanup'

    gitster committed Nov 13, 2018
    A couple of tests used to leave the repository in a state that is
    deliberately corrupt, which have been corrected.
    
    * ab/pack-tests-cleanup:
      index-pack tests: don't leave test repo dirty at end
      pack-objects tests: don't leave test .git corrupt at end
      pack-objects test: modernize style
  26. Merge branch 'ds/test-multi-pack-index'

    gitster committed Nov 13, 2018
    Tests for the recently introduced multi-pack index machinery.
    
    * ds/test-multi-pack-index:
      packfile: close multi-pack-index in close_all_packs
      multi-pack-index: define GIT_TEST_MULTI_PACK_INDEX
      midx: close multi-pack-index on repack
      midx: fix broken free() in close_midx()
  27. Merge branch 'nd/wildmatch-double-asterisk'

    gitster committed Nov 13, 2018
    A pattern with '**' that does not have a slash on either side used
    to be an invalid one, but the code now treats such double-asterisks
    the same way as two normal asterisks that happen to be adjacent to
    each other.
    
    * nd/wildmatch-double-asterisk:
      wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode
  28. Merge branch 'nd/per-worktree-config'

    gitster committed Nov 13, 2018
    A fourth class of configuration files (in addition to the
    traditional "system wide", "per user in the $HOME directory" and
    "per repository in the $GIT_DIR/config") has been introduced so
    that different worktrees that share the same repository (hence the
    same $GIT_DIR/config file) can use different customization.
    
    * nd/per-worktree-config:
      worktree: add per-worktree config files
      t1300: extract and use test_cmp_config()
  29. Merge branch 'jk/stream-pack-non-delta-clarification'

    gitster committed Nov 13, 2018
    Additional comment on a tricky piece of code to help developers.
    
    * jk/stream-pack-non-delta-clarification:
      read_istream_pack_non_delta(): document input handling
  30. Merge branch 'jk/proto-v2-ref-prefix-fix'

    gitster committed Nov 13, 2018
    "git ls-remote $there foo" was broken by recent update for the
    protocol v2 and stopped showing refs that match 'foo' that are not
    refs/{heads,tags}/foo, which has been fixed.
    
    * jk/proto-v2-ref-prefix-fix:
      ls-remote: pass heads/tags prefixes to transport
      ls-remote: do not send ref prefixes for patterns
  31. Merge branch 'jk/detect-truncated-zlib-input'

    gitster committed Nov 13, 2018
    A regression in Git 2.12 era made "git fsck" fall into an infinite
    loop while processing truncated loose objects.
    
    * jk/detect-truncated-zlib-input:
      cat-file: handle streaming failures consistently
      check_stream_sha1(): handle input underflow
      t1450: check large blob in trailing-garbage test
  32. Merge branch 'nd/config-split'

    gitster committed Nov 13, 2018
    Split the overly large Documentation/config.txt file into million
    little pieces.  This potentially allows each individual piece
    included into the manual page of the command it affects more easily.
    
    * nd/config-split: (81 commits)
      config.txt: remove config/dummy.txt
      config.txt: move worktree.* to a separate file
      config.txt: move web.* to a separate file
      config.txt: move versionsort.* to a separate file
      config.txt: move user.* to a separate file
      config.txt: move url.* to a separate file
      config.txt: move uploadpack.* to a separate file
      config.txt: move uploadarchive.* to a separate file
      config.txt: move transfer.* to a separate file
      config.txt: move tag.* to a separate file
      config.txt: move submodule.* to a separate file
      config.txt: move stash.* to a separate file
      config.txt: move status.* to a separate file
      config.txt: move splitIndex.* to a separate file
      config.txt: move showBranch.* to a separate file
      config.txt: move sequencer.* to a separate file
      config.txt: move sendemail-config.txt to config/
      config.txt: move reset.* to a separate file
      config.txt: move rerere.* to a separate file
      config.txt: move repack.* to a separate file
      ...
Commits on Nov 6, 2018
  1. Ninth batch for 2.20

    gitster committed Nov 6, 2018
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. Merge branch 'sg/test-verbose-log'

    gitster committed Nov 6, 2018
    Our test scripts can now take the '-V' option as a synonym for the
    '--verbose-log' option.
    
    * sg/test-verbose-log:
      test-lib: introduce the '-V' short option for '--verbose-log'
  3. Merge branch 'rj/header-cleanup'

    gitster committed Nov 6, 2018
    Code cleanup.
    
    * rj/header-cleanup:
      commit-reach.h: add missing declarations (hdr-check)
      ewok_rlw.h: add missing 'inline' to function definition
      fetch-object.h: add missing declaration (hdr-check)