]> git.ipfire.org Git - thirdparty/git.git/commitdiff
What's cooking (2021/01 #03)
authorJunio C Hamano <gitster@pobox.com>
Sat, 16 Jan 2021 00:57:41 +0000 (16:57 -0800)
committerJunio C Hamano <gitster@pobox.com>
Sat, 16 Jan 2021 00:58:10 +0000 (16:58 -0800)
whats-cooking.txt

index 6252a27bdc230b58096adcc4852baadb1695c5c2..a35acac80dc61cc9ef0e5dd4b08a96a65d492535 100644 (file)
@@ -1,10 +1,10 @@
 To: git@vger.kernel.org
 Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Jan 2021, #02; Fri, 8)
-X-master-at: 72c4083ddf91b489b7b7b812df67ee8842177d98
-X-next-at: b2714ff1a467d5c50f82988d2216cb7d091f5c2b
+Subject: What's cooking in git.git (Jan 2021, #03; Fri, 15)
+X-master-at: 4151fdb1c76c1a190ac9241b67223efd19f3e478
+X-next-at: 6a967380364a91b4c913c719b6c1f3962b1af2d8
 
-What's cooking in git.git (Jan 2021, #02; Fri, 8)
+What's cooking in git.git (Jan 2021, #03; Fri, 15)
 --------------------------------------------------
 
 Here are the topics that have been cooking.  Commits prefixed with '-' are
@@ -12,9 +12,7 @@ only in 'seen' (formerly 'pu'---proposed updates) while commits prefixed
 with '+' are in 'next'.  The ones marked with '.' do not appear in any of
 the integration branches, but I am still holding onto them.
 
-Many topics that have been cooking in the 'next' branch during the
-pre-release freeze at the year end have now been merged to the
-'master' branch, and the tip of the 'next' branch has been rewound.
+The second batch of topics are now in 'master'.
 
 Copies of the source code to Git live in many repositories, and the
 following is a list of the ones I push into or their mirrors.  Some
@@ -66,37 +64,300 @@ Release tarballs are available at:
  - merge-ort: initialize and free new directory rename data structures
  - merge-ort: add new data structures for directory rename detection
  - Merge branch 'en/merge-ort-3' into en/ort-directory-rename
- (this branch uses en/merge-ort-3.)
+ (this branch is used by en/merge-ort-perf; uses en/merge-ort-3.)
 
  ORT merge strategy learns to infer "renamed directory" while
  merging.
 
 
 * jk/forbid-lf-in-git-url (2021-01-07) 2 commits
- - fsck: reject .gitmodules git:// urls with newlines
- - git_connect_git(): forbid newlines in host and path
+  (merged to 'next' on 2021-01-12 at 88a1d937ae)
+ + fsck: reject .gitmodules git:// urls with newlines
+ + git_connect_git(): forbid newlines in host and path
 
  Newline characters in the host and path part of git:// URL are
  now forbidden.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
-* ps/fetch-atomic (2021-01-07) 2 commits
- - fetch: implement support for atomic reference updates
- - fetch: allow passing a transaction to `s_update_ref()`
+* ps/fetch-atomic (2021-01-12) 5 commits
+  (merged to 'next' on 2021-01-13 at a8896d0873)
+ + fetch: implement support for atomic reference updates
+ + fetch: allow passing a transaction to `s_update_ref()`
+ + fetch: refactor `s_update_ref` to use common exit path
+ + fetch: use strbuf to format FETCH_HEAD updates
+ + fetch: extract writing to FETCH_HEAD
 
  "git fetch" learns to treat ref updates atomically in all-or-none
  fashion, just like "git push" does, with the new "--atomic" option.
 
+ Will merge to 'master'.
+
 
 * jc/sign-off (2021-01-07) 1 commit
- - SubmittingPatches: tighten wording on "sign-off" procedure
+  (merged to 'next' on 2021-01-12 at 0d9a2a9a41)
+ + SubmittingPatches: tighten wording on "sign-off" procedure
+
+ Doc update.
+
+ Will merge to 'master'.
+
+
+* ab/detox-gettext-tests (2021-01-11) 6 commits
+ - tests: remove uses of GIT_TEST_GETTEXT_POISON=false
+ - tests: (almost) remove C_LOCALE_OUTPUT prerequisites
+ - tests: (almost) remove use of "test_i18ngrep !"
+ - tests: remove misc use of test_i18n{cmp,grep}
+ - tests: remove support for GIT_TEST_GETTEXT_POISON
+ - ci: remove GETTEXT_POISON jobs
+
+ Get rid of "GETTEXT_POISON" support altogether, which may or may
+ not be controversial.
+
+
+* ab/gettext-charset-comment-fix (2021-01-11) 2 commits
+  (merged to 'next' on 2021-01-12 at bc7f60e246)
+ + gettext.c: remove/reword a mostly-useless comment
+ + Makefile: remove a warning about old GETTEXT_POISON flag
+
+ Comments update.
+
+ Will merge to 'master'.
+
+
+* ad/t4129-setfacl-target-fix (2021-01-09) 1 commit
+  (merged to 'next' on 2021-01-12 at e09694772a)
+ + t4129: fix setfacl-related permissions failure
+
+ Test fix.
+
+ Will merge to 'master'.
+
+
+* bc/doc-status-short (2021-01-11) 1 commit
+  (merged to 'next' on 2021-01-13 at 6093625f0c)
+ + docs: rephrase and clarify the git status --short format
 
  Doc update.
 
+ Will merge to 'master'.
+
+
+* bc/signed-objects-with-both-hashes (2021-01-11) 6 commits
+ - SQUASH??? ulong vs size_t
+ - gpg-interface: remove other signature headers before verifying
+ - ref-filter: hoist signature parsing
+ - commit: allow parsing arbitrary buffers with headers
+ - gpg-interface: improve interface for parsing tags
+ - commit: ignore additional signatures when parsing signed commits
+
+ Signed commits and tags now allow verification of objects, whose
+ two object names (one in SHA-1, the other in SHA-256) are both
+ signed.
+
+
+* ds/update-index (2021-01-09) 14 commits
+ - update-index: remove static globals from callbacks
+ - update-index: reduce static globals, part 2
+ - update-index: reduce static globals, part 1
+ - update-index: remove ce_match_stat(), all macros
+ - update-index: replace several compatibility macros
+ - update-index: use add_index_entry()
+ - update-index: use remove_file_from_index()
+ - update-index: use index_name_pos() over cache_name_pos()
+ - update-index: use istate->cache_changed
+ - update-index: use istate->cache_nr over active_nr
+ - update-index: use istate->cache over active_cache
+ - update-index: drop the_index, the_repository
+ - rm: remove compatilibity macros
+ - mv: remove index compatibility macros
+ (this branch uses ag/merge-strategies-in-c.)
+
+ The implementation of a few commands lost reliance of "the_index"
+ compatibility macros by explicitly passing the index_state through
+ the callchain.
+
+ Unfortunately the base topic still needs to solidify.
+
+
+* jk/t5516-deflake (2021-01-09) 1 commit
+  (merged to 'next' on 2021-01-12 at ed5317a798)
+ + t5516: loosen "not our ref" error check
+
+ Test fix.
+
+ Will merge to 'master'.
+
+
+* jx/bundle (2021-01-11) 3 commits
+  (merged to 'next' on 2021-01-14 at 749a907dd2)
+ + bundle: arguments can be read from stdin
+ + bundle: lost objects when removing duplicate pendings
+ + test: add helper functions for git-bundle
+
+ "git bundle" learns "--stdin" option to read its refs from the
+ standard input.  Also, it now does not lose refs whey thy point at
+ the same object.
+
+ Will merge to 'master'.
+
+
+* ug/doc-lose-dircache (2021-01-09) 1 commit
+  (merged to 'next' on 2021-01-12 at 28310380a5)
+ + doc: remove "directory cache" from man pages
+
+ Doc update.
+
+ Will merge to 'master'.
+
+
+* ab/mailmap (2021-01-12) 22 commits
+  (merged to 'next' on 2021-01-13 at a3ce27912f)
+ + shortlog: remove unused(?) "repo-abbrev" feature
+ + mailmap doc + tests: document and test for case-insensitivity
+ + mailmap tests: add tests for empty "<>" syntax
+ + mailmap tests: add tests for whitespace syntax
+ + mailmap tests: add a test for comment syntax
+ + mailmap doc + tests: add better examples & test them
+ + tests: refactor a few tests to use "test_commit --append"
+ + test-lib functions: add an --append option to test_commit
+ + test-lib functions: add --author support to test_commit
+ + test-lib functions: document arguments to test_commit
+ + test-lib functions: expand "test_commit" comment template
+ + mailmap: test for silent exiting on missing file/blob
+ + mailmap tests: get rid of overly complex blame fuzzing
+ + mailmap tests: add a test for "not a blob" error
+ + mailmap tests: remove redundant entry in test
+ + mailmap tests: improve --stdin tests
+ + mailmap tests: modernize syntax & test idioms
+ + mailmap tests: use our preferred whitespace syntax
+ + mailmap doc: start by mentioning the comment syntax
+ + check-mailmap doc: note config options
+ + mailmap doc: quote config variables `like.this`
+ + mailmap doc: create a new "gitmailmap(5)" man page
+ (this branch is used by ab/mailmap-fixup.)
+
+ Clean-up docs, codepaths and tests around mailmap.
+
+ Will merge to 'master'.
+
+
+* jk/log-cherry-pick-duplicate-patches (2021-01-12) 1 commit
+  (merged to 'next' on 2021-01-13 at abcfbf8603)
+ + patch-ids: handle duplicate hashmap entries
+
+ When more than one commit with the same patch ID appears on one
+ side, "git log --cherry-pick A...B" did not exclude them all when a
+ commit with the same patch ID appears on the other side.  Now it
+ does.
+
+
+* tb/local-clone-race-doc (2021-01-11) 1 commit
+  (merged to 'next' on 2021-01-14 at b86c0426de)
+ + Documentation/git-clone.txt: document race with --local
+
+ Doc update.
+
+ Will merge to 'master'.
+
+
+* tb/pack-revindex-api (2021-01-14) 21 commits
+ - for_each_object_in_pack(): clarify pack vs index ordering
+ - pack-revindex.c: avoid direct revindex access in 'offset_to_pack_pos()'
+ - pack-revindex: hide the definition of 'revindex_entry'
+ - pack-revindex: remove unused 'find_revindex_position()'
+ - pack-revindex: remove unused 'find_pack_revindex()'
+ - builtin/gc.c: guess the size of the revindex
+ - for_each_object_in_pack(): convert to new revindex API
+ - unpack_entry(): convert to new revindex API
+ - packed_object_info(): convert to new revindex API
+ - retry_bad_packed_offset(): convert to new revindex API
+ - get_delta_base_oid(): convert to new revindex API
+ - rebuild_existing_bitmaps(): convert to new revindex API
+ - try_partial_reuse(): convert to new revindex API
+ - get_size_by_pos(): convert to new revindex API
+ - show_objects_for_type(): convert to new revindex API
+ - bitmap_position_packfile(): convert to new revindex API
+ - check_object(): convert to new revindex API
+ - write_reused_pack_verbatim(): convert to new revindex API
+ - write_reused_pack_one(): convert to new revindex API
+ - write_reuse_object(): convert to new revindex API
+ - pack-revindex: introduce a new API
+ (this branch is used by tb/pack-revindex-on-disk.)
+
+ Abstract accesses to in-core revindex that allows enumerating
+ objects stored in a packfile in the order they appear in the pack,
+ in preparation for introducing an on-disk precomputed revindex.
+
+ Will merge to 'next'.
+
+
+* cc/write-promisor-file (2021-01-14) 3 commits
+  (merged to 'next' on 2021-01-14 at 9d773d4734)
+ + pack-write: die on error in write_promisor_file()
+ + fetch-pack: refactor writing promisor file
+ + fetch-pack: rename helper to create_promisor_file()
+
+ A bit of code refactoring.
+
+ Will merge to 'master'.
+
+
+* js/rebase-i-commit-cleanup-fix (2021-01-12) 1 commit
+ - rebase -i: do leave commit message intact in fixup! chains
+
+ When "git rebase -i" processes "fixup" insn, there is no reason to
+ clean up the commit log message, but we did the usual stripspace
+ processing.  This has been corrected.
+
+ A bit more tests to document what is still broken have been offered.
+ cf. <20210112204939.1095-1-martin.agren@gmail.com>
+
+
+* ab/mailmap-fixup (2021-01-14) 4 commits
+ - t4203: make blame output massaging more robust
+ - mailmap doc: use correct environment variable 'GIT_WORK_TREE'
+ - t4203: stop losing return codes of git commands
+ - test-lib-functions.sh: fix usage for test_commit()
+ (this branch uses ab/mailmap.)
+
+ Follow-up fixes and improvements to ab/mailmap topic.
+
  Will merge to 'next'.
 
+
+* jc/macos-install-dependencies-fix (2021-01-14) 1 commit
+  (merged to 'next' on 2021-01-14 at 5a11de010b)
+ + ci/install-depends: attempt to fix "brew cask" stuff
+
+ Fix for procedure to building CI test environment for mac.
+
+ Will merge to 'master'.
+
+
+* tb/pack-revindex-on-disk (2021-01-14) 8 commits
+ - pack-revindex: ensure that on-disk reverse indexes are given precedence
+ - t: support GIT_TEST_WRITE_REV_INDEX
+ - t: prepare for GIT_TEST_WRITE_REV_INDEX
+ - Documentation/config/pack.txt: advertise 'pack.writeReverseIndex'
+ - builtin/pack-objects.c: respect 'pack.writeReverseIndex'
+ - builtin/index-pack.c: write reverse indexes
+ - pack-write.c: prepare to write 'pack-*.rev' files
+ - packfile: prepare for the existence of '*.rev' files
+ (this branch uses tb/pack-revindex-api.)
+
+ Introduce an on-disk file to record revindex for packdata, which
+ traditionally was always created on the fly and only in-core.
+
+
+* en/merge-ort-perf (2021-01-15) 4 commits
+ - merge-ort: begin performance work; instrument with trace2_region_* calls
+ - Merge branch 'en/ort-directory-rename' into en/merge-ort-perf
+ - Merge branch 'en/ort-conflict-handling' into en/merge-ort-perf
+ - Merge branch 'en/diffcore-rename' into en/merge-ort-perf
+ (this branch uses en/diffcore-rename, en/merge-ort-3, en/ort-conflict-handling and en/ort-directory-rename.)
+
 --------------------------------------------------
 [Graduated to 'master']
 
@@ -112,6 +373,29 @@ Release tarballs are available at:
  easier to design output for machine consumption.
 
 
+* ar/t6016-modernise (2021-01-04) 1 commit
+  (merged to 'next' on 2021-01-08 at 45f1b43e88)
+ + t6016: move to lib-log-graph.sh framework
+
+ Test update.
+
+
+* bc/rev-parse-path-format (2020-12-12) 2 commits
+  (merged to 'next' on 2021-01-08 at 7d51587b7f)
+ + rev-parse: add option for absolute or relative path formatting
+ + abspath: add a function to resolve paths with missing components
+
+ "git rev-parse" can be explicitly told to give output as absolute
+ or relative path with the `--path-format=(absolute|relative)` option.
+
+
+* ds/trace2-topo-walk (2021-01-04) 1 commit
+  (merged to 'next' on 2021-01-08 at 794c8f37ee)
+ + revision: trace topo-walk statistics
+
+ The topological walk codepath is covered by new trace2 stats.
+
+
 * en/merge-ort-2 (2020-12-13) 7 commits
   (merged to 'next' on 2020-12-21 at ef5b184349)
  + merge-ort: add modify/delete handling and delayed output processing
@@ -167,6 +451,16 @@ Release tarballs are available at:
  recursive backend has done for years.
 
 
+* en/stash-apply-sparse-checkout (2020-12-01) 3 commits
+  (merged to 'next' on 2021-01-08 at cae5b73d99)
+ + stash: fix stash application in sparse-checkouts
+ + stash: remove unnecessary process forking
+ + t7012: add a testcase demonstrating stash apply bugs in sparse checkouts
+
+ "git stash" did not work well in a sparsely checked out working
+ tree.
+
+
 * es/perf-export-fix (2020-12-22) 1 commit
   (merged to 'next' on 2020-12-22 at d06b0379d9)
  + t/perf: avoid unnecessary test_export() recursion
@@ -182,6 +476,25 @@ Release tarballs are available at:
  repository and the worktree moved.
 
 
+* ew/decline-core-abbrev (2020-12-23) 1 commit
+  (merged to 'next' on 2021-01-08 at 630dd186a4)
+ + core.abbrev=no disables abbreviations
+
+ The configuration variable 'core.abbrev' can be set to 'no' to
+ force no abbreviation regardless of the hash algorithm.
+
+
+* fc/completion-aliases-support (2021-01-04) 4 commits
+  (merged to 'next' on 2021-01-08 at b2714ff1a4)
+ + completion: add proper public __git_complete
+ + test: completion: add tests for __git_complete
+ + completion: bash: improve function detection
+ + completion: bash: add __git_have_func helper
+
+ Bash completion (in contrib/) update to make it easier for
+ end-users to add completion for their custom "git" subcommands.
+
+
 * fc/pull-merge-rebase (2020-12-15) 5 commits
   (merged to 'next' on 2020-12-21 at acce13e5c4)
  + pull: display default warning only when non-ff
@@ -207,6 +520,46 @@ Release tarballs are available at:
  corrected.
 
 
+* ma/doc-pack-format-varint-for-sizes (2021-01-04) 1 commit
+  (merged to 'next' on 2021-01-08 at 8a448c50dd)
+ + pack-format.txt: document sizes at start of delta data
+
+ Doc update.
+
+
+* ma/sha1-is-a-hash (2021-01-04) 4 commits
+  (merged to 'next' on 2021-01-08 at a25537f7c3)
+ + hash-lookup: rename from sha1-lookup
+ + sha1-lookup: rename `sha1_pos()` as `hash_pos()`
+ + object-file.c: rename from sha1-file.c
+ + object-name.c: rename from sha1-name.c
+
+ Retire more names with "sha1" in it.
+
+
+* ma/t1300-cleanup (2021-01-04) 3 commits
+  (merged to 'next' on 2021-01-08 at 51aaae39a1)
+ + t1300: don't needlessly work with `core.foo` configs
+ + t1300: remove duplicate test for `--file no-such-file`
+ + t1300: remove duplicate test for `--file ../foo`
+
+ Code clean-up.
+
+
+* nk/perf-fsmonitor-cleanup (2021-01-06) 1 commit
+  (merged to 'next' on 2021-01-08 at 1837d6c30b)
+ + p7519: allow running without watchman prereq
+
+ Test fix.
+
+
+* pb/doc-modules-git-work-tree-typofix (2021-01-04) 1 commit
+  (merged to 'next' on 2021-01-08 at a67ab3e96a)
+ + gitmodules.txt: fix 'GIT_WORK_TREE' variable name
+
+ Doc fix.
+
+
 * pk/subsub-fetch-fix-take-2 (2020-12-09) 1 commit
   (merged to 'next' on 2020-12-14 at ccc01a5f66)
  + submodules: fix of regression on fetching of non-init subsub-repo
@@ -214,6 +567,20 @@ Release tarballs are available at:
  "git fetch --recurse-submodules" fix (second attempt).
 
 
+* rs/rebase-commit-validation (2021-01-04) 1 commit
+  (merged to 'next' on 2021-01-08 at 2c63eb1cc8)
+ + rebase: verify commit parameter
+
+ Diagnose command line error of "git rebase" early.
+
+
+* ta/doc-typofix (2021-01-04) 1 commit
+  (merged to 'next' on 2021-01-08 at 1e579ef94f)
+ + doc: fix some typos
+
+ Doc fix.
+
+
 * tb/pack-bitmap (2020-12-08) 24 commits
   (merged to 'next' on 2020-12-15 at 773268c2fb)
  + pack-bitmap-write: better reuse bitmaps
@@ -243,6 +610,14 @@ Release tarballs are available at:
 
  Various improvements to the codepath that writes out pack bitmaps.
 
+
+* zh/arg-help-format (2021-01-06) 2 commits
+  (merged to 'next' on 2021-01-08 at 208c98620c)
+ + builtin/*: update usage format
+ + parse-options: format argh like error messages
+
+ Clean up option descriptions in "git cmd --help".
+
 --------------------------------------------------
 [Stalled]
 
@@ -386,6 +761,7 @@ Release tarballs are available at:
  - update-index: move add_cacheinfo() to read-cache.c
  - t6060: modify multiple files to expose a possible issue with merge-index
  - t6407: modernise tests
+ (this branch is used by ds/update-index.)
 
  The resolve and octopus merge strategy backends have been rewritten
  in C.
@@ -396,29 +772,31 @@ Release tarballs are available at:
 [Cooking]
 
 * vv/send-email-with-less-secure-apps-access (2021-01-07) 1 commit
- - git-send-email.txt: mention less secure app access with Gmail
+  (merged to 'next' on 2021-01-12 at 53243ca7e7)
+ + git-send-email.txt: mention less secure app access with Gmail
 
  Doc update.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * ab/branch-sort (2021-01-07) 7 commits
- - branch: show "HEAD detached" first under reverse sort
- - branch: sort detached HEAD based on a flag
- - ref-filter: move ref_sorting flags to a bitfield
- - ref-filter: move "cmp_fn" assignment into "else if" arm
- - ref-filter: add braces to if/else if/else chain
- - branch tests: add to --sort tests
- - branch: change "--local" to "--list" in comment
+  (merged to 'next' on 2021-01-12 at 1231feea7c)
+ + branch: show "HEAD detached" first under reverse sort
+ + branch: sort detached HEAD based on a flag
+ + ref-filter: move ref_sorting flags to a bitfield
+ + ref-filter: move "cmp_fn" assignment into "else if" arm
+ + ref-filter: add braces to if/else if/else chain
+ + branch tests: add to --sort tests
+ + branch: change "--local" to "--list" in comment
 
  The implementation of "git branch --sort" wrt the detached HEAD
  display has always been hacky, which has been cleaned up.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
-* ab/coc-update-to-2.0 (2021-01-07) 3 commits
+* ab/coc-update-to-2.0 (2021-01-13) 3 commits
  - CoC: update to version 2.0 + local changes
  - CoC: explicitly take any whitespace breakage
  - CoC: Update word-wrapping to match upstream
@@ -426,28 +804,20 @@ Release tarballs are available at:
  Update the Code-of-conduct to version 2.0 from the upstream (we've
  been using version 1.4).
 
- The first step needs to be signed off by the author, and like the
- original discussion thread back in Sep 2019, it also needs to
- collect acks from list regulars to show support.
-
-
-* ar/t6016-modernise (2021-01-04) 1 commit
-  (merged to 'next' on 2021-01-08 at 45f1b43e88)
- + t6016: move to lib-log-graph.sh framework
-
- Test update.
-
- Will merge to 'master'.
+ Will merge to 'next'.
 
 
-* dl/reflog-with-single-entry (2021-01-07) 2 commits
- - refs: allow @{n} to work with n-sized reflog
- - refs: factor out set_read_ref_cutoffs()
+* dl/reflog-with-single-entry (2021-01-11) 2 commits
+  (merged to 'next' on 2021-01-13 at 09b33209c4)
+ + refs: allow @{n} to work with n-sized reflog
+ + refs: factor out set_read_ref_cutoffs()
 
  After expiring a reflog and making a single commit, the reflog for
  the branch would record a single entry that knows both @{0} and
  @{1}, but we failed to answer "what commit were we on?", i.e. @{1}
 
+ Will merge to 'master'.
+
 
 * ds/cache-tree-basics (2021-01-07) 10 commits
  - cache-tree: speed up consecutive path comparisons
@@ -466,21 +836,13 @@ Release tarballs are available at:
 
 
 * ds/for-each-repo-noopfix (2021-01-07) 1 commit
- - for-each-repo: do nothing on empty config
+  (merged to 'next' on 2021-01-12 at 92f83b5db1)
+ + for-each-repo: do nothing on empty config
 
  "git for-each-repo --config=<var> <cmd>" should not run <cmd> for
  any repository when the configuration variable <var> is not defined
  even once.
 
- Will merge to 'next'.
-
-
-* ds/trace2-topo-walk (2021-01-04) 1 commit
-  (merged to 'next' on 2021-01-08 at 794c8f37ee)
- + revision: trace topo-walk statistics
-
- The topological walk codepath is covered by new trace2 stats.
-
  Will merge to 'master'.
 
 
@@ -495,61 +857,18 @@ Release tarballs are available at:
  - merge-ort: implement unique_path() helper
  - merge-ort: handle directory/file conflicts that remain
  - merge-ort: handle D/F conflict where directory disappears due to merge
+ (this branch is used by en/merge-ort-perf.)
 
  ORT merge strategy learns more support for merge conflicts.
 
 
-* fc/completion-aliases-support (2021-01-04) 4 commits
-  (merged to 'next' on 2021-01-08 at b2714ff1a4)
- + completion: add proper public __git_complete
- + test: completion: add tests for __git_complete
- + completion: bash: improve function detection
- + completion: bash: add __git_have_func helper
-
- Bash completion (in contrib/) update to make it easier for
- end-users to add completion for their custom "git" subcommands.
-
- Will merge to 'master'.
-
-
-* ma/doc-pack-format-varint-for-sizes (2021-01-04) 1 commit
-  (merged to 'next' on 2021-01-08 at 8a448c50dd)
- + pack-format.txt: document sizes at start of delta data
-
- Doc update.
-
- Will merge to 'master'.
-
-
 * ma/more-opaque-lock-file (2021-01-06) 5 commits
- - read-cache: try not to peek into `struct {lock_,temp}file`
- - refs/files-backend: don't peek into `struct lock_file`
- - midx: don't peek into `struct lock_file`
- - commit-graph: don't peek into `struct lock_file`
- - builtin/gc: don't peek into `struct lock_file`
-
- Code clean-up.
-
- Will merge to 'next'.
-
-
-* ma/sha1-is-a-hash (2021-01-04) 4 commits
-  (merged to 'next' on 2021-01-08 at a25537f7c3)
- + hash-lookup: rename from sha1-lookup
- + sha1-lookup: rename `sha1_pos()` as `hash_pos()`
- + object-file.c: rename from sha1-file.c
- + object-name.c: rename from sha1-name.c
-
- Retire more names with "sha1" in it.
-
- Will merge to 'master'.
-
-
-* ma/t1300-cleanup (2021-01-04) 3 commits
-  (merged to 'next' on 2021-01-08 at 51aaae39a1)
- + t1300: don't needlessly work with `core.foo` configs
- + t1300: remove duplicate test for `--file no-such-file`
- + t1300: remove duplicate test for `--file ../foo`
+  (merged to 'next' on 2021-01-12 at f246e38b50)
+ + read-cache: try not to peek into `struct {lock_,temp}file`
+ + refs/files-backend: don't peek into `struct lock_file`
+ + midx: don't peek into `struct lock_file`
+ + commit-graph: don't peek into `struct lock_file`
+ + builtin/gc: don't peek into `struct lock_file`
 
  Code clean-up.
 
@@ -557,54 +876,29 @@ Release tarballs are available at:
 
 
 * mt/t4129-with-setgid-dir (2021-01-06) 1 commit
- - t4129: don't fail if setgid is set in the test directory
+  (merged to 'next' on 2021-01-12 at 7a54dd92d8)
+ + t4129: don't fail if setgid is set in the test directory
 
  Some tests expect that "ls -l" output has either '-' or 'x' for
  group executable bit, but setgid bit can be inherited from parent
  directory and make these fields 'S' or 's' instead, causing test
  failures.
 
- Will merge to 'next'.
-
-
-* nk/perf-fsmonitor-cleanup (2021-01-06) 1 commit
-  (merged to 'next' on 2021-01-08 at 1837d6c30b)
- + p7519: allow running without watchman prereq
-
- Test fix.
-
- Will merge to 'master'.
-
-
-* pb/doc-modules-git-work-tree-typofix (2021-01-04) 1 commit
-  (merged to 'next' on 2021-01-08 at a67ab3e96a)
- + gitmodules.txt: fix 'GIT_WORK_TREE' variable name
-
- Doc fix.
-
  Will merge to 'master'.
 
 
 * pb/mergetool-tool-help-fix (2021-01-06) 1 commit
- - mergetool--lib: fix '--tool-help' to correctly show available tools
+  (merged to 'next' on 2021-01-12 at ba0f76b413)
+ + mergetool--lib: fix '--tool-help' to correctly show available tools
 
  Fix 2.29 regression where "git mergetool --tool-help" fails to list
  all the available tools.
 
- Will merge to 'next'.
-
-
-* rs/rebase-commit-validation (2021-01-04) 1 commit
-  (merged to 'next' on 2021-01-08 at 2c63eb1cc8)
- + rebase: verify commit parameter
-
- Diagnose command line error early.
-
  Will merge to 'master'.
 
 
-* sg/t7800-difftool-robustify (2021-01-04) 1 commit
. t7800-difftool: don't accidentally match tmp dirs
+* sg/t7800-difftool-robustify (2021-01-09) 1 commit
- t7800-difftool: don't accidentally match tmp dirs
 
  Test fix.
 
@@ -612,25 +906,6 @@ Release tarballs are available at:
  cf. https://github.com/git/git/runs/1660588243?check_suite_focus=true#step:7:4186
 
 
-* ta/doc-typofix (2021-01-04) 1 commit
-  (merged to 'next' on 2021-01-08 at 1e579ef94f)
- + doc: fix some typos
-
- Doc fix.
-
- Will merge to 'master'.
-
-
-* zh/arg-help-format (2021-01-06) 2 commits
-  (merged to 'next' on 2021-01-08 at 208c98620c)
- + builtin/*: update usage format
- + parse-options: format argh like error messages
-
- Clean up option descriptions in "git cmd --help".
-
- Will merge to 'master'.
-
-
 * ak/corrected-commit-date (2021-01-04) 11 commits
  - doc: add corrected commit date info
  - commit-reach: use corrected commit dates in paint_down_to_common()
@@ -652,12 +927,18 @@ Release tarballs are available at:
 
 
 * dl/p4-encode-after-kw-expansion (2020-12-23) 1 commit
- - git-p4: fix syncing file types with pattern
+  (merged to 'next' on 2021-01-13 at 8fce17d998)
+ + git-p4: fix syncing file types with pattern
 
  Text encoding fix for "git p4".
 
+ Will merge to 'master'.
+
 
-* fc/mergetool-automerge (2021-01-06) 5 commits
+* fc/mergetool-automerge (2021-01-09) 8 commits
+ . fixup! mergetool: break setup_tool out into separate initialization function
+ . fixup! fixup! mergetool: add automerge configuration
+ . fixup! mergetool: add automerge configuration
  . mergetool: add automerge_enabled tool-specific override function
  . mergetool: break setup_tool out into separate initialization function
  . mergetool: add per-tool support for the autoMerge flag
@@ -668,18 +949,8 @@ Release tarballs are available at:
  a conflicted path unmodified.  The command learned to optionally
  prepare these files with unconflicted parts already resolved.
 
- Breaks tests on macOS.
- cf. https://github.com/git/git/runs/1659807735?check_suite_focus=true#step:4:1641
-
-
-* ew/decline-core-abbrev (2020-12-23) 1 commit
-  (merged to 'next' on 2021-01-08 at 630dd186a4)
- + core.abbrev=no disables abbreviations
-
- Allow the configuration to specify no abbreviation regardless of
- the hash algorithm.
-
- Will merge to 'master'.
+ Breaks tests on Windows
+ cf. https://github.com/git/git/runs/1675932107?check_suite_focus=true#step:7:10373
 
 
 * mr/bisect-in-c-4 (2020-12-21) 7 commits
@@ -710,22 +981,23 @@ Release tarballs are available at:
 
 
 * fc/bash-completion-post-2.29 (2020-12-23) 4 commits
- completion: bash: add correct suffix in variables
- completion: bash: fix for multiple dash commands
- completion: bash: fix for suboptions with value
- completion: bash: fix prefix detection in branch.*
. completion: bash: add correct suffix in variables
. completion: bash: fix for multiple dash commands
. completion: bash: fix for suboptions with value
. completion: bash: fix prefix detection in branch.*
 
  Seems to break tests on Windows
 
 
 * jc/deprecate-pack-redundant (2020-12-15) 1 commit
- - pack-redundant: gauge the usage before proposing its removal
+  (merged to 'next' on 2021-01-12 at 14034c7892)
+ + pack-redundant: gauge the usage before proposing its removal
 
  Warn loudly when the "pack-redundant" command, which has been left
  stale with almost unusable performance issues, gets used, as we no
  longer want to recommend its use (instead just "repack -d" instead).
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * mt/parallel-checkout-part-1 (2020-12-16) 9 commits
@@ -757,37 +1029,29 @@ Release tarballs are available at:
  + merge-ort: implement detect_regular_renames()
  + merge-ort: add initial outline for basic rename detection
  + merge-ort: add basic data structures for handling renames
- (this branch is used by en/ort-directory-rename.)
+ (this branch is used by en/merge-ort-perf and en/ort-directory-rename.)
 
  Rename detection is added to the "ORT" merge strategy.
 
  Will merge to 'master'.
 
 
-* ps/config-env-pairs (2021-01-06) 8 commits
- - config: allow specifying config entries via envvar pairs
- - environment: make `getenv_safe()` a public function
- - config: parse more robust format in GIT_CONFIG_PARAMETERS
- - config: store "git -c" variables using more robust format
- - config: extract function to parse config pairs
- - quote: make sq_dequote_step() a public function
- - config: add new way to pass config via `--config-env`
- - git: add `--super-prefix` to usage string
+* ps/config-env-pairs (2021-01-15) 8 commits
+  (merged to 'next' on 2021-01-15 at 4ed0341270)
+ + config: allow specifying config entries via envvar pairs
+ + environment: make `getenv_safe()` a public function
+ + config: store "git -c" variables using more robust format
+ + config: parse more robust format in GIT_CONFIG_PARAMETERS
+ + config: extract function to parse config pairs
+ + quote: make sq_dequote_step() a public function
+ + config: add new way to pass config via `--config-env`
+ + git: add `--super-prefix` to usage string
 
  Introduce two new ways to feed configuration variable-value pairs
  via environment variables, and tweak the way GIT_CONFIG_PARAMETERS
  encodes variable/value pairs to make it more robust.
 
- Ready for 'next'?
-
-
-* bc/hashed-mailmap (2020-12-12) 1 commit
- - mailmap: support hashed entries in mailmaps
-
- The mailmap database learned to take hashed value as the original
- side of mapping.
-
- Expecting a reroll.
+ Will merge to 'master'.
 
 
 * so/log-diff-merge (2020-12-21) 32 commits
@@ -826,18 +1090,7 @@ Release tarballs are available at:
 
  "git log" learned a new "--diff-merges=<how>" option.
 
- Rerolled.
-
-
-* bc/rev-parse-path-format (2020-12-12) 2 commits
-  (merged to 'next' on 2021-01-08 at 7d51587b7f)
- + rev-parse: add option for absolute or relative path formatting
- + abspath: add a function to resolve paths with missing components
-
- "git rev-parse" can be explicitly told to give output as absolute
- or relative path.
-
- Will merge to 'master'.
+ Ready for 'next'?
 
 
 * es/config-hooks (2020-12-21) 34 commits
@@ -936,68 +1189,59 @@ Release tarballs are available at:
 
 
 * en/diffcore-rename (2021-01-04) 9 commits
- - diffcore-rename: remove unnecessary duplicate entry checks
- - diffcore-rename: accelerate rename_dst setup
- - diffcore-rename: simplify and accelerate register_rename_src()
- - t4058: explore duplicate tree entry handling in a bit more detail
- - t4058: add more tests and documentation for duplicate tree entry handling
- - diffcore-rename: reduce jumpiness in progress counters
- - diffcore-rename: simplify limit check
- - diffcore-rename: avoid usage of global in too_many_rename_candidates()
- - diffcore-rename: rename num_create to num_destinations
+  (merged to 'next' on 2021-01-12 at fa769ebc35)
+ + diffcore-rename: remove unnecessary duplicate entry checks
+ + diffcore-rename: accelerate rename_dst setup
+ + diffcore-rename: simplify and accelerate register_rename_src()
+ + t4058: explore duplicate tree entry handling in a bit more detail
+ + t4058: add more tests and documentation for duplicate tree entry handling
+ + diffcore-rename: reduce jumpiness in progress counters
+ + diffcore-rename: simplify limit check
+ + diffcore-rename: avoid usage of global in too_many_rename_candidates()
+ + diffcore-rename: rename num_create to num_destinations
+ (this branch is used by en/merge-ort-perf.)
 
  File-level rename detection updates.
 
- Will merge to 'next'.
-
-
-* en/stash-apply-sparse-checkout (2020-12-01) 3 commits
-  (merged to 'next' on 2021-01-08 at cae5b73d99)
- + stash: fix stash application in sparse-checkouts
- + stash: remove unnecessary process forking
- + t7012: add a testcase demonstrating stash apply bugs in sparse checkouts
-
- "git stash" did not work well in a sparsely checked out working
- tree.
-
  Will merge to 'master'.
 
 
 * js/default-branch-name-tests-final-stretch (2020-11-19) 29 commits
- - tests: drop prereq `PREPARE_FOR_MAIN_BRANCH` where no longer needed
- - t99*: adjust the references to the default branch name "main"
- - tests(git-p4): transition to the default branch name `main`
- - t9[5-7]*: adjust the references to the default branch name "main"
- - t9[0-4]*: adjust the references to the default branch name "main"
- - t8*: adjust the references to the default branch name "main"
- - t7[5-9]*: adjust the references to the default branch name "main"
- - t7[0-4]*: adjust the references to the default branch name "main"
- - t6[4-9]*: adjust the references to the default branch name "main"
- - t64*: preemptively adjust alignment to prepare for `master` -> `main`
- - t6[0-3]*: adjust the references to the default branch name "main"
- - t5[6-9]*: adjust the references to the default branch name "main"
- - t55[4-9]*: adjust the references to the default branch name "main"
- - t55[23]*: adjust the references to the default branch name "main"
- - t551*: adjust the references to the default branch name "main"
- - t550*: adjust the references to the default branch name "main"
- - t5503: prepare aligned comment for replacing `master` with `main`
- - t5[0-4]*: adjust the references to the default branch name "main"
- - t5323: prepare centered comment for `master` -> `main`
- - t4*: adjust the references to the default branch name "main"
- - t3[5-9]*: adjust the references to the default branch name "main"
- - t34*: adjust the references to the default branch name "main"
- - t3416: preemptively adjust alignment in a comment
- - t3[0-3]*: adjust the references to the default branch name "main"
- - t2*: adjust the references to the default branch name "main"
- - t[01]*: adjust the references to the default branch name "main"
- - t0060: preemptively adjust alignment
- - tests: mark tests relying on the current default for `init.defaultBranch`
- - Merge 'jk/diff-release-filespec-fix' into js/default-branch-name-tests-final-stretch
+  (merged to 'next' on 2021-01-13 at 0e93f0d529)
+ + tests: drop prereq `PREPARE_FOR_MAIN_BRANCH` where no longer needed
+ + t99*: adjust the references to the default branch name "main"
+ + tests(git-p4): transition to the default branch name `main`
+ + t9[5-7]*: adjust the references to the default branch name "main"
+ + t9[0-4]*: adjust the references to the default branch name "main"
+ + t8*: adjust the references to the default branch name "main"
+ + t7[5-9]*: adjust the references to the default branch name "main"
+ + t7[0-4]*: adjust the references to the default branch name "main"
+ + t6[4-9]*: adjust the references to the default branch name "main"
+ + t64*: preemptively adjust alignment to prepare for `master` -> `main`
+ + t6[0-3]*: adjust the references to the default branch name "main"
+ + t5[6-9]*: adjust the references to the default branch name "main"
+ + t55[4-9]*: adjust the references to the default branch name "main"
+ + t55[23]*: adjust the references to the default branch name "main"
+ + t551*: adjust the references to the default branch name "main"
+ + t550*: adjust the references to the default branch name "main"
+ + t5503: prepare aligned comment for replacing `master` with `main`
+ + t5[0-4]*: adjust the references to the default branch name "main"
+ + t5323: prepare centered comment for `master` -> `main`
+ + t4*: adjust the references to the default branch name "main"
+ + t3[5-9]*: adjust the references to the default branch name "main"
+ + t34*: adjust the references to the default branch name "main"
+ + t3416: preemptively adjust alignment in a comment
+ + t3[0-3]*: adjust the references to the default branch name "main"
+ + t2*: adjust the references to the default branch name "main"
+ + t[01]*: adjust the references to the default branch name "main"
+ + t0060: preemptively adjust alignment
+ + tests: mark tests relying on the current default for `init.defaultBranch`
+ + Merge 'jk/diff-release-filespec-fix' into js/default-branch-name-tests-final-stretch
 
  Prepare tests not to be affected by the name of the default branch
  "git init" creates.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * ds/maintenance-part-4 (2021-01-05) 4 commits
@@ -1015,7 +1259,8 @@ Release tarballs are available at:
 
 
 * sj/untracked-files-in-submodule-directory-is-not-dirty (2020-12-08) 1 commit
- - diff: do not show submodule with untracked files as "-dirty"
+  (merged to 'next' on 2021-01-12 at 2aca21c42e)
+ + diff: do not show submodule with untracked files as "-dirty"
 
  "git diff" showed a submodule working tree with untracked cruft as
  "Submodule commit <objectname>-dirty", but a natural expectation is
@@ -1023,7 +1268,7 @@ Release tarballs are available at:
  which does not consider having untracked files in the working tree
  as source of dirtiness.  The inconsistency has been fixed.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 --------------------------------------------------
 [Discarded]
@@ -1034,3 +1279,13 @@ Release tarballs are available at:
  It turns out that the original "problem" that inspired the feature
  was working as designed.
  cf. <CAPQE4+rhWT9kgusNXOw5cnJ-oFq++4G1FMaXvQ3wppQ0GE0hSA@mail.gmail.com>
+
+
+* bc/hashed-mailmap (2020-12-12) 1 commit
+ . mailmap: support hashed entries in mailmaps
+
+ The mailmap database learned to take hashed value as the original
+ side of mapping.
+
+ Retracted for now.
+ cf. <X/uvhc5Hpu792qA/@camp.crustytoothpaste.net>