]> git.ipfire.org Git - thirdparty/git.git/commitdiff
What's cooking (2022/02 #05)
authorJunio C Hamano <gitster@pobox.com>
Fri, 18 Feb 2022 00:48:02 +0000 (16:48 -0800)
committerJunio C Hamano <gitster@pobox.com>
Fri, 18 Feb 2022 00:48:02 +0000 (16:48 -0800)
whats-cooking.txt

index 1902ace1f7eebf0136c3028b70e1080976325de3..d5518203b7675134d4c4995a87c856d323f71100 100644 (file)
@@ -1,10 +1,10 @@
 To: git@vger.kernel.org
 Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Feb 2022, #04; Tue, 15)
-X-master-at: b80121027d1247a0754b3cc46897fee75c050b44
-X-next-at: 7e23e61f3f2abdae506f09b247827f12a86031cf
+Subject: What's cooking in git.git (Feb 2022, #05; Thu, 17)
+X-master-at: e2ac9141e64e2cd3e690d1b5fc848949827c09b4
+X-next-at: 5d30c73bfbb79b338e9ebbb6ed42713ff8f22e23
 
-What's cooking in git.git (Feb 2022, #04; Tue, 15)
+What's cooking in git.git (Feb 2022, #05; Thu, 17)
 --------------------------------------------------
 
 Here are the topics that have been cooking in my tree.  Commits
@@ -18,8 +18,8 @@ useful").  Do not read too much into a topic being in (or not in)
 'seen'.  The ones marked with '.' do not appear in any of the
 integration branches, but I am still holding onto them.
 
-Many new topics have sketchy or even empty topic description in the
-list below; help to fill them in is very much appreciated ;-)
+We are near the end of 4th week of a 12-week cycle, and the fourth
+and the fifth batches of topics are in the 'master' ('main') branch.
 
 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
@@ -49,38 +49,391 @@ Release tarballs are available at:
 
        https://www.kernel.org/pub/software/scm/git/
 
+--------------------------------------------------
+[Graduated to 'master']
+
+* ab/auto-detect-zlib-compress2 (2022-01-26) 1 commit
+  (merged to 'next' on 2022-02-08 at 9922938a6a)
+ + compat: auto-detect if zlib has uncompress2()
+
+ The build procedure has been taught to notice older version of zlib
+ and enable our replacement uncompress2() automatically.
+ source: <xmqqr18x3s5s.fsf@gitster.g>
+
+
+* ab/complete-show-all-commands (2022-02-02) 2 commits
+  (merged to 'next' on 2022-02-09 at be3b7cf4e4)
+ + completion: add a GIT_COMPLETION_SHOW_ALL_COMMANDS
+ + completion tests: re-source git-completion.bash in a subshell
+
+ The command line completion script (in contrib/) learned to
+ complete all Git subcommands, including the ones that are normally
+ hidden, when GIT_COMPLETION_SHOW_ALL_COMMANDS is used.
+ source: <cover-v2-0.2-00000000000-20220202T111228Z-avarab@gmail.com>
+
+
+* ab/do-not-hide-failures-in-git-dot-pm (2022-02-01) 1 commit
+  (merged to 'next' on 2022-02-08 at 1a8001f83e)
+ + perl Git.pm: don't ignore signalled failure in _cmd_close()
+
+ Git.pm update.
+ source: <patch-1.1-86353c3b366-20220201T205218Z-avarab@gmail.com>
+
+
+* en/fetch-negotiation-default-fix (2022-02-02) 3 commits
+  (merged to 'next' on 2022-02-08 at 95a8a91e97)
+ + repo-settings: rename the traditional default fetch.negotiationAlgorithm
+ + repo-settings: fix error handling for unknown values
+ + repo-settings: fix checking for fetch.negotiationAlgorithm=default
+
+ Interaction between fetch.negotiationAlgorithm and
+ feature.experimental configuration variables has been corrected.
+ source: <pull.1131.v4.git.1643773361.gitgitgadget@gmail.com>
+
+
+* en/remerge-diff (2022-02-02) 11 commits
+  (merged to 'next' on 2022-02-08 at 68b9a8a38b)
+ + diff-merges: avoid history simplifications when diffing merges
+ + merge-ort: mark conflict/warning messages from inner merges as omittable
+ + show, log: include conflict/warning messages in --remerge-diff headers
+ + diff: add ability to insert additional headers for paths
+ + merge-ort: format messages slightly different for use in headers
+ + merge-ort: mark a few more conflict messages as omittable
+ + merge-ort: capture and print ll-merge warnings in our preferred fashion
+ + ll-merge: make callers responsible for showing warnings
+ + log: clean unneeded objects during `log --remerge-diff`
+ + show, log: provide a --remerge-diff capability
+ + Merge branch 'ns/tmp-objdir' into en/remerge-diff
+ (this branch is used by en/merge-tree.)
+
+ "git log --remerge-diff" shows the difference from mechanical merge
+ result and the result that is actually recorded in a merge commit.
+ source: <pull.1103.v5.git.1643769457.gitgitgadget@gmail.com>
+
+
+* hn/reftable-coverity-fixes (2022-01-20) 17 commits
+  (merged to 'next' on 2022-02-08 at 1baf327a66)
+ + reftable: add print functions to the record types
+ + reftable: make reftable_record a tagged union
+ + reftable: remove outdated file reftable.c
+ + reftable: implement record equality generically
+ + reftable: make reftable-record.h function signatures const correct
+ + reftable: handle null refnames in reftable_ref_record_equal
+ + reftable: drop stray printf in readwrite_test
+ + reftable: order unittests by complexity
+ + reftable: all xxx_free() functions accept NULL arguments
+ + reftable: fix resource warning
+ + reftable: ignore remove() return value in stack_test.c
+ + reftable: check reftable_stack_auto_compact() return value
+ + reftable: fix resource leak blocksource.c
+ + reftable: fix resource leak in block.c error path
+ + reftable: fix OOB stack write in print functions
+ + Merge branch 'hn/create-reflog-simplify' into hn/reftable-coverity-fixes
+ + Merge branch 'hn/reftable' into hn/reftable-coverity-fixes
+
+ Problems identified by Coverity in the reftable code have been
+ corrected.
+ source: <pull.1152.v6.git.git.1642691534.gitgitgadget@gmail.com>
+
+
+* hn/reftable-tests (2022-01-31) 3 commits
+  (merged to 'next' on 2022-02-09 at 5e22946a1f)
+ + t5312: prepare for reftable
+ + t1405: mark test that checks existence as REFFILES
+ + t1405: explictly delete reflogs for reftable
+
+ Prepare more test scripts for the introduction of reftable.
+ source: <pull.1209.git.git.1643651420.gitgitgadget@gmail.com>
+
+
+* js/diff-filter-negation-fix (2022-01-28) 3 commits
+  (merged to 'next' on 2022-02-08 at fe004a4c2c)
+ + diff-filter: be more careful when looking for negative bits
+ + diff.c: move the diff filter bits definitions up a bit
+ + docs(diff): lose incorrect claim about `diff-files --diff-filter=A`
+
+ "git diff --diff-filter=aR" is now parsed correctly.
+ source: <f1f027ad61beb1bd0dee73acbffdee5c0f967e9a.1643371370.git.gitgitgadget@gmail.com>
+
+
+* js/no-more-legacy-stash (2022-01-27) 4 commits
+  (merged to 'next' on 2022-02-08 at 5cecfdbd58)
+ + stash: stop warning about the obsolete `stash.useBuiltin` config setting
+ + stash: remove documentation for `stash.useBuiltin`
+ + add: remove support for `git-legacy-stash`
+ + git-sh-setup: remove remnant bits referring to `git-legacy-stash`
+
+ Removal of unused code and doc.
+ source: <pull.1133.git.1643321031.gitgitgadget@gmail.com>
+
+
+* js/scalar-global-options (2022-01-28) 1 commit
+  (merged to 'next' on 2022-02-09 at 8af744524c)
+ + scalar: accept -C and -c options before the subcommand
+
+ Scalar update.
+ source: <pull.1130.v2.git.1643380317358.gitgitgadget@gmail.com>
+
+
+* jz/patch-id-hunk-header-parsing-fix (2022-02-02) 2 commits
+  (merged to 'next' on 2022-02-09 at 8665cb204a)
+ + patch-id: fix scan_hunk_header on diffs with 1 line of before/after
+ + patch-id: fix antipatterns in tests
+
+ Unlike "git apply", "git patch-id" did not handle patches with
+ hunks that has only 1 line in either preimage or postimage, which
+ has been corrected.
+ source: <20220202041945.10077-1-jerry@skydio.com>
+ source: <20220202042015.10115-1-jerry@skydio.com>
+
+
+* jz/rev-list-exclude-first-parent-only (2022-01-12) 1 commit
+  (merged to 'next' on 2022-02-09 at f26a82c66a)
+ + git-rev-list: add --exclude-first-parent-only flag
+
+ "git log" and friends learned an option --exclude-first-parent-only
+ to propagate UNINTERESTING bit down only along the first-parent
+ chain, just like --first-parent option shows commits that lack the
+ UNINTERESTING bit only along the first-parent chain.
+ source: <20220111213941.30129-1-jerry@skydio.com>
+
+
+* ld/sparse-index-bash-completion (2022-02-08) 3 commits
+  (merged to 'next' on 2022-02-08 at ac1e968ab8)
+ + completion: handle unusual characters for sparse-checkout
+ + completion: improve sparse-checkout cone mode directory completion
+ + completion: address sparse-checkout issues
+
+ The command line completion (in contrib/) learns to complete
+ arguments to give to "git sparse-checkout" command.
+ source: <pull.1108.v7.git.1644255105.gitgitgadget@gmail.com>
+
+
+* ll/doc-mktree-typofix (2022-02-02) 1 commit
+  (merged to 'next' on 2022-02-08 at fe98063f1a)
+ + fix typo in git-mktree.txt
+
+ Typofix.
+ source: <pull.1207.git.git.1643792450866.gitgitgadget@gmail.com>
+
+
+* po/doc-check-ignore-markup-fix (2022-02-03) 1 commit
+  (merged to 'next' on 2022-02-09 at 47631df376)
+ + doc: check-ignore: code-quote an exclamation mark
+
+ Typofix.
+ source: <20220203101643.1987-1-philipoakley@iee.email>
+
+
+* sy/modernize-t-lib-read-tree-m-3way (2022-02-02) 2 commits
+  (merged to 'next' on 2022-02-09 at 8b7ecb4e99)
+ + t/lib-read-tree-m-3way: indent with tabs
+ + t/lib-read-tree-m-3way: modernize style
+
+ Style updates on a test script helper.
+ source: <20220123060318.471414-1-shaoxuan.yuan02@gmail.com>
+
+
+* tb/midx-bitmap-corruption-fix (2022-01-27) 9 commits
+  (merged to 'next' on 2022-02-08 at a8cc333d78)
+ + pack-bitmap.c: gracefully fallback after opening pack/MIDX
+ + midx: read `RIDX` chunk when present
+ + t/lib-bitmap.sh: parameterize tests over reverse index source
+ + t5326: move tests to t/lib-bitmap.sh
+ + t5326: extract `test_rev_exists`
+ + t5326: drop unnecessary setup
+ + pack-revindex.c: instrument loading on-disk reverse index
+ + midx.c: make changing the preferred pack safe
+ + t5326: demonstrate bitmap corruption after permutation
+
+ A bug that made multi-pack bitmap and the object order out-of-sync,
+ making the .midx data corrupt, has been fixed.
+ source: <cover.1643150456.git.me@ttaylorr.com>
+
+
+* tk/subtree-merge-not-ff-only (2022-02-01) 1 commit
+  (merged to 'next' on 2022-02-09 at 849450010e)
+ + subtree: force merge commit
+
+ When "git subtree" wants to create a merge, it used "git merge" and
+ let it be affected by end-user's "merge.ff" configuration, which
+ has been corrected.
+ source: <20220201172601.262718-1-aclopte@gmail.com>
+
+
+* vd/sparse-clean-etc (2022-01-13) 9 commits
+  (merged to 'next' on 2022-02-09 at 5928dbd25e)
+ + update-index: reduce scope of index expansion in do_reupdate
+ + update-index: integrate with sparse index
+ + update-index: add tests for sparse-checkout compatibility
+ + checkout-index: integrate with sparse index
+ + checkout-index: add --ignore-skip-worktree-bits option
+ + checkout-index: expand sparse checkout compatibility tests
+ + clean: integrate with sparse index
+ + reset: reorder wildcard pathspec conditions
+ + reset: fix validation in sparse index test
+ (this branch is used by en/present-despite-skipped.)
+
+ "git update-index", "git checkout-index", and "git clean" are
+ taught to work better with the sparse checkout feature.
+ source: <pull.1109.v2.git.1641924306.gitgitgadget@gmail.com>
+
 --------------------------------------------------
 [New Topics]
 
-* ds/mailmap (2022-02-14) 1 commit
-  (merged to 'next' on 2022-02-14 at 1e50634951)
- + mailmap: change primary address for Derrick Stolee
+* en/sparse-checkout-fixes (2022-02-17) 5 commits
+ - sparse-checkout: reject arguments in cone-mode that look like patterns
+ - sparse-checkout: error or warn when given individual files
+ - sparse-checkout: pay attention to prefix for {set, add}
+ - sparse-checkout: correctly set non-cone mode when expected
+ - sparse-checkout: correct reapply's handling of options
 
- Update mailmap entries.
+ Further polishing of "git sparse-checkout".
+
+ Will merge to 'next'?
+ source: <pull.1118.v4.git.1645080889.gitgitgadget@gmail.com>
+
+
+* jc/name-rev-stdin (2022-02-15) 1 commit
+  (merged to 'next' on 2022-02-16 at ee993590a4)
+ + name-rev: replace --stdin with --annotate-stdin in synopsis
+
+ Finishing touches to an earlier "name-rev --annotate-stdin" series.
 
  Will merge to 'master'.
- source: <pull.1142.git.1644857153590.gitgitgadget@gmail.com>
+ source: <pull.1216.git.git.1644958327302.gitgitgadget@gmail.com>
 
 
-* bc/clarify-eol-attr (2022-02-14) 1 commit
 (merged to 'next' on 2022-02-14 at 7e23e61f3f)
- + doc: clarify interaction between 'eol' and text=auto
+* ab/commit-plug-leaks (2022-02-16) 2 commits
- commit: use strbuf_release() instead of UNLEAK()
+ - commit: fix "author_ident" leak
 
- Documentation update
+ Leakfixes in the top-level called-once function.
+
+ Expecting a reroll.
+ I think UNLEAK->strbuf_release() is a regression.
+ source: <cover-0.2-00000000000-20220216T081844Z-avarab@gmail.com>
+
+
+* ab/diff-free-more (2022-02-16) 2 commits
+  (merged to 'next' on 2022-02-17 at be8ae78a2d)
+ + diff.[ch]: have diff_free() free options->parseopts
+ + diff.[ch]: have diff_free() call clear_pathspec(opts.pathspec)
+
+ Leakfixes.
 
  Will merge to 'master'.
- source: <xmqqilth2u28.fsf@gitster.g>
+ source: <cover-0.2-00000000000-20220216T105250Z-avarab@gmail.com>
 
 
-* ab/date-mode-release (2022-02-14) 5 commits
- - date API: add and use a date_mode_release()
- - date API: add basic API docs
- - date API: provide and use a DATE_MODE_INIT
- - date API: create a date.h, split from cache.h
- - cache.h: remove always unused show_date_human() declaration
+* pw/single-key-interactive (2022-02-16) 3 commits
+ - add -p: disable stdin buffering when interactive.singlekey is set
+ - terminal: set VMIN and VTIME in non-canonical mode
+ - terminal: pop signal handler when terminal is restored
+
+ The single-key interactive operation used by "git add -p" has been
+ made more robust.
+
+ Will merge to 'next'?
+ source: <pull.1146.git.1645008873.gitgitgadget@gmail.com>
+
+
+* jh/builtin-fsmonitor-part3 (2022-02-16) 25 commits
+ - t/perf/p7527: add perf test for builtin FSMonitor
+ - t7527: FSMonitor tests for directory moves
+ - fsmonitor: optimize processing of directory events
+ - fsm-listen-darwin: shutdown daemon if worktree root is moved/renamed
+ - fsm-health-win32: force shutdown daemon if worktree root moves
+ - fsm-health-win32: add framework to monitor daemon health
+ - fsmonitor--daemon: stub in health thread
+ - fsmonitor--daemon: rename listener thread related variables
+ - fsmonitor--daemon: prepare for adding health thread
+ - fsmonitor--daemon: cd out of worktree root
+ - fsmonitor--daemon: print start message only if fsmonitor.announceStartup
+ - fsm-listen-darwin: ignore FSEvents caused by xattr changes on macOS
+ - unpack-trees: initialize fsmonitor_has_run_once in o->result
+ - fsmonitor-settings: remote repos on Windows are incompatible with FSMonitor
+ - fsmonitor-settings: remote repos on macOS are incompatible with FSMonitor
+ - fsmonitor-settings: stub in macOS-specific incompatibility checking
+ - fsmonitor-settings: virtual repos are incompatible with FSMonitor
+ - fsmonitor-settings: stub in platform-specific incompatibility checking
+ - fsmonitor-settings: bare repos are incompatible with FSMonitor
+ - t/helper/fsmonitor-client: create stress test
+ - t7527: test builtin FSMonitor watching repos with unicode paths
+ - t7527: test FS event reporing on macOS WRT case and Unicode
+ - fsm-listen-win32: handle shortnames
+ - p7519: leave 1_file directory empty
+ - Merge branch 'jh/builtin-fsmonitor-part2' into jh/builtin-fsmonitor-part3
+ (this branch uses jh/builtin-fsmonitor-part2.)
+
+ More fsmonitor--daemon.
+ source: <pull.1143.git.1644940773.gitgitgadget@gmail.com>
+
+
+* ds/core-untraced-cache-config (2022-02-17) 1 commit
+ - dir: force untracked cache with core.untrackedCache
+
+ Setting core.untrackedCache to true failed to add the untracked
+ cache extension to the index.
+
+ Will merge to 'next'.
+ source: <pull.1058.v2.git.1645131630140.gitgitgadget@gmail.com>
+
+
+* en/ort-inner-merge-conflict-report (2022-02-17) 1 commit
+ - merge-ort: make informational messages from recursive merges clearer
+
+ Messages "ort" merge backend prepares while dealing with conflicted
+ paths were unnecessarily confusing since it did not differentiate
+ inner merges and outer merges.
+
+ Will merge to 'next'.
+ source: <pull.1121.git.1645079923090.gitgitgadget@gmail.com>
+
+
+* hn/reftable-no-empty-keys (2022-02-17) 7 commits
+ - reftable: rename writer_stats to reftable_writer_stats
+ - reftable: add test for length of disambiguating prefix
+ - reftable: ensure that obj_id_len is >= 2 on writing
+ - reftable: avoid writing empty keys at the block layer
+ - reftable: add a test that verifies that writing empty keys fails
+ - reftable: reject 0 object_id_len
+ - Documentation: object_id_len goes up to 31
+
+ General clean-up in reftable implementation, including
+ clarification of the API documentation, tightening the code to
+ honor documented length limit, etc.
+
+ Will merge to 'next'?
+ source: <pull.1185.v2.git.git.1645106124.gitgitgadget@gmail.com>
+
+
+* ps/fetch-atomic (2022-02-17) 7 commits
+ - fetch: make `--atomic` flag cover pruning of refs
+ - fetch: make `--atomic` flag cover backfilling of tags
+ - refs: add interface to iterate over queued transactional updates
+ - fetch: report errors when backfilling tags fails
+ - fetch: control lifecycle of FETCH_HEAD in a single place
+ - fetch: backfill tags before setting upstream
+ - fetch: increase test coverage of fetches
+
+ "git fetch" can make two separate fetches, but ref updates coming
+ from them were in two separate ref transactions under "--atomic",
+ which has been corrected.
+
+ Will merge to 'next'.
+ source: <cover.1645102965.git.ps@pks.im>
 
- Plug (some) memory leaks around parse_date_format().
- source: <cover-v2-0.5-00000000000-20220204T235143Z-avarab@gmail.com>
+
+* rs/pcre-invalid-utf8-fix-fix (2022-02-17) 1 commit
+ - grep: fix triggering PCRE2_NO_START_OPTIMIZE workaround
+
+ Workaround we have for versions of PCRE2 before their version 10.36
+ were in effect only for their versions newer than 10.36 by mistake,
+ which has been corrected.
+
+ Will merge to 'next'.
+ source: <4e391e2e-6561-3c2e-0306-c860a37356bc@web.de>
 
 --------------------------------------------------
 [Stalled]
@@ -117,6 +470,40 @@ Release tarballs are available at:
 --------------------------------------------------
 [Cooking]
 
+* ds/mailmap (2022-02-14) 1 commit
+  (merged to 'next' on 2022-02-14 at 1e50634951)
+ + mailmap: change primary address for Derrick Stolee
+
+ Update mailmap entries.
+
+ Will merge to 'master'.
+ source: <pull.1142.git.1644857153590.gitgitgadget@gmail.com>
+
+
+* bc/clarify-eol-attr (2022-02-14) 1 commit
+  (merged to 'next' on 2022-02-14 at 7e23e61f3f)
+ + doc: clarify interaction between 'eol' and text=auto
+
+ Documentation update
+
+ Will merge to 'master'.
+ source: <xmqqilth2u28.fsf@gitster.g>
+
+
+* ab/date-mode-release (2022-02-16) 5 commits
+  (merged to 'next' on 2022-02-17 at 62f1cf68ae)
+ + date API: add and use a date_mode_release()
+ + date API: add basic API docs
+ + date API: provide and use a DATE_MODE_INIT
+ + date API: create a date.h, split from cache.h
+ + cache.h: remove always unused show_date_human() declaration
+
+ Plug (some) memory leaks around parse_date_format().
+
+ Will merge to 'master'.
+ source: <cover-v3-0.5-00000000000-20220216T081203Z-avarab@gmail.com>
+
+
 * jc/glossary-worktree (2022-02-09) 1 commit
   (merged to 'next' on 2022-02-10 at d05e2b6ea3)
  + glossary: describe "worktree"
@@ -160,14 +547,15 @@ Release tarballs are available at:
  source: <cover.1644495978.git.ps@pks.im>
 
 
-* pw/xdiff-alloc-fail (2022-02-09) 3 commits
+* pw/xdiff-alloc-fail (2022-02-16) 4 commits
  - xdiff: handle allocation failure when merging
  - xdiff: refactor a function
  - xdiff: handle allocation failure in patience diff
+ - xdiff: fix a memory leak
 
- Expecting a reroll.
- cf. <9c5b3acb-aabc-3a0d-f4e7-e10cec410dbe@gmail.com>
- source: <pull.1140.git.1644404356.gitgitgadget@gmail.com>
+ Improve failure case behaviour of xdiff library when memory
+ allocation fails.
+ source: <pull.1140.v2.git.1645006510.gitgitgadget@gmail.com>
 
 
 * sy/t0001-use-path-is-helper (2022-02-11) 1 commit
@@ -303,7 +691,7 @@ Release tarballs are available at:
  source: <abc67d757cb6b244cf54b7b030985180ce134724.1644434802.git.me@ttaylorr.com>
 
 
-* jc/cat-file-batch-commands (2022-02-14) 4 commits
+* jc/cat-file-batch-commands (2022-02-16) 4 commits
  - cat-file: add --batch-command mode
  - cat-file: add remove_timestamp helper
  - cat-file: introduce batch_mode enum to replace print_contents
@@ -312,7 +700,9 @@ Release tarballs are available at:
  "git cat-file" learns "--batch-command" mode, which is a more
  flexible interface than the existing "--batch" or "--batch-check"
  modes, to allow different kinds of inquiries made.
- source: <pull.1212.v6.git.git.1644862988.gitgitgadget@gmail.com>
+
+ Will merge to 'next'?
+ source: <pull.1212.v9.git.git.1645045157.gitgitgadget@gmail.com>
 
 
 * ar/submodule-update (2022-02-10) 20 commits
@@ -335,86 +725,38 @@ Release tarballs are available at:
  . submodule--helper: run update using child process struct
  . submodule--helper: allow setting superprefix for init_submodule()
  . submodule--helper: refactor get_submodule_displaypath()
- . submodule--helper: get remote names from any repository
-
- Rewrite of "git submodule update" in C.
-
- Does not seem to play well with other topics in flight, with heavy conflicts.
- cf. <xmqqv8xj71mt.fsf@gitster.g>
- source: <20220210092833.55360-1-chooglen@google.com>
-
-
-* pw/use-in-process-checkout-in-rebase (2022-01-26) 14 commits
-  (merged to 'next' on 2022-02-10 at bd7c3615fe)
- + rebase -m: don't fork git checkout
- + rebase --apply: set ORIG_HEAD correctly
- + rebase --apply: fix reflog
- + reset_head(): take struct rebase_head_opts
- + rebase: cleanup reset_head() calls
- + create_autostash(): remove unneeded parameter
- + reset_head(): make default_reflog_action optional
- + reset_head(): factor out ref updates
- + reset_head(): remove action parameter
- + rebase --apply: don't run post-checkout hook if there is an error
- + rebase: do not remove untracked files on checkout
- + rebase: pass correct arguments to post-checkout hook
- + t5403: refactor rebase post-checkout hook tests
- + rebase: factor out checkout for up to date branch
-
- Use an internal call to reset_head() helper function instead of
- spawning "git checkout" in "rebase", and update code paths that are
- involved in the change.
-
- Will merge to 'master'.
- source: <pull.1049.v3.git.1643202349.gitgitgadget@gmail.com>
-
-
-* en/fetch-negotiation-default-fix (2022-02-02) 3 commits
-  (merged to 'next' on 2022-02-08 at 95a8a91e97)
- + repo-settings: rename the traditional default fetch.negotiationAlgorithm
- + repo-settings: fix error handling for unknown values
- + repo-settings: fix checking for fetch.negotiationAlgorithm=default
-
- Fix interaction between fetch.negotiationAlgorithm and
- feature.experimental configuration variables.
-
- Will merge to 'master'.
- source: <pull.1131.v4.git.1643773361.gitgitgadget@gmail.com>
-
-
-* js/diff-filter-negation-fix (2022-01-28) 3 commits
-  (merged to 'next' on 2022-02-08 at fe004a4c2c)
- + diff-filter: be more careful when looking for negative bits
- + diff.c: move the diff filter bits definitions up a bit
- + docs(diff): lose incorrect claim about `diff-files --diff-filter=A`
-
- "git diff --diff-filter=aR" is now parsed correctly.
-
- Will merge to 'master'.
- source: <f1f027ad61beb1bd0dee73acbffdee5c0f967e9a.1643371370.git.gitgitgadget@gmail.com>
-
-
-* js/no-more-legacy-stash (2022-01-27) 4 commits
-  (merged to 'next' on 2022-02-08 at 5cecfdbd58)
- + stash: stop warning about the obsolete `stash.useBuiltin` config setting
- + stash: remove documentation for `stash.useBuiltin`
- + add: remove support for `git-legacy-stash`
- + git-sh-setup: remove remnant bits referring to `git-legacy-stash`
+ . submodule--helper: get remote names from any repository
 
- Removal of unused code and doc.
+ Rewrite of "git submodule update" in C.
 
- Will merge to 'master'.
- source: <pull.1133.git.1643321031.gitgitgadget@gmail.com>
+ Does not seem to play well with other topics in flight, with heavy conflicts.
+ cf. <xmqqv8xj71mt.fsf@gitster.g>
+ source: <20220210092833.55360-1-chooglen@google.com>
 
 
-* js/scalar-global-options (2022-01-28) 1 commit
-  (merged to 'next' on 2022-02-09 at 8af744524c)
- + scalar: accept -C and -c options before the subcommand
+* pw/use-in-process-checkout-in-rebase (2022-01-26) 14 commits
+  (merged to 'next' on 2022-02-10 at bd7c3615fe)
+ + rebase -m: don't fork git checkout
+ + rebase --apply: set ORIG_HEAD correctly
+ + rebase --apply: fix reflog
+ + reset_head(): take struct rebase_head_opts
+ + rebase: cleanup reset_head() calls
+ + create_autostash(): remove unneeded parameter
+ + reset_head(): make default_reflog_action optional
+ + reset_head(): factor out ref updates
+ + reset_head(): remove action parameter
+ + rebase --apply: don't run post-checkout hook if there is an error
+ + rebase: do not remove untracked files on checkout
+ + rebase: pass correct arguments to post-checkout hook
+ + t5403: refactor rebase post-checkout hook tests
+ + rebase: factor out checkout for up to date branch
 
- Scalar update.
+ Use an internal call to reset_head() helper function instead of
+ spawning "git checkout" in "rebase", and update code paths that are
+ involved in the change.
 
  Will merge to 'master'.
- source: <pull.1130.v2.git.1643380317358.gitgitgadget@gmail.com>
+ source: <pull.1049.v3.git.1643202349.gitgitgadget@gmail.com>
 
 
 * rj/receive-pack-abort-upon-disconnect (2022-01-28) 1 commit
@@ -430,30 +772,6 @@ Release tarballs are available at:
  source: <20220128194811.3396281-1-robin.jarry@6wind.com>
 
 
-* jz/patch-id-hunk-header-parsing-fix (2022-02-02) 2 commits
-  (merged to 'next' on 2022-02-09 at 8665cb204a)
- + patch-id: fix scan_hunk_header on diffs with 1 line of before/after
- + patch-id: fix antipatterns in tests
-
- Unlike "git apply", "git patch-id" did not handle patches with
- hunks that has only 1 line in either preimage or postimage, which
- has been corrected.
-
- Will merge to 'master'.
- source: <20220202041945.10077-1-jerry@skydio.com>
- source: <20220202042015.10115-1-jerry@skydio.com>
-
-
-* ab/do-not-hide-failures-in-git-dot-pm (2022-02-01) 1 commit
-  (merged to 'next' on 2022-02-08 at 1a8001f83e)
- + perl Git.pm: don't ignore signalled failure in _cmd_close()
-
- Git.pm update.
-
- Will merge to 'master'.
- source: <patch-1.1-86353c3b366-20220201T205218Z-avarab@gmail.com>
-
-
 * ab/object-file-api-updates (2022-02-04) 11 commits
  - object-file API: pass an enum to read_object_with_reference()
  - object-file.c: add a literal version of write_object_file_prepare()
@@ -485,53 +803,17 @@ Release tarballs are available at:
  source: <20220129063538.24038-1-bojun.cbj@gmail.com>
 
 
-* hn/reftable-tests (2022-01-31) 3 commits
-  (merged to 'next' on 2022-02-09 at 5e22946a1f)
- + t5312: prepare for reftable
- + t1405: mark test that checks existence as REFFILES
- + t1405: explictly delete reflogs for reftable
-
- Prepare more test scripts for the introduction of reftable.
-
- Will merge to 'master'.
- source: <pull.1209.git.git.1643651420.gitgitgadget@gmail.com>
-
-
 * ja/i18n-common-messages (2022-02-04) 4 commits
- - i18n: fix some misformated placeholders in command synopsis
- - i18n: remove from i18n strings that do not hold translatable parts
- - i18n: factorize "invalid value" messages
- - i18n: factorize more 'incompatible options' messages
+  (merged to 'next' on 2022-02-15 at 23d56641fc)
+ + i18n: fix some misformated placeholders in command synopsis
+ + i18n: remove from i18n strings that do not hold translatable parts
+ + i18n: factorize "invalid value" messages
+ + i18n: factorize more 'incompatible options' messages
 
  Unify more messages to help l10n.
 
- Will merge to 'next'?
- source: <pull.1123.v4.git.1643666870.gitgitgadget@gmail.com>
-
-
-* tk/subtree-merge-not-ff-only (2022-02-01) 1 commit
-  (merged to 'next' on 2022-02-09 at 849450010e)
- + subtree: force merge commit
-
- When "git subtree" wants to create a merge, it used "git merge" and
- let it be affected by end-user's "merge.ff" configuration, which
- has been corrected.
-
- Will merge to 'master'.
- source: <20220201172601.262718-1-aclopte@gmail.com>
-
-
-* ab/complete-show-all-commands (2022-02-02) 2 commits
-  (merged to 'next' on 2022-02-09 at be3b7cf4e4)
- + completion: add a GIT_COMPLETION_SHOW_ALL_COMMANDS
- + completion tests: re-source git-completion.bash in a subshell
-
- The command line completion script (in contrib/) learns an option
- to complete all Git subcommands, including the ones that are
- normally hidden.
-
  Will merge to 'master'.
- source: <cover-v2-0.2-00000000000-20220202T111228Z-avarab@gmail.com>
+ source: <pull.1123.v4.git.1643666870.gitgitgadget@gmail.com>
 
 
 * en/merge-tree (2022-02-14) 13 commits
@@ -548,7 +830,6 @@ Release tarballs are available at:
  - merge-tree: move logic for existing merge into new function
  - merge-tree: rename merge_trees() to trivial_merge_trees()
  - Merge branch 'en/remerge-diff' into en/merge-trees
- (this branch uses en/remerge-diff.)
 
  A new command is introduced that takes two commits and computes a
  tree that would be contained in the resulting merge commit, if the
@@ -557,56 +838,15 @@ Release tarballs are available at:
  source: <pull.1122.v4.git.1644698093.gitgitgadget@gmail.com>
 
 
-* ll/doc-mktree-typofix (2022-02-02) 1 commit
-  (merged to 'next' on 2022-02-08 at fe98063f1a)
- + fix typo in git-mktree.txt
-
- Typofix.
-
- Will merge to 'master'.
- source: <pull.1207.git.git.1643792450866.gitgitgadget@gmail.com>
-
-
-* po/doc-check-ignore-markup-fix (2022-02-03) 1 commit
-  (merged to 'next' on 2022-02-09 at 47631df376)
- + doc: check-ignore: code-quote an exclamation mark
-
- Typofix.
-
- Will merge to 'master'.
- source: <20220203101643.1987-1-philipoakley@iee.email>
-
-
-* sy/modernize-t-lib-read-tree-m-3way (2022-02-02) 2 commits
-  (merged to 'next' on 2022-02-09 at 8b7ecb4e99)
- + t/lib-read-tree-m-3way: indent with tabs
- + t/lib-read-tree-m-3way: modernize style
-
- Style updates on a test script helper.
-
- Will merge to 'master'.
- source: <20220123060318.471414-1-shaoxuan.yuan02@gmail.com>
-
-
-* ab/auto-detect-zlib-compress2 (2022-01-26) 1 commit
-  (merged to 'next' on 2022-02-08 at 9922938a6a)
- + compat: auto-detect if zlib has uncompress2()
-
- Notice older zlib to enable our replacement uncompress2()
- automatically.
-
- Will merge to 'master'.
- source: <xmqqr18x3s5s.fsf@gitster.g>
-
-
 * js/apply-partial-clone-filters-recursively (2022-02-09) 1 commit
- - clone, submodule: pass partial clone filters to submodules
+  (merged to 'next' on 2022-02-16 at 4b3852bd52)
+ + clone, submodule: pass partial clone filters to submodules
 
  "git clone --filter=... --recurse-submodules" only makes the
  top-level a partial clone, while submodules are fully cloned.  This
  behaviour is changed to pass the same filter down to the submodules.
 
- Will merge to 'next'?
+ Will merge to 'master'.
  source: <690d2316ad518ea4551821b2b3aa652996858475.1644034886.git.steadmon@google.com>
 
 
@@ -654,19 +894,18 @@ Release tarballs are available at:
 
 
 * ds/sparse-checkout-requires-per-worktree-config (2022-02-08) 6 commits
- - config: make git_configset_get_string_tmp() private
- - worktree: copy sparse-checkout patterns and config on add
- - sparse-checkout: set worktree-config correctly
- - config: add repo_config_set_worktree_gently()
- - worktree: create init_worktree_config()
- - Documentation: add extensions.worktreeConfig details
+  (merged to 'next' on 2022-02-15 at f86bec6da9)
+ + config: make git_configset_get_string_tmp() private
+ + worktree: copy sparse-checkout patterns and config on add
+ + sparse-checkout: set worktree-config correctly
+ + config: add repo_config_set_worktree_gently()
+ + worktree: create init_worktree_config()
+ + Documentation: add extensions.worktreeConfig details
 
  "git sparse-checkout" wants to work with per-worktree configration,
  but did not work well in a worktree attached to a bare repository.
 
- Will merge to 'next'?
- cf. <20220204081336.3194538-1-newren@gmail.com>
- cf. <CAPig+cRrRxuTeByhKkLs_KDaWY8-r4+jrwT83A-r+sBQsmebMw@mail.gmail.com>
+ Will merge to 'master'.
  source: <pull.1101.v6.git.1644269583.gitgitgadget@gmail.com>
 
 
@@ -688,93 +927,25 @@ Release tarballs are available at:
  source: <cover.1642406989.git.ps@pks.im>
 
 
-* ld/sparse-index-bash-completion (2022-02-08) 3 commits
-  (merged to 'next' on 2022-02-08 at ac1e968ab8)
- + completion: handle unusual characters for sparse-checkout
- + completion: improve sparse-checkout cone mode directory completion
- + completion: address sparse-checkout issues
-
- The command line completion (in contrib/) learns to complete
- arguments give to "git sparse-checkout" command.
-
- Will merge to 'master'.
- source: <pull.1108.v7.git.1644255105.gitgitgadget@gmail.com>
-
-
-* jz/rev-list-exclude-first-parent-only (2022-01-12) 1 commit
-  (merged to 'next' on 2022-02-09 at f26a82c66a)
- + git-rev-list: add --exclude-first-parent-only flag
-
- "git log" and friends learned an option --exclude-first-parent-only
- to propagate UNINTERESTING bit down only along the first-parent
- chain, just like --first-parent option shows commits that lack the
- UNINTERESTING bit only along the first-parent chain.
-
- Will merge to 'master'.
- source: <20220111213941.30129-1-jerry@skydio.com>
-
-
 * en/present-despite-skipped (2022-01-14) 6 commits
- - Accelerate clear_skip_worktree_from_present_files() by caching
- - Update documentation related to sparsity and the skip-worktree bit
- - repo_read_index: clear SKIP_WORKTREE bit from files present in worktree
- - unpack-trees: fix accidental loss of user changes
- t1011: add testcase demonstrating accidental loss of user modifications
- - Merge branch 'vd/sparse-clean-etc' into en/present-despite-skipped
- (this branch uses vd/sparse-clean-etc.)
+  (merged to 'next' on 2022-02-15 at 960873fdad)
+ + Accelerate clear_skip_worktree_from_present_files() by caching
+ + Update documentation related to sparsity and the skip-worktree bit
+ + repo_read_index: clear SKIP_WORKTREE bit from files present in worktree
+ unpack-trees: fix accidental loss of user changes
+ + t1011: add testcase demonstrating accidental loss of user modifications
+ + Merge branch 'vd/sparse-clean-etc' into en/present-despite-skipped
 
  In sparse-checkouts, files mis-marked as missing from the working tree
  could lead to later problems.  Such files were hard to discover, and
  harder to correct.  Automatically detecting and correcting the marking
  of such files has been added to avoid these problems.
 
- Will merge to 'next'?
+ Will merge to 'master'.
  cf. <20220204081336.3194538-1-newren@gmail.com>
  source: <pull.1114.v2.git.1642175983.gitgitgadget@gmail.com>
 
 
-* vd/sparse-clean-etc (2022-01-13) 9 commits
-  (merged to 'next' on 2022-02-09 at 5928dbd25e)
- + update-index: reduce scope of index expansion in do_reupdate
- + update-index: integrate with sparse index
- + update-index: add tests for sparse-checkout compatibility
- + checkout-index: integrate with sparse index
- + checkout-index: add --ignore-skip-worktree-bits option
- + checkout-index: expand sparse checkout compatibility tests
- + clean: integrate with sparse index
- + reset: reorder wildcard pathspec conditions
- + reset: fix validation in sparse index test
- (this branch is used by en/present-despite-skipped.)
-
- "git update-index", "git checkout-index", and "git clean" are
- taught to work better with the sparse checkout feature.
-
- Will merge to 'master'.
- source: <pull.1109.v2.git.1641924306.gitgitgadget@gmail.com>
-
-
-* en/remerge-diff (2022-02-02) 11 commits
-  (merged to 'next' on 2022-02-08 at 68b9a8a38b)
- + diff-merges: avoid history simplifications when diffing merges
- + merge-ort: mark conflict/warning messages from inner merges as omittable
- + show, log: include conflict/warning messages in --remerge-diff headers
- + diff: add ability to insert additional headers for paths
- + merge-ort: format messages slightly different for use in headers
- + merge-ort: mark a few more conflict messages as omittable
- + merge-ort: capture and print ll-merge warnings in our preferred fashion
- + ll-merge: make callers responsible for showing warnings
- + log: clean unneeded objects during `log --remerge-diff`
- + show, log: provide a --remerge-diff capability
- + Merge branch 'ns/tmp-objdir' into en/remerge-diff
- (this branch is used by en/merge-tree.)
-
- "git log --remerge-diff" shows the difference from mechanical merge
- result and the merge result that is actually recorded.
-
- Will merge to 'master'.
- source: <pull.1103.v5.git.1643769457.gitgitgadget@gmail.com>
-
-
 * bs/forbid-i18n-of-protocol-token-in-fetch-pack (2022-02-11) 1 commit
   (merged to 'next' on 2022-02-14 at 9abd0dce80)
  + fetch-pack: parameterize message containing 'ready' keyword
@@ -801,73 +972,23 @@ Release tarballs are available at:
  source: <20220129000446.99261-1-chooglen@google.com>
 
 
-* hn/reftable-coverity-fixes (2022-01-20) 17 commits
-  (merged to 'next' on 2022-02-08 at 1baf327a66)
- + reftable: add print functions to the record types
- + reftable: make reftable_record a tagged union
- + reftable: remove outdated file reftable.c
- + reftable: implement record equality generically
- + reftable: make reftable-record.h function signatures const correct
- + reftable: handle null refnames in reftable_ref_record_equal
- + reftable: drop stray printf in readwrite_test
- + reftable: order unittests by complexity
- + reftable: all xxx_free() functions accept NULL arguments
- + reftable: fix resource warning
- + reftable: ignore remove() return value in stack_test.c
- + reftable: check reftable_stack_auto_compact() return value
- + reftable: fix resource leak blocksource.c
- + reftable: fix resource leak in block.c error path
- + reftable: fix OOB stack write in print functions
- + Merge branch 'hn/create-reflog-simplify' into hn/reftable-coverity-fixes
- + Merge branch 'hn/reftable' into hn/reftable-coverity-fixes
-
- Problems identified by Coverity in the reftable code have been
- corrected.
-
- Will merge to 'master'.
- source: <pull.1152.v6.git.git.1642691534.gitgitgadget@gmail.com>
-
-
-* tb/midx-bitmap-corruption-fix (2022-01-27) 9 commits
-  (merged to 'next' on 2022-02-08 at a8cc333d78)
- + pack-bitmap.c: gracefully fallback after opening pack/MIDX
- + midx: read `RIDX` chunk when present
- + t/lib-bitmap.sh: parameterize tests over reverse index source
- + t5326: move tests to t/lib-bitmap.sh
- + t5326: extract `test_rev_exists`
- + t5326: drop unnecessary setup
- + pack-revindex.c: instrument loading on-disk reverse index
- + midx.c: make changing the preferred pack safe
- + t5326: demonstrate bitmap corruption after permutation
-
- A bug that made multi-pack bitmap and the object order out-of-sync
- (hence the .midx data gets corrupted) has been fixed.
-
- Will merge to 'master'.
- source: <cover.1643150456.git.me@ttaylorr.com>
-
-
-* ab/grep-patterntype (2022-02-04) 9 commits
- - grep: simplify config parsing and option parsing
- - grep.c: do "if (bool && memchr())" not "if (memchr() && bool)"
- - grep.h: make "grep_opt.pattern_type_option" use its enum
- - grep API: call grep_config() after grep_init()
- - grep.c: don't pass along NULL callback value
- - built-ins: trust the "prefix" from run_builtin()
- - grep tests: add missing "grep.patternType" config tests
- - log tests: check if grep_config() is called by "log"-like cmds
- - grep.h: remove unused "regex_t regexp" from grep_opt
+* ab/grep-patterntype (2022-02-15) 10 commits
+  (merged to 'next' on 2022-02-16 at 64222759a2)
+ + grep: simplify config parsing and option parsing
+ + grep.c: do "if (bool && memchr())" not "if (memchr() && bool)"
+ + grep.h: make "grep_opt.pattern_type_option" use its enum
+ + grep API: call grep_config() after grep_init()
+ + grep.c: don't pass along NULL callback value
+ + built-ins: trust the "prefix" from run_builtin()
+ + grep tests: add missing "grep.patternType" config tests
+ + grep tests: create a helper function for "BRE" or "ERE"
+ + log tests: check if grep_config() is called by "log"-like cmds
+ + grep.h: remove unused "regex_t regexp" from grep_opt
 
  Some code clean-up in the "git grep" machinery.
 
- Looking good, except for the last step.
- Code-wise, it is tempted to call it a victory after squashing the
- fix-up in, but that does not fix the proposed log message, so...
-
- Expecting a reroll to update its tests, but otherwise looks ready.
- cf. <xmqqv8xui5ah.fsf@gitster.g>
- cf. <xmqqmtj6jkuk.fsf@gitster.g>
- source: <cover-v10-0.9-00000000000-20220204T211534Z-avarab@gmail.com>
+ Will merge to 'master'.
+ source: <cover-v11-00.10-00000000000-20220216T000006Z-avarab@gmail.com>
 
 
 * js/use-builtin-add-i (2021-12-01) 2 commits
@@ -888,18 +1009,19 @@ Release tarballs are available at:
 
 
 * ab/ambiguous-object-name (2022-01-27) 7 commits
- - object-name: re-use "struct strbuf" in show_ambiguous_object()
- - object-name: iterate ambiguous objects before showing header
- - object-name: show date for ambiguous tag objects
- - object-name: make ambiguous object output translatable
- - object-name: explicitly handle bad tags in show_ambiguous_object()
- - object-name: explicitly handle OBJ_BAD in show_ambiguous_object()
- - object-name tests: add tests for ambiguous object blind spots
+  (merged to 'next' on 2022-02-15 at 6028098cfe)
+ + object-name: re-use "struct strbuf" in show_ambiguous_object()
+ + object-name: iterate ambiguous objects before showing header
+ + object-name: show date for ambiguous tag objects
+ + object-name: make ambiguous object output translatable
+ + object-name: explicitly handle bad tags in show_ambiguous_object()
+ + object-name: explicitly handle OBJ_BAD in show_ambiguous_object()
+ + object-name tests: add tests for ambiguous object blind spots
 
  Error output given in response to an ambiguous object name has been
  improved.
 
- Will merge to 'next'?
+ Will merge to 'master'.
  source: <cover-v8-0.7-00000000000-20220127T052116Z-avarab@gmail.com>
 
 
@@ -954,6 +1076,7 @@ Release tarballs are available at:
  - fsmonitor: config settings are repository-specific
  - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
  - fsmonitor: enhance existing comments, clarify trivial response handling
+ (this branch is used by jh/builtin-fsmonitor-part3.)
 
  Built-in fsmonitor (part 2).
  source: <pull.1041.v5.git.1644612979.gitgitgadget@gmail.com>
@@ -971,17 +1094,18 @@ Release tarballs are available at:
 
 
 * ab/only-single-progress-at-once (2022-02-03) 9 commits
- - pack-bitmap-write.c: don't return without stop_progress()
- - progress API: unify stop_progress{,_msg}(), fix trace2 bug
- - progress.c: refactor stop_progress{,_msg}() to use helpers
- - progress.c: use dereferenced "progress" variable, not "(*p_progress)"
- - progress.h: format and be consistent with progress.c naming
- - progress.c tests: test some invalid usage
- - progress.c tests: make start/stop commands on stdin
- - progress.c test helper: add missing braces
- - leak tests: fix a memory leak in "test-progress" helper
+  (merged to 'next' on 2022-02-15 at 97ac92e662)
+ + pack-bitmap-write.c: don't return without stop_progress()
+ + progress API: unify stop_progress{,_msg}(), fix trace2 bug
+ + progress.c: refactor stop_progress{,_msg}() to use helpers
+ + progress.c: use dereferenced "progress" variable, not "(*p_progress)"
+ + progress.h: format and be consistent with progress.c naming
+ + progress.c tests: test some invalid usage
+ + progress.c tests: make start/stop commands on stdin
+ + progress.c test helper: add missing braces
+ + leak tests: fix a memory leak in "test-progress" helper
 
  Further tweaks on progress API.
 
- Will merge to 'next'?
+ Will merge to 'master'.
  source: <cover-v9-0.9-00000000000-20220203T213350Z-avarab@gmail.com>