]> git.ipfire.org Git - thirdparty/git.git/commitdiff
What's cooking (2020/08 #03)
authorJunio C Hamano <gitster@pobox.com>
Thu, 13 Aug 2020 22:01:21 +0000 (15:01 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 13 Aug 2020 22:01:21 +0000 (15:01 -0700)
whats-cooking.txt

index 2073a9d39b14bc7387c7e46b5101788c51475419..e551af7859d45abc218666658ad369121ccb1603 100644 (file)
@@ -1,10 +1,10 @@
 To: git@vger.kernel.org
 Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Aug 2020, #02; Mon, 10)
-X-master-at: 4f0a8be78499454eac3985b6e7e144b8376ab0a5
-X-next-at: 1739fa56f16d224373590068a68d990fb82ab9d0
+Subject: What's cooking in git.git (Aug 2020, #03; Thu, 13)
+X-master-at: 878e727637ec5815ccb3301eb994a54df95b21b8
+X-next-at: 1956fa8f8d7168157346f0cbc0f1f9dd1fca787a
 
-What's cooking in git.git (Aug 2020, #02; Mon, 10)
+What's cooking in git.git (Aug 2020, #03; Thu, 13)
 --------------------------------------------------
 
 Here are the topics that have been cooking.  Commits prefixed with '-' are
@@ -12,6 +12,13 @@ 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.
 
+We are at 7th batch.  I'm trying to merge smaller batches of topics
+to the 'master' branch more often than the previous cycles.  I will
+also experiment, for smaller topics, with shorter gestation period
+in 'next' before merging them to the 'master' branch.  We'll see if
+this lowers stability of the tip of 'master' significantly; not that
+much, hopefully.
+
 You can find the changes described here in the integration branches of the
 repositories listed at
 
@@ -20,293 +27,334 @@ repositories listed at
 --------------------------------------------------
 [Graduated to 'master']
 
-* en/eol-attrs-gotchas (2020-08-03) 4 commits
-  (merged to 'next' on 2020-08-05 at 46e73f4c94)
- + checkout: support renormalization with checkout -m <paths>
- + merge: make merge.renormalize work for all uses of merge machinery
- + t6038: remove problematic test
- + t6038: make tests fail for the right reason
+* bc/sha-256-cvs-svn-updates (2020-08-05) 1 commit
+  (merged to 'next' on 2020-08-07 at b1ce7e5ec5)
+ + git-cvsexportcommit: support Perl before 5.10.1
 
- All "mergy" operations that internally use the merge-recursive
- machinery should honor the merge.renormalize configuration, but
- many of them didn't.
+ Portability fix.
 
 
-* en/merge-recursive-comment-fixes (2020-08-02) 1 commit
-  (merged to 'next' on 2020-08-04 at ec14b8ea94)
- + merge-recursive: fix unclear and outright wrong comments
+* bc/sha-256-part-3 (2020-07-30) 39 commits
+  (merged to 'next' on 2020-08-04 at 57115e548f)
+ + t: remove test_oid_init in tests
+ + docs: add documentation for extensions.objectFormat
+ + ci: run tests with SHA-256
+ + t: make SHA1 prerequisite depend on default hash
+ + t: allow testing different hash algorithms via environment
+ + t: add test_oid option to select hash algorithm
+ + repository: enable SHA-256 support by default
+ + setup: add support for reading extensions.objectformat
+ + bundle: add new version for use with SHA-256
+ + builtin/verify-pack: implement an --object-format option
+ + http-fetch: set up git directory before parsing pack hashes
+ + t0410: mark test with SHA1 prerequisite
+ + t5308: make test work with SHA-256
+ + t9700: make hash size independent
+ + t9500: ensure that algorithm info is preserved in config
+ + t9350: make hash size independent
+ + t9301: make hash size independent
+ + t9300: use $ZERO_OID instead of hard-coded object ID
+ + t9300: abstract away SHA-1-specific constants
+ + t8011: make hash size independent
+ + t8003: make hash size independent
+ + t8002: make hash size independent
+ + t7508: use $ZERO_OID instead of hard-coded constant
+ + t7506: avoid checking for SHA-1-specific constants
+ + t7405: make hash size independent
+ + t7400: make hash size independent
+ + t7102: abstract away SHA-1-specific constants
+ + t7201: abstract away SHA-1-specific constants
+ + t7063: make hash size independent
+ + t7003: compute appropriate length constant
+ + t6501: avoid hard-coded objects
+ + t6500: specify test values for SHA-256
+ + t6301: make hash size independent
+ + t6101: make hash size independent
+ + t6100: make hash size independent
+ + t3404: prepare 'short SHA-1 collision' tests for SHA-256
+ + t3305: make hash agnostic
+ + t1001: use $ZERO_OID
+ + t: make test-bloom initialize repository
 
Comment fix.
The final leg of SHA-256 transition.
 
 
-* es/adjust-subtree-test-for-merge-msg-update (2020-08-03) 1 commit
-  (merged to 'next' on 2020-08-04 at 634b1fcbac)
- + Revert "contrib: subtree: adjust test to change in fmt-merge-msg"
+* es/worktree-doc-cleanups (2020-08-03) 5 commits
+  (merged to 'next' on 2020-08-04 at cbb53ca464)
+ + git-worktree.txt: link to man pages when citing other Git commands
+ + git-worktree.txt: make start of new sentence more obvious
+ + git-worktree.txt: fix minor grammatical issues
+ + git-worktree.txt: consistently use term "working tree"
+ + git-worktree.txt: employ fixed-width typeface consistently
 
Adjust tests in contrib/ to the recent change to fmt-merge-msg.
Doc cleanup around "worktree".
 
 
-* es/worktree-cleanup (2020-07-31) 4 commits
-  (merged to 'next' on 2020-08-04 at 798f642f66)
- + worktree: retire special-case normalization of main worktree path
- + worktree: drop bogus and unnecessary path munging
- + worktree: drop unused code from get_linked_worktree()
- + worktree: drop pointless strbuf_release()
+* jt/has_object (2020-08-06) 4 commits
+  (merged to 'next' on 2020-08-07 at ed08abb693)
+ + fsck: do not lazy fetch known non-promisor object
+ + pack-objects: no fetch when allow-{any,promisor}
+ + apply: do not lazy fetch when applying binary
+ + sha1-file: introduce no-lazy-fetch has_object()
 
- Code cleanup around "worktree" API implementation.
+ A new helper function has_object() has been introduced to make it
+ easier to mark object existence checks that do and don't want to
+ trigger lazy fetches, and a few such checks are converted using it.
 
 
-* jk/compiler-fixes-and-workarounds (2020-08-04) 3 commits
-  (merged to 'next' on 2020-08-04 at a1caf8edbc)
- + revision: avoid leak when preparing bloom filter for "/"
- + revision: avoid out-of-bounds read/write on empty pathspec
- + config: work around gcc-10 -Wstringop-overflow warning
+* ma/test-quote-cleanup (2020-08-06) 2 commits
+  (merged to 'next' on 2020-08-10 at 63a95c2926)
+ + t4104: modernize and simplify quoting
+ + t: don't spuriously close and reopen quotes
 
Small fixes and workarounds.
Test cleanup.
 
 
-* jk/strvec (2020-07-30) 11 commits
-  (merged to 'next' on 2020-08-04 at 61addb841f)
- + strvec: rename struct fields
- + strvec: drop argv_array compatibility layer
- + strvec: update documention to avoid argv_array
- + strvec: fix indentation in renamed calls
- + strvec: convert remaining callers away from argv_array name
- + strvec: convert more callers away from argv_array name
- + strvec: convert builtin/ callers away from argv_array name
- + quote: rename sq_dequote_to_argv_array to mention strvec
- + strvec: rename files from argv-array to strvec
- + argv-array: rename to strvec
- + argv-array: use size_t for count and alloc
- (this branch is used by ds/maintenance and ds/maintenance-part-2.)
+* rp/blame-first-parent-doc (2020-08-06) 1 commit
+  (merged to 'next' on 2020-08-10 at 3fdbebe1ea)
+ + blame-options.txt: document --first-parent option
 
- The argv_array API is useful for not just managing argv but any
- "vector" (NULL-terminated array) of strings, and has seen adoption
- to a certain degree.  It has been renamed to "strvec" to reduce the
- barrier to adoption.
+ The "git blame --first-parent" option was not documented, but now
+ it is.
 
 
-* jt/pack-objects-prefetch-in-batch (2020-07-21) 2 commits
-  (merged to 'next' on 2020-08-03 at 29424e614d)
- + pack-objects: prefetch objects to be packed
- + pack-objects: refactor to oid_object_info_extended
+* ss/cmake-build (2020-06-26) 8 commits
+  (merged to 'next' on 2020-08-03 at a0d70165c1)
+ + ci: modification of main.yml to use cmake for vs-build job
+ + cmake: support for building git on windows with msvc and clang.
+ + cmake: support for building git on windows with mingw
+ + cmake: support for testing git when building out of the source tree
+ + cmake: support for testing git with ctest
+ + cmake: installation support for git
+ + cmake: generate the shell/perl/python scripts and templates, translations
+ + Introduce CMake support for configuring Git
 
  Originally merged to 'next' on 2020-08-01
 
- While packing many objects in a repository with a promissor remote,
- lazily fetching missing objects from the promissor remote one by
- one may be inefficient---the code now attempts to fetch all the
- missing objects in batch (obviously this won't work for a lazy
- clone that lazily fetches tree objects as you cannot even enumerate
- what blobs are missing until you learn which trees are missing).
-
-
-* jt/pretend-object-never-come-from-elsewhere (2020-07-21) 1 commit
-  (merged to 'next' on 2020-08-03 at 36cd23aae5)
- + sha1-file: make pretend_object_file() not prefetch
-
- Originally merged to 'next' on 2020-08-01
+ CMake support to build with MSVC for Windows bypassing the Makefile.
 
- The pretend-object mechanism checks if the given object already
- exists in the object store before deciding to keep the data
- in-core, but the check would have triggered lazy fetching of such
- an object from a promissor remote.
 
+* tb/upload-pack-filters (2020-08-05) 4 commits
+  (merged to 'next' on 2020-08-05 at 918e7092fe)
+ + t5616: use test_i18ngrep for upload-pack errors
+  (merged to 'next' on 2020-08-04 at 3ae57cc90c)
+ + upload-pack.c: introduce 'uploadpackfilter.tree.maxDepth'
+ + upload-pack.c: allow banning certain object filter(s)
+ + list_objects_filter_options: introduce 'list_object_filter_config_name'
 
-* ma/t1450-quotefix (2020-08-01) 1 commit
-  (merged to 'next' on 2020-08-04 at 0e762e3553)
- + t1450: fix quoting of NUL byte when corrupting pack
+ The component to respond to "git fetch" request is made more
+ configurable to selectively allow or reject object filtering
+ specification used for partial cloning.
+ cf. <20200804003722.GA2726931@coredump.intra.peff.net>
 
- Test fix.
+--------------------------------------------------
+[New Topics]
 
+* en/merge-tests (2020-08-10) 11 commits
+  (merged to 'next' on 2020-08-13 at eab952350b)
+ + t6425: be more flexible with rename/delete conflict messages
+ + t642[23]: be more flexible for add/add conflicts involving pair renames
+ + t6422, t6426: be more flexible for add/add conflicts involving renames
+ + t6423: add an explanation about why one of the tests does not pass
+ + t6416, t6423: clarify some comments and fix some typos
+ + t6422: fix multiple errors with the mod6 test expectations
+ + t6423: fix test setup for a couple tests
+ + t6416, t6422: fix incorrect untracked file count
+ + t6422: fix bad check against missing file
+ + t6418: tighten delete/normalize conflict testcase
+ + Collect merge-related tests to t64xx
+
+ Updates to "git merge" tests, in preparation for a new merge
+ strategy backend.
 
-* mp/complete-show-color-moved (2020-07-15) 1 commit
-  (merged to 'next' on 2020-08-03 at c90fea8e5e)
- + completion: add show --color-moved[-ws]
+ Will merge to 'master'.
 
- Originally merged to 'next' on 2020-08-01
 
- Command line completion (in contrib/) update.
- A follow-up patch to reduce duplication may be warranted.
+* ma/stop-progress-null-fix (2020-08-10) 1 commit
+  (merged to 'next' on 2020-08-13 at 8bdec5209f)
+ + progress: don't dereference before checking for NULL
 
+ NULL dereference fix.
 
-* ny/notes-doc-sample-update (2020-08-03) 1 commit
-  (merged to 'next' on 2020-08-04 at a63dcb2c55)
- + docs: improve the example that illustrates git-notes path names
+ Will merge to 'master'.
 
- Doc updates.
 
+* ds/midx-repack-to-batch-size (2020-08-11) 1 commit
+ - multi-pack-index: repack batches below --batch-size
 
-* pb/guide-docs (2020-08-04) 4 commits
-  (merged to 'next' on 2020-08-05 at 031cab2bc2)
- + git.txt: add list of guides
- + Documentation: don't hardcode command categories twice
- + help: drop usage of 'common' and 'useful' for guides
- + command-list.txt: add missing 'gitcredentials' and 'gitremote-helpers'
+ The "--batch-size" option of "git multi-pack-index repack" command
+ is now used to specify that very small packfiles are collected into
+ one until the total size roughly exceeds it.
 
Update "git help guides" documentation organization.
Will merge to 'next'.
 
 
-* rs/bisect-oid-to-hex-fix (2020-08-02) 1 commit
-  (merged to 'next' on 2020-08-04 at dc3c8ea699)
- + bisect: use oid_to_hex_r() instead of memcpy()+oid_to_hex()
+* rs/upload-pack-sigchain-fix (2020-08-11) 1 commit
+ - upload-pack: remove superfluous sigchain_pop() call
 
- Code cleanup.
+ Code clean-up.
 
+ Will merge to 'next'.
 
-* so/rev-parser-errormessage-fix (2020-08-04) 1 commit
-  (merged to 'next' on 2020-08-05 at dd9653da77)
- + revision: fix die() message for "--unpacked="
 
- Error message fix.
+* so/log-diff-merges-opt (2020-08-11) 3 commits
+  (merged to 'next' on 2020-08-11 at 99e070bdca)
+ + t/t4013: add test for --diff-merges=off
+ + doc/git-log: describe --diff-merges=off
+ + revision: change "--diff-merges" option to require parameter
+ (this branch uses jk/log-fp-implies-m.)
+
+ Earlier, to countermand the implicit "-m" option when the
+ "--first-parent" option is used with "git log", we added the
+ "--[no-]diff-merges" option in the jk/log-fp-implies-m topic.  To
+ leave the door open to allow the "--diff-merges" option to take
+ values that instructs how patches for merge commits should be
+ computed (e.g. "cc"? "-p against first parent?"), redefine
+ "--diff-merges" to take non-optional value, and implement "off"
+ that means the same thing as "--no-diff-merges".
+
+ Will merge to 'master' together with 'jk/lo-implies-m'.
+
+
+* tb/bloom-improvements (2020-08-11) 14 commits
+ - builtin/commit-graph.c: introduce '--max-new-filters=<n>'
+ - commit-graph: rename 'split_commit_graph_opts'
+ - commit-graph: add large-filters bitmap chunk
+ - commit-graph.c: sort index into commits list
+ - bloom/diff: properly short-circuit on max_changes
+ - bloom: use provided 'struct bloom_filter_settings'
+ - csum-file.h: introduce 'hashwrite_be64()'
+ - bloom: split 'get_bloom_filter()' in two
+ - commit-graph.c: store maximum changed paths
+ - commit-graph: respect 'commitGraph.readChangedPaths'
+ - t/helper/test-read-graph.c: prepare repo settings
+ - commit-graph: pass a 'struct repository *' in more places
+ - t4216: use an '&&'-chain
+ - commit-graph: introduce 'get_bloom_filter_settings()'
+
+ Misc Bloom filter improvements.
 
---------------------------------------------------
-[New Topics]
+ Expecting a reroll.
+ It seems that the review is getting closer to result in another update.
+ cf. <20200811220503.GC66656@syl.lan>
 
-* bc/sha-256-cvs-svn-updates (2020-08-05) 1 commit
-  (merged to 'next' on 2020-08-07 at b1ce7e5ec5)
- + git-cvsexportcommit: support Perl before 5.10.1
 
- Portability fix.
+* ak/sequencer-fix-find-uniq-abbrev (2020-08-13) 1 commit
+ - rebase -i: fix possibly wrong onto hash in todo
 
- Will merge to 'master'.
+ Ring buffer with size 4 used for bin-hex translation resulted in a
+ wrong object name in the sequencer's todo output, which has been
+ corrected.
 
+ Will merge to 'next'.
 
-* ds/maintenance-part-2 (2020-08-06) 9 commits
- - maintenance: add incremental-repack auto condition
- - maintenance: auto-size incremental-repack batch
- - maintenance: add incremental-repack task
- - midx: use start_delayed_progress()
- - midx: enable core.multiPackIndex by default
- - maintenance: create auto condition for loose-objects
- - maintenance: add loose-objects task
- - maintenance: add prefetch task
- - fetch: optionally allow disabling FETCH_HEAD update
- (this branch uses ds/maintenance.)
 
+* en/dir-nonbare-embedded (2020-08-12) 2 commits
+ - dir: avoid prematurely marking nonbare repositories as matches
+ - t3000: fix some test description typos
 
-* jt/has_object (2020-08-06) 4 commits
-  (merged to 'next' on 2020-08-07 at ed08abb693)
- + fsck: do not lazy fetch known non-promisor object
- + pack-objects: no fetch when allow-{any,promisor}
- + apply: do not lazy fetch when applying binary
- + sha1-file: introduce no-lazy-fetch has_object()
+ "ls-files -o" mishandled the top-level directory of another git
+ working tree that hangs in the current git working tree.
 
- A new helper function has_object() has been introduced to make it
- easier to mark object existence checks that do and don't want to
- trigger lazy fetches, and a few such checks are converted using it.
+ Will merge to 'next'.
 
- Will merge to 'master'.
 
+* en/sequencer-merge-labels (2020-08-12) 1 commit
+ - sequencer: avoid garbled merge machinery messages due to commit labels
 
-* ma/doc-sha-256-is-experimental (2020-08-06) 1 commit
- - Documentation: mark `--object-format=sha256` as experimental
+ The commit labels used to explain each side of conflicted hunks
+ placed by the sequencer machinery have been made more readable by
+ humans.
 
- The recent addition of SHA-256 support is marked as experimental in
- the documentation.
+ Will merge to 'next'.
 
 
-* ma/test-quote-cleanup (2020-08-06) 2 commits
-  (merged to 'next' on 2020-08-10 at 63a95c2926)
- + t4104: modernize and simplify quoting
- + t: don't spuriously close and reopen quotes
+* jb/commit-graph-doc-fix (2020-08-13) 1 commit
+ - docs: commit-graph: fix some whitespace in the diagram
 
Test cleanup.
Docfix.
 
- Will merge to 'master'.
+ Will merge to 'next'.
 
 
-* rp/apply-cached-with-i-t-a (2020-08-09) 3 commits
- - t4140: test apply with i-t-a paths
- - apply: make i-t-a entries never match worktree
- - apply: allow "new file" patches on i-t-a entries
+* jk/blame-coalesce-fix (2020-08-13) 3 commits
+ - blame: only coalesce lines that are adjacent in result
+ - t8003: factor setup out of coalesce test
+ - t8003: check output of coalesced blame
 
- Recent versions of "git diff-files" shows a diff between the index
- and the working tree for "intent-to-add" paths as a "new file"
- patch; "git apply --cached" should be able to take "git diff-files"
- and should act as an equivalent to "git add" for the path, but the
- command failed to do so for such a path.
+ When given more than one target line ranges, "git blame -La,b
+ -Lc,d" was over-eager to coalesce groups of original lines and
+ showed incorrect results, which has been corrected.
 
  Will merge to 'next'.
 
 
-* rp/blame-first-parent-doc (2020-08-06) 1 commit
-  (merged to 'next' on 2020-08-10 at 3fdbebe1ea)
- + blame-options.txt: document --first-parent option
+* jk/slimmed-down (2020-08-13) 5 commits
+ - drop vcs-svn experiment
+ - make git-fast-import a builtin
+ - make git-bugreport a builtin
+ - make credential helpers builtins
+ - Makefile: drop builtins from MSVC pdb list
 
- The "git blame --first-parent" option was not documented, but now
- it is.
+ Trim an unused binary and turn a bunch of commands into built-in.
 
Will merge to 'master'.
In general this is a good thing to do, modulo 'bugreport'.
 
 
-* jc/noop-withstatic-inline (2020-08-06) 1 commit
- - compat-util: type-check parameters of no-op replacement functions
+* jk/unleak-fixes (2020-08-13) 2 commits
+ - ls-remote: simplify UNLEAK() usage
+ - stop calling UNLEAK() before die()
 
- A no-op replacement function implemented as a C preprocessor macro
- does not perform as good a job as one implemented as a "static
- inline" function in catching errors in parameters; replace the
- former with the latter in <git-compat-util.h> header.
+ Fix some incorrect UNLEAK() annotations.
 
-
-* ps/ref-transaction-hook (2020-08-07) 1 commit
-  (merged to 'next' on 2020-08-10 at d8ad7cc8f6)
- + refs: fix interleaving hook calls with reference-transaction hook
-
- The logic to find the ref transaction hook script attempted to
- cache the path to the found hook without realizing that it needed
- to keep a copied value, as the API it used returned a transitory
- buffer space.  This has been corrected.
-
- Will merge to 'master'.
- to be followed by a removal of the caching feature, which does not
- seem to help even as a negative cache.
+ Will merge to 'next'.
 
 
-* ss/submodule-summary-in-c (2020-08-06) 5 commits
- - submodule: port submodule subcommand 'summary' from shell to C
- - t7421: introduce a test script for verifying 'summary' output
- - submodule: rename helper functions to avoid ambiguity
- - submodule: remove extra line feeds between callback struct and macro
- - submodule: expose the '--for-status' option of summary
+* pb/set-url-docfix (2020-08-13) 1 commit
+ - fetch, pull doc: correct description of '--set-upstream'
 
Yet another subcommand of "git submodule" is getting rewritten in C.
Doc fix.
 
+ Will merge to 'next'.
 
-* am/ci-wsfix (2020-08-10) 1 commit
- - ci: fix inconsistent indentation
 
+* pb/userdiff-fortran-update (2020-08-13) 2 commits
+ - userdiff: improve Fortran xfuncname regex
+ - userdiff: add tests for Fortran xfuncname regex
 
-* es/init-no-separate-git-dir-in-bare (2020-08-10) 1 commit
- - init: disallow --separate-git-dir with bare repository
+ The regexp to identify the function boundary for FORTRAN programs
+ has been updated.
 
- "git init --separate-git-dir" can be used in an existing repository
- with a working tree to move its .git/ directory away from the
- working tree.  Even though this re-init feature makes no sense in
- an existing bare repository, it was not erroring out.  Now it does.
+ Will merge to 'next'.
 
 
-* es/test-cmp-typocatcher (2020-08-09) 1 commit
- - test_cmp: diagnose incorrect arguments
+* rs/fast-export-anon-simplify (2020-08-13) 1 commit
+ - fast-export: factor out print_oid()
 
Test framework update.
Code simplification.
 
  Will merge to 'next'.
 
 
-* jk/sideband-error-l10n (2020-08-07) 1 commit
- - sideband: mark "remote error:" prefix for translation
+* rs/preserve-merges-unused-code-removal (2020-08-12) 1 commit
+ - rebase: remove unused function reschedule_last_action
 
Mark error message for i18n.
Code clean-up.
 
  Will merge to 'next'.
 
 
-* rp/ita-diff-modefix (2020-08-09) 1 commit
- - diff-lib: use worktree mode in diffs from i-t-a entries
+* ss/t7401-modernize (2020-08-12) 4 commits
+ - t7401: add a NEEDSWORK
+ - t7401: change indentation for enhanced readability
+ - t7401: change test_i18ncmp syntax for clarity
+ - t7401: modernize style
 
- "git diff [<tree-ish>] $path" for a $path that is marked with i-t-a
- bit was not showing the mode bits from the working tree.
+ Test clean-up.
+
+ Expecting a reroll.
+ cf. <c70f7bb5d1289f5318da7b99e41cf5828a451174.camel@gmail.com>
+ Almost there, it seems.
 
 --------------------------------------------------
 [Stalled]
@@ -434,17 +482,137 @@ repositories listed at
 --------------------------------------------------
 [Cooking]
 
-* es/worktree-doc-cleanups (2020-08-03) 5 commits
-  (merged to 'next' on 2020-08-04 at cbb53ca464)
- + git-worktree.txt: link to man pages when citing other Git commands
- + git-worktree.txt: make start of new sentence more obvious
- + git-worktree.txt: fix minor grammatical issues
- + git-worktree.txt: consistently use term "working tree"
- + git-worktree.txt: employ fixed-width typeface consistently
+* ds/maintenance-part-2 (2020-08-06) 9 commits
+ - maintenance: add incremental-repack auto condition
+ - maintenance: auto-size incremental-repack batch
+ - maintenance: add incremental-repack task
+ - midx: use start_delayed_progress()
+ - midx: enable core.multiPackIndex by default
+ - maintenance: create auto condition for loose-objects
+ - maintenance: add loose-objects task
+ - maintenance: add prefetch task
+ - fetch: optionally allow disabling FETCH_HEAD update
+ (this branch uses ds/maintenance.)
 
- Doc cleanup around "worktree".
+ "git maintenance", an extended big brother of "git gc", continues
+ to evolve.
+
+ Under review.
+ A "review club" reviews have been posted for an early few steps.
+
+
+* ma/doc-sha-256-is-experimental (2020-08-06) 1 commit
+ - Documentation: mark `--object-format=sha256` as experimental
+
+ The recent addition of SHA-256 support is marked as experimental in
+ the documentation.
+
+ Will merge to 'next'.
+ cf. <xmqqmu2y1e0t.fsf@gitster.c.googlers.com>
+
+
+* rp/apply-cached-with-i-t-a (2020-08-09) 3 commits
+  (merged to 'next' on 2020-08-11 at c28eaa6a0e)
+ + t4140: test apply with i-t-a paths
+ + apply: make i-t-a entries never match worktree
+ + apply: allow "new file" patches on i-t-a entries
+
+ Recent versions of "git diff-files" shows a diff between the index
+ and the working tree for "intent-to-add" paths as a "new file"
+ patch; "git apply --cached" should be able to take "git diff-files"
+ and should act as an equivalent to "git add" for the path, but the
+ command failed to do so for such a path.
+
+ Will merge to 'master'.
+
+
+* jc/noop-with-static-inline (2020-08-06) 1 commit
+  (merged to 'next' on 2020-08-11 at 8a63ff648e)
+ + compat-util: type-check parameters of no-op replacement functions
+
+ A no-op replacement function implemented as a C preprocessor macro
+ does not perform as good a job as one implemented as a "static
+ inline" function in catching errors in parameters; replace the
+ former with the latter in <git-compat-util.h> header.
+
+ Will merge to 'master'.
+
+
+* ps/ref-transaction-hook (2020-08-11) 2 commits
+  (merged to 'next' on 2020-08-11 at 311c045810)
+ + t1416: avoid hard-coded sha1 ids
+  (merged to 'next' on 2020-08-10 at d8ad7cc8f6)
+ + refs: fix interleaving hook calls with reference-transaction hook
+
+ The logic to find the ref transaction hook script attempted to
+ cache the path to the found hook without realizing that it needed
+ to keep a copied value, as the API it used returned a transitory
+ buffer space.  This has been corrected.
 
  Will merge to 'master'.
+ to be followed by a removal of the caching feature, which does not
+ seem to help even as a negative cache.
+
+
+* ss/submodule-summary-in-c (2020-08-12) 4 commits
+ - submodule: port submodule subcommand 'summary' from shell to C
+ - t7421: introduce a test script for verifying 'summary' output
+ - submodule: rename helper functions to avoid ambiguity
+ - submodule: remove extra line feeds between callback struct and macro
+
+ Yet another subcommand of "git submodule" is getting rewritten in C.
+
+ Will merge to 'next'.
+
+
+* am/ci-wsfix (2020-08-10) 1 commit
+ - ci: fix inconsistent indentation
+
+ Aesthetic fix to a CI configuration file.
+
+ Waiting for a reroll.
+ It needs a better log message.
+
+
+* es/init-no-separate-git-dir-in-bare (2020-08-10) 1 commit
+ - init: disallow --separate-git-dir with bare repository
+
+ The purpose of "git init --separate-git-dir" is to initialize a
+ new project with the repository separate from the working tree,
+ or, in the case of an existing project, to move the repository
+ (the .git/ directory) out of the working tree. It does not make
+ sense to use --separate-git-dir with a bare repository for which
+ there is no working tree, so disallow its use with bare
+ repositories.
+
+ Will merge to 'next'.
+
+
+* es/test-cmp-typocatcher (2020-08-09) 1 commit
+  (merged to 'next' on 2020-08-11 at ee5557b170)
+ + test_cmp: diagnose incorrect arguments
+
+ Test framework update.
+
+ Will merge to 'master'.
+
+
+* jk/sideband-error-l10n (2020-08-07) 1 commit
+  (merged to 'next' on 2020-08-11 at 27dbe05a65)
+ + sideband: mark "remote error:" prefix for translation
+
+ Mark error message for i18n.
+
+ Will merge to 'master'.
+
+
+* rp/ita-diff-modefix (2020-08-09) 1 commit
+ - diff-lib: use worktree mode in diffs from i-t-a entries
+
+ "git diff [<tree-ish>] $path" for a $path that is marked with i-t-a
+ bit was not showing the mode bits from the working tree.
+
+ Will merge to 'next'.
 
 
 * jk/log-fp-implies-m (2020-07-29) 7 commits
@@ -456,6 +624,7 @@ repositories listed at
  + log: enable "-m" automatically with "--first-parent"
  + revision: add "--no-diff-merges" option to counteract "-m"
  + log: drop "--cc implies -m" logic
+ (this branch is used by so/log-diff-merges-opt.)
 
  Originally merged to 'next' on 2020-08-01
 
@@ -464,97 +633,53 @@ repositories listed at
  been made to imply "-m".  Use "--no-diff-merges" to restore the
  previous behaviour to omit patches for merge commits.
 
- On hold a bit.
- cf. <20200804200018.GB2014743@coredump.intra.peff.net>
+ Will merge to 'master' together with 'so/log-diff-merges-opt'
 
 
 * pd/mergetool-nvimdiff (2020-07-29) 2 commits
- - mergetools: add support for nvimdiff (neovim) family
- - mergetool--lib: improve support for vimdiff-style tool variants
+  (merged to 'next' on 2020-08-11 at 947ce686d0)
+ + mergetools: add support for nvimdiff (neovim) family
+ + mergetool--lib: improve support for vimdiff-style tool variants
 
  The existing backends for "git mergetool" based on variants of vim
  have been refactored and then support for "nvim" has been added.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * al/bisect-first-parent (2020-08-07) 5 commits
- - bisect: combine args passed to find_bisection()
- - bisect: introduce first-parent flag
- - cmd_bisect__helper: defer parsing no-checkout flag
- - rev-list: allow bisect and first-parent flags
- - t6030: modernize "git bisect run" tests
+  (merged to 'next' on 2020-08-11 at b232f7ca17)
+ + bisect: combine args passed to find_bisection()
+ + bisect: introduce first-parent flag
+ + cmd_bisect__helper: defer parsing no-checkout flag
+ + rev-list: allow bisect and first-parent flags
+ + t6030: modernize "git bisect run" tests
 
  "git bisect" learns the "--first-parent" option to find the first
  breakage along the first-parent chain.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * dd/send-email-config (2020-07-23) 1 commit
- - git-send-email: die if sendmail.* config is set
+  (merged to 'next' on 2020-08-11 at aaf9f3a301)
+ + git-send-email: die if sendmail.* config is set
 
  Stop when "sendmail.*" configuration variables are defined, which
  could be a mistaken attempt to define "sendemail.*" variables.
 
- Will merge to 'next'.
-
-
-* bc/sha-256-part-3 (2020-07-30) 39 commits
-  (merged to 'next' on 2020-08-04 at 57115e548f)
- + t: remove test_oid_init in tests
- + docs: add documentation for extensions.objectFormat
- + ci: run tests with SHA-256
- + t: make SHA1 prerequisite depend on default hash
- + t: allow testing different hash algorithms via environment
- + t: add test_oid option to select hash algorithm
- + repository: enable SHA-256 support by default
- + setup: add support for reading extensions.objectformat
- + bundle: add new version for use with SHA-256
- + builtin/verify-pack: implement an --object-format option
- + http-fetch: set up git directory before parsing pack hashes
- + t0410: mark test with SHA1 prerequisite
- + t5308: make test work with SHA-256
- + t9700: make hash size independent
- + t9500: ensure that algorithm info is preserved in config
- + t9350: make hash size independent
- + t9301: make hash size independent
- + t9300: use $ZERO_OID instead of hard-coded object ID
- + t9300: abstract away SHA-1-specific constants
- + t8011: make hash size independent
- + t8003: make hash size independent
- + t8002: make hash size independent
- + t7508: use $ZERO_OID instead of hard-coded constant
- + t7506: avoid checking for SHA-1-specific constants
- + t7405: make hash size independent
- + t7400: make hash size independent
- + t7102: abstract away SHA-1-specific constants
- + t7201: abstract away SHA-1-specific constants
- + t7063: make hash size independent
- + t7003: compute appropriate length constant
- + t6501: avoid hard-coded objects
- + t6500: specify test values for SHA-256
- + t6301: make hash size independent
- + t6101: make hash size independent
- + t6100: make hash size independent
- + t3404: prepare 'short SHA-1 collision' tests for SHA-256
- + t3305: make hash agnostic
- + t1001: use $ZERO_OID
- + t: make test-bloom initialize repository
-
- The final leg of SHA-256 transition.
-
  Will merge to 'master'.
 
 
 * hn/reftable-prep-part-2 (2020-07-27) 3 commits
- - Make HEAD a PSEUDOREF rather than PER_WORKTREE.
- - Modify pseudo refs through ref backend storage
- - t1400: use git rev-parse for testing PSEUDOREF existence
+  (merged to 'next' on 2020-08-11 at 43ac0bc60a)
+ + Make HEAD a PSEUDOREF rather than PER_WORKTREE.
+ + Modify pseudo refs through ref backend storage
+ + t1400: use git rev-parse for testing PSEUDOREF existence
 
  Further preliminary change to refs API.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * ds/maintenance (2020-08-06) 11 commits
@@ -576,22 +701,6 @@ repositories listed at
  cleaning.
 
 
-* tb/upload-pack-filters (2020-08-05) 4 commits
-  (merged to 'next' on 2020-08-05 at 918e7092fe)
- + t5616: use test_i18ngrep for upload-pack errors
-  (merged to 'next' on 2020-08-04 at 3ae57cc90c)
- + upload-pack.c: introduce 'uploadpackfilter.tree.maxDepth'
- + upload-pack.c: allow banning certain object filter(s)
- + list_objects_filter_options: introduce 'list_object_filter_config_name'
-
- The component to respond to "git fetch" request is made more
- configurable to selectively allow or reject object filtering
- specification used for partial cloning.
-
- Will merge to 'master'.
- cf. <20200804003722.GA2726931@coredump.intra.peff.net>
-
-
 * mt/hash-to-hex-thread-safety (2020-06-26) 2 commits
  - hex: make hash_to_hex_algop() and friends thread-safe
  - compat/win32/pthread: add pthread_once()
@@ -604,24 +713,6 @@ repositories listed at
  cf. <CAHd-oW6A2aBHg80R9kyifvF7thwzam5EYYoN9d2TaBcHJrcKWw@mail.gmail.com>
 
 
-* ss/cmake-build (2020-06-26) 8 commits
-  (merged to 'next' on 2020-08-03 at a0d70165c1)
- + ci: modification of main.yml to use cmake for vs-build job
- + cmake: support for building git on windows with msvc and clang.
- + cmake: support for building git on windows with mingw
- + cmake: support for testing git when building out of the source tree
- + cmake: support for testing git with ctest
- + cmake: installation support for git
- + cmake: generate the shell/perl/python scripts and templates, translations
- + Introduce CMake support for configuring Git
-
- Originally merged to 'next' on 2020-08-01
-
- CMake support to build with MSVC for Windows bypassing the Makefile.
-
- Will merge to 'master'.
-
-
 * es/config-hooks (2020-07-30) 6 commits
  - hook: add 'run' subcommand
  - parse-options: parse into argv_array
@@ -637,36 +728,3 @@ repositories listed at
  on top of it.  Are there unresolved issues, or does the topic need
  a round of detailed review?
  cf. <xmqqmu3i9kvg.fsf@gitster.c.googlers.com>
-
---------------------------------------------------
-[Discarded]
-
-* jk/fast-export-anonym (2020-06-22) 4 commits
-  (merged to 'next' on 2020-06-22 at b517b2f707)
- + fast-export: allow dumping the path mapping
- + fast-export: refactor path printing to not rely on stdout
- + fast-export: anonymize "master" refname
- + fast-export: allow dumping the refname mapping
-
- The way refnames are anonymized has been updated and a way to help
- debugging using the anonymized output hsa been added.
-
- Superseded by 'jk/fast-export-anonym-alt'.
-
-
-* jk/t6000-timestamp-fix (2020-07-07) 1 commit
-  (merged to 'next' on 2020-07-09 at 633bcd552f)
- + t6000: use test_tick consistently
-
- Test update.
-
- Now it is part of jk/tests-timestamp-fix with a larger scope.
-
-
-* jc/no-update-fetch-head (2020-07-29) 1 commit
- . fetch: optionally allow disabling FETCH_HEAD update
-
- "git fetch" learned the "--[no-]write-fetch-head" option to
- optionally stop describing what was fetched in FETCH_HEAD.
-
- Now it is part of ds/maintenance topic.