summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2021-08-06 16:11:58 -0700
committerJunio C Hamano <gitster@pobox.com>2021-08-06 16:11:58 -0700
commit872951c1f0ca75ca5bdb42b911b6376fd154f929 (patch)
tree65bf55bd81863d739d90d8644b302ab108bc1539
parent4cfdf76fec456f2e340c22e0eb2f744c507c4042 (diff)
What's cooking (2021/08 #03)
-rw-r--r--whats-cooking.txt667
1 files changed, 315 insertions, 352 deletions
diff --git a/whats-cooking.txt b/whats-cooking.txt
index 3a327b910b..bc68657892 100644
--- a/whats-cooking.txt
+++ b/whats-cooking.txt
@@ -1,9 +1,9 @@
To: git@vger.kernel.org
-Subject: What's cooking in git.git (Aug 2021, #02; Tue, 3)
-X-master-at: 66262451ec94d30ac4b80eb3123549cf7a788afd
-X-next-at: a027d43cca25f39e7d37f671db37ed5e34a42f4d
+Subject: What's cooking in git.git (Aug 2021, #03; Fri, 6)
+X-master-at: 2d755dfac9aadab25c3e025b849252b8c0a61465
+X-next-at: 0d66db33f37daf054bbe20901c0ccadbc4558854
-What's cooking in git.git (Aug 2021, #02; Tue, 3)
+What's cooking in git.git (Aug 2021, #03; Fri, 6)
--------------------------------------------------
Here are the topics that have been cooking in my tree. Commits
@@ -17,7 +17,11 @@ 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.
-A preview release Git 2.33-rc0 has been tagged.
+Git 2.33-rc1 has been tagged. The much less invasive "shopt -u
+checkwinsize" approach will be used to address the COLUMNS issue at
+least for the final release. I do not know what we want to do with
+the "log -m" means "log -m -p" issue yet (we haven't heard from the
+other camp), so it is in a "broken" state in -rc1.
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
@@ -50,120 +54,186 @@ Release tarballs are available at:
--------------------------------------------------
[Graduated to 'master']
-* ab/bundle-tests (2021-07-22) 2 commits
- (merged to 'next' on 2021-07-22 at 053b5d0ecf)
- + bundle tests: use test_cmp instead of grep
- + bundle tests: use ">file" not ": >file"
+* ab/getcwd-test (2021-07-30) 1 commit
+ (merged to 'next' on 2021-08-02 at 22ecd02929)
+ + t0001: fix broken not-quite getcwd(3) test in bed67874e2
- "git bundle" gained more test coverage.
+ Portability test update.
-* fc/pull-no-rebase-merges-theirs-into-ours (2021-07-21) 1 commit
- (merged to 'next' on 2021-07-28 at f8e6567082)
- + doc: pull: fix rebase=false documentation
+* ab/pickaxe-pcre2 (2021-08-04) 1 commit
+ (merged to 'next' on 2021-08-05 at 2c90b51f76)
+ + diff: --pickaxe-all typofix
- Documentation fix for "git pull --rebase=no".
+ Documentation update.
-* jk/check-pack-valid-before-opening-bitmap (2021-07-23) 1 commit
- (merged to 'next' on 2021-07-28 at 98d5b4dc68)
- + pack-bitmap: check pack validity when opening bitmap
+* ab/update-submitting-patches (2021-07-22) 2 commits
+ (merged to 'next' on 2021-07-30 at 9ae2de7f7a)
+ + SubmittingPatches: replace discussion of Travis with GitHub Actions
+ + SubmittingPatches: move discussion of Signed-off-by above "send"
- A race between repacking and using pack bitmaps has been corrected.
+ Reorganize and update the SubmitingPatches document.
-* jk/config-env-doc (2021-07-20) 3 commits
- (merged to 'next' on 2021-07-22 at 45616c831e)
- + doc/git-config: simplify "override" advice for FILES section
- + doc/git-config: clarify GIT_CONFIG environment variable
- + doc/git-config: explain --file instead of referring to GIT_CONFIG
+* ah/plugleaks (2021-07-26) 12 commits
+ (merged to 'next' on 2021-07-28 at fa15f6d1f4)
+ + reset: clear_unpack_trees_porcelain to plug leak
+ + builtin/rebase: fix options.strategy memory lifecycle
+ + builtin/merge: free found_ref when done
+ + builtin/mv: free or UNLEAK multiple pointers at end of cmd_mv
+ + convert: release strbuf to avoid leak
+ + read-cache: call diff_setup_done to avoid leak
+ + ref-filter: also free head for ATOM_HEAD to avoid leak
+ + diffcore-rename: move old_dir/new_dir definition to plug leak
+ + builtin/for-each-repo: remove unnecessary argv copy to plug leak
+ + builtin/submodule--helper: release unused strbuf to avoid leak
+ + environment: move strbuf into block to plug leak
+ + fmt-merge-msg: free newly allocated temporary strings when done
- Documentation around GIT_CONFIG has been updated.
+ Leak plugging.
-* js/ci-check-whitespace-updates (2021-07-14) 2 commits
- (merged to 'next' on 2021-07-22 at cdc9aa0622)
- + ci(check-whitespace): restrict to the intended commits
- + ci(check-whitespace): stop requiring a read/write token
+* ar/doc-markup-fix (2021-07-30) 1 commit
+ (merged to 'next' on 2021-08-02 at b99073fa75)
+ + Documentation: render special characters correctly
- CI update.
+ Doc mark-up fix.
-* jt/bulk-prefetch (2021-07-23) 2 commits
- (merged to 'next' on 2021-07-28 at 26e28cab21)
- + cache-tree: prefetch in partial clone read-tree
- + unpack-trees: refactor prefetching code
+* ar/submodule-add (2021-07-26) 5 commits
+ (merged to 'next' on 2021-07-28 at 7d315a0f67)
+ + submodule: drop unused sm_name parameter from show_fetch_remotes()
+ (merged to 'next' on 2021-07-22 at b8b636c9a1)
+ + submodule--helper: introduce add-clone subcommand
+ + submodule--helper: refactor module_clone()
+ + submodule: prefix die messages with 'fatal'
+ + t7400: test failure to add submodule in tracked path
+ (this branch is used by ar/submodule-add-config.)
- "git read-tree" had a codepath where blobs are fetched one-by-one
- from the promisor remote, which has been corrected to fetch in bulk.
+ Rewrite of "git submodule" in C continues.
-* pb/submodule-recurse-doc (2021-07-20) 1 commit
- (merged to 'next' on 2021-07-22 at 4129e89833)
- + doc: clarify description of 'submodule.recurse'
+* cb/t7508-regexp-fix (2021-08-02) 1 commit
+ (merged to 'next' on 2021-08-04 at 87e2b70ba1)
+ + t7508: avoid non POSIX BRE
- Doc update.
+ Test fix.
+
+
+* ds/commit-and-checkout-with-sparse-index (2021-07-20) 7 commits
+ (merged to 'next' on 2021-07-30 at 52ed1b0091)
+ + unpack-trees: resolve sparse-directory/file conflicts
+ + t1092: document bad 'git checkout' behavior
+ + checkout: stop expanding sparse indexes
+ + sparse-index: recompute cache-tree
+ + commit: integrate with sparse-index
+ + p2000: compress repo names
+ + p2000: add 'git checkout -' test and decrease depth
+ (this branch is used by ds/add-with-sparse-index.)
+
+ "git checkout" and "git commit" learn to work without unnecessarily
+ expanding sparse indexes.
+
+
+* en/ort-perf-batch-14 (2021-07-20) 7 commits
+ (merged to 'next' on 2021-07-30 at 89cfdc4513)
+ + merge-ort: restart merge with cached renames to reduce process entry cost
+ + merge-ort: avoid recursing into directories when we don't need to
+ + merge-ort: defer recursing into directories when merge base is matched
+ + merge-ort: add a handle_deferred_entries() helper function
+ + merge-ort: add data structures for allowable trivial directory resolves
+ + merge-ort: add some more explanations in collect_merge_info_callback()
+ + merge-ort: resolve paths early when we have sufficient information
+ (this branch is used by en/ort-perf-batch-15.)
+
+ Further optimization on "merge -sort" backend.
+
+
+* pb/merge-autostash-more (2021-07-23) 4 commits
+ (merged to 'next' on 2021-07-30 at bfc8b41932)
+ + merge: apply autostash if merge strategy fails
+ + merge: apply autostash if fast-forward fails
+ + Documentation: define 'MERGE_AUTOSTASH'
+ + merge: add missing word "strategy" to a message
+
+ The local changes stashed by "git merge --autostash" were lost when
+ the merge failed in certain ways, which has been corrected.
-* ps/perf-with-separate-output-directory (2021-07-02) 1 commit
- (merged to 'next' on 2021-07-22 at af51ca0a39)
- + perf: fix when running with TEST_OUTPUT_DIRECTORY
+* rs/use-fspathhash (2021-07-30) 1 commit
+ (merged to 'next' on 2021-08-02 at 72c388e867)
+ + use fspathhash() everywhere
- Test update.
+ Code simplification.
-* tb/bitmap-type-filter-comment-fix (2021-07-20) 1 commit
- (merged to 'next' on 2021-07-22 at 8428556149)
- + pack-bitmap: clarify comment in filter_bitmap_exclude_type()
+* tb/mingw-rmdir-symlink-to-directory (2021-08-02) 1 commit
+ (merged to 'next' on 2021-08-03 at a027d43cca)
+ + mingw: align symlinks-related rmdir() behavior with Linux
- In-code comment update.
+ Windows rmdir() equivalent behaves differently from POSIX ones in
+ that when used on a symbolic link that points at a directory, the
+ target directory gets removed, which has been corrected.
--------------------------------------------------
[New Topics]
-* ab/test-columns (2021-08-02) 3 commits
- - test-lib.sh: use GIT_TEST_COLUMNS over COLUMNS
- - test-lib-functions.sh: add a test_with_columns function
- - test-lib-functions.sh: rename test_must_fail_acceptable()
+* ps/fetch-pack-load-refs-optim (2021-08-04) 1 commit
+ - fetch-pack: speed up loading of refs via commit graph
+ Loading of ref tips to prepare for common ancestry negotiation in
+ "git fetch-pack" has been optimized by taking advantage of the
+ commit graph when available.
-* cb/reftable-fixup (2021-08-02) 3 commits
- - openbsd: allow reftable building with zlib 1.2.3
- - reftable: clarify zlib version dependency
- - fixup! Provide zlib's uncompress2 from compat/zlib-compat.c
- (this branch uses hn/reftable.)
+ Will merge to 'next'.
-* cb/t7508-regexp-fix (2021-08-02) 1 commit
- - t7508: avoid non POSIX BRE
+* ps/connectivity-optim (2021-08-05) 6 commits
+ - revision: avoid hitting packfiles when commits are in commit-graph
+ - commit-graph: split out function to search commit position
+ - revision: avoid loading object headers multiple times
+ - revision: stop retrieving reference twice
+ - connected: do not sort input revisions
+ - revision: separate walk and unsorted flags
+ The revision traversal API has been optimized by taking advanrage
+ of the commit-graph, when available, to determine if a commit is
+ reachable from any of the existing refs.
-* en/merge-strategy-docs (2021-08-03) 10 commits
- - Update error message and code comment
- - merge-strategies.txt: add coverage of the `ort` merge strategy
- - git-rebase.txt: correct out-of-date and misleading text about renames
- - merge-strategies.txt: fix simple capitalization error
- - merge-strategies.txt: avoid giving special preference to patience algorithm
- - merge-strategies.txt: do not imply using copy detection is desired
- - merge-strategies.txt: update wording for the resolve strategy
- - Documentation: edit awkward references to `git merge-recursive`
- - directory-rename-detection.txt: small updates due to merge-ort optimizations
- - git-rebase.txt: correct antiquated claims about --rebase-merges
- (this branch is used by en/ort-becomes-the-default.)
+ Looking good.
-* en/ort-becomes-the-default (2021-08-03) 2 commits
- - Change default merge backend from recursive to ort
- - Update docs for change of default merge backend
- (this branch uses en/merge-strategy-docs.)
+* ar/submodule-add-more (2021-08-06) 9 commits
+ - submodule--helper: remove resolve-relative-url subcommand
+ - submodule--helper: remove add-config subcommand
+ - submodule--helper: remove add-clone subcommand
+ - submodule--helper: convert the bulk of cmd_add() to C
+ - dir: libify and export helper functions from clone.c
+ - submodule--helper: remove repeated code in sync_submodule()
+ - submodule--helper: refactor resolve_relative_url() helper
+ - submodule--helper: add options for compute_submodule_clone_url()
+ - Merge branch 'ar/submodule-add-config' into ar/submodule-add
+ (this branch uses ar/submodule-add-config.)
+ More parts of "git submoudle add" has been rewritten in C.
-* js/log-protocol-version (2021-08-03) 1 commit
- - connect, protocol: log negotiated protocol version
+* cb/makefile-apple-clang (2021-08-06) 3 commits
+ - build: catch clang that identifies itself as "$VENDOR clang"
+ - build: clang version may not be followed by extra words
+ - build: update detect-compiler for newer Xcode version
-* ow/clone-bare-origin (2021-08-03) 1 commit
- - clone: Allow combining --bare and --origin
+ Build update.
+
+
+* jk/refs-files-cleanup-cleanup (2021-08-06) 1 commit
+ - refs: drop unused "flags" parameter to lock_ref_oid_basic()
+ (this branch uses ab/refs-files-cleanup.)
+
+ Code cleanup.
+
+ Will merge to 'next'.
--------------------------------------------------
[Stalled]
@@ -246,42 +316,61 @@ Release tarballs are available at:
--------------------------------------------------
[Cooking]
-* tb/mingw-rmdir-symlink-to-directory (2021-08-02) 1 commit
- (merged to 'next' on 2021-08-03 at a027d43cca)
- + mingw: align symlinks-related rmdir() behavior with Linux
+* cb/reftable-fixup (2021-08-02) 3 commits
+ - openbsd: allow reftable building with zlib 1.2.3
+ - reftable: clarify zlib version dependency
+ - fixup! Provide zlib's uncompress2 from compat/zlib-compat.c
+ (this branch uses hn/reftable.)
- Windows rmdir() equivalent behaves differently from POSIX ones in
- that when used on a symbolic link that points at a directory, the
- target directory gets removed, which has been corrected.
+ Fixes to another topic.
- Will merge to 'master'.
+ Will discard after they are picked up by the target topic.
-* ab/getcwd-test (2021-07-30) 1 commit
- (merged to 'next' on 2021-08-02 at 22ecd02929)
- + t0001: fix broken not-quite getcwd(3) test in bed67874e2
+* en/merge-strategy-docs (2021-08-05) 10 commits
+ - Update error message and code comment
+ - merge-strategies.txt: add coverage of the `ort` merge strategy
+ - git-rebase.txt: correct out-of-date and misleading text about renames
+ - merge-strategies.txt: fix simple capitalization error
+ - merge-strategies.txt: avoid giving special preference to patience algorithm
+ - merge-strategies.txt: do not imply using copy detection is desired
+ - merge-strategies.txt: update wording for the resolve strategy
+ - Documentation: edit awkward references to `git merge-recursive`
+ - directory-rename-detection.txt: small updates due to merge-ort optimizations
+ - git-rebase.txt: correct antiquated claims about --rebase-merges
+ (this branch is used by en/ort-becomes-the-default.)
- Portability test update.
+ Documentation updates.
- Will merge to 'master'.
+ Expecting a (hopefully final) reroll.
-* ar/doc-markup-fix (2021-07-30) 1 commit
- (merged to 'next' on 2021-08-02 at b99073fa75)
- + Documentation: render special characters correctly
+* en/ort-becomes-the-default (2021-08-05) 2 commits
+ - Update docs for change of default merge backend
+ - Change default merge backend from recursive to ort
+ (this branch uses en/merge-strategy-docs.)
- Doc mark-up fix.
+ Use `ort` instead of `recursive` as the default merge strategy.
- Will merge to 'master'.
+ Waiting for the base topic to settle.
-* rs/use-fspathhash (2021-07-30) 1 commit
- (merged to 'next' on 2021-08-02 at 72c388e867)
- + use fspathhash() everywhere
+* js/log-protocol-version (2021-08-03) 1 commit
+ - connect, protocol: log negotiated protocol version
- Code simplification.
+ Debugging aid.
+
+ Expecting a reroll.
+
+
+* ow/clone-bare-origin (2021-08-03) 1 commit
+ - clone: Allow combining --bare and --origin
+
+ "git clone" did not like to take "--bare" and "--origin=X" at the
+ same time; loosen the restriction.
- Will merge to 'master'.
+ Under discussion. This may require some follow-on work.
+ cf. <20210802174944.53745-1-oystwa@gmail.com>
* jc/bisect-sans-show-branch (2021-07-28) 2 commits
@@ -322,10 +411,11 @@ Release tarballs are available at:
Will cook in 'next'.
-* ab/lib-subtest (2021-07-21) 10 commits
+* ab/lib-subtest (2021-08-05) 11 commits
- test-lib tests: assert 1 exit code, not non-zero
- test-lib tests: refactor common part of check_sub_test_lib_test*()
- test-lib tests: avoid subshell for "test_cmp" for readability
+ - test-lib tests: assert no copy/pasted mock test code
- test-lib tests: get rid of copy/pasted mock test code
- test-lib tests: don't provide a description for the sub-tests
- test-lib tests: stop using a subshell in write_sub_test_lib_test()
@@ -344,7 +434,6 @@ Release tarballs are available at:
+ pathspec: stop calling ensure_full_index
+ add: allow operating on a sparse-only index
+ t1092: test merge conflicts outside cone
- (this branch uses ds/commit-and-checkout-with-sparse-index.)
"git add" can work better with the sparse index.
@@ -364,7 +453,7 @@ Release tarballs are available at:
Further tweaks on progress API.
-* ab/progress-users-adjust-counters (2021-07-23) 3 commits
+* ab/progress-users-adjust-counters (2021-08-05) 3 commits
- entry: show finer-grained counter in "Filtering content" progress line
- midx: don't provide a total for QSORT() progress
- commit-graph: fix bogus counter in "Scanning merged commits" progress line
@@ -372,91 +461,57 @@ Release tarballs are available at:
The code to show progress indicator in a few codepaths did not
cover between 0-100%, which has been corrected.
- Waiting for a clarification.
- cf. <xmqqbl6slmer.fsf@gitster.g>
-
-* ar/submodule-add-config (2021-07-28) 1 commit
+* ar/submodule-add-config (2021-08-05) 1 commit
- submodule--helper: introduce add-config subcommand
- (this branch uses ar/submodule-add.)
+ (this branch is used by ar/submodule-add-more.)
Large part of "git submodule add" gets rewritten in C.
* en/ort-perf-batch-15 (2021-08-03) 9 commits
- - merge-ort: remove compile-time ability to turn off usage of memory pools
- - merge-ort: reuse path strings in pool_alloc_filespec
- - merge-ort: store filepairs and filespecs in our mem_pool
- - diffcore-rename, merge-ort: add wrapper functions for filepair alloc/dealloc
- - merge-ort: switch our strmaps over to using memory pools
- - merge-ort: set up a memory pool
- - merge-ort: add pool_alloc, pool_calloc, and pool_strndup wrappers
- - diffcore-rename: use a mem_pool for exact rename detection's hashmap
- - merge-ort: rename str{map,intmap,set}_func()
- (this branch uses en/ort-perf-batch-14.)
+ (merged to 'next' on 2021-08-04 at 87fc290e71)
+ + merge-ort: remove compile-time ability to turn off usage of memory pools
+ + merge-ort: reuse path strings in pool_alloc_filespec
+ + merge-ort: store filepairs and filespecs in our mem_pool
+ + diffcore-rename, merge-ort: add wrapper functions for filepair alloc/dealloc
+ + merge-ort: switch our strmaps over to using memory pools
+ + merge-ort: set up a memory pool
+ + merge-ort: add pool_alloc, pool_calloc, and pool_strndup wrappers
+ + diffcore-rename: use a mem_pool for exact rename detection's hashmap
+ + merge-ort: rename str{map,intmap,set}_func()
Final batch for "merge -sort" optimization.
- Will merge to 'next'.
-
-
-* pb/merge-autostash-more (2021-07-23) 4 commits
- (merged to 'next' on 2021-07-30 at bfc8b41932)
- + merge: apply autostash if merge strategy fails
- + merge: apply autostash if fast-forward fails
- + Documentation: define 'MERGE_AUTOSTASH'
- + merge: add missing word "strategy" to a message
-
- The local changes stashed by "git merge --autostash" were lost when
- the merge failed in certain ways, which has been corrected.
-
- Will merge to 'master'.
-
-
-* ah/plugleaks (2021-07-26) 12 commits
- (merged to 'next' on 2021-07-28 at fa15f6d1f4)
- + reset: clear_unpack_trees_porcelain to plug leak
- + builtin/rebase: fix options.strategy memory lifecycle
- + builtin/merge: free found_ref when done
- + builtin/mv: free or UNLEAK multiple pointers at end of cmd_mv
- + convert: release strbuf to avoid leak
- + read-cache: call diff_setup_done to avoid leak
- + ref-filter: also free head for ATOM_HEAD to avoid leak
- + diffcore-rename: move old_dir/new_dir definition to plug leak
- + builtin/for-each-repo: remove unnecessary argv copy to plug leak
- + builtin/submodule--helper: release unused strbuf to avoid leak
- + environment: move strbuf into block to plug leak
- + fmt-merge-msg: free newly allocated temporary strings when done
-
- Leak plugging.
-
- Will merge to 'master'.
+ Will cook in 'next'.
* js/expand-runtime-prefix (2021-07-26) 6 commits
- - expand_user_path: allow in-flight topics to keep using the old name
- - interpolate_path(): allow specifying paths relative to the runtime prefix
- - Use a better name for the function interpolating paths
- - expand_user_path(): clarify the role of the `real_home` parameter
- - expand_user_path(): remove stale part of the comment
- - tests: exercise the RUNTIME_PREFIX feature
+ (merged to 'next' on 2021-08-04 at b95a81a004)
+ + expand_user_path: allow in-flight topics to keep using the old name
+ + interpolate_path(): allow specifying paths relative to the runtime prefix
+ + Use a better name for the function interpolating paths
+ + expand_user_path(): clarify the role of the `real_home` parameter
+ + expand_user_path(): remove stale part of the comment
+ + tests: exercise the RUNTIME_PREFIX feature
Pathname expansion (like "~username/") learned a way to specify a
location relative to Git installation (e.g. its $sharedir which is
$(prefix)/share), with "%(prefix)".
- Will merge to 'next'.
+ Will cook in 'next'.
* zh/cherry-pick-help-is-only-for-sequencer (2021-08-03) 2 commits
- - cherry-pick: use better advice message
- - cherry-pick: fix bug when used with GIT_CHERRY_PICK_HELP
+ (merged to 'next' on 2021-08-04 at 9ea14ed106)
+ + cherry-pick: use better advice message
+ + cherry-pick: fix bug when used with GIT_CHERRY_PICK_HELP
"git cherry-pick" loses its state file when a stray
GIT_CHERRY_PICK_HELP environment is present, which has been
corrected.
- Will merge to 'next'.
+ Will cook in 'next'.
* dt/submodule-diff-fixes (2021-08-02) 3 commits
@@ -468,7 +523,8 @@ Release tarballs are available at:
trying to run diff inside a submodule, when the user manually
removes the submodule directory.
- Comments?
+ Seems to break CI when merged to 'seen'
+ cf. https://github.com/git/git/runs/3259477809?check_suite_focus=true#step:4:2618
* fs/ssh-signing (2021-08-03) 9 commits
@@ -488,22 +544,23 @@ Release tarballs are available at:
* hn/refs-test-cleanup (2021-08-02) 11 commits
- - t6001: avoid direct file system access
- - t6500: use "ls -1" to snapshot ref database state
- - t7064: use update-ref -d to remove upstream branch
- - t1410: mark test as REFFILES
- - t1405: mark test for 'git pack-refs' as REFFILES
- - t1405: use 'git reflog exists' to check reflog existence
- - t2402: use ref-store test helper to create broken symlink
- - t3320: use git-symbolic-ref rather than filesystem access
- - t6120: use git-update-ref rather than filesystem access
- - t1503: mark symlink test as REFFILES
- - t6050: use git-update-ref rather than filesystem access
+ (merged to 'next' on 2021-08-04 at 5651c32f4b)
+ + t6001: avoid direct file system access
+ + t6500: use "ls -1" to snapshot ref database state
+ + t7064: use update-ref -d to remove upstream branch
+ + t1410: mark test as REFFILES
+ + t1405: mark test for 'git pack-refs' as REFFILES
+ + t1405: use 'git reflog exists' to check reflog existence
+ + t2402: use ref-store test helper to create broken symlink
+ + t3320: use git-symbolic-ref rather than filesystem access
+ + t6120: use git-update-ref rather than filesystem access
+ + t1503: mark symlink test as REFFILES
+ + t6050: use git-update-ref rather than filesystem access
A handful of tests that assumed implementation details of files
backend for refs have been cleaned up.
- Will merge to 'next'.
+ Will cook in 'next'.
* hn/reftable (2021-07-20) 26 commits
@@ -538,23 +595,25 @@ Release tarballs are available at:
The "reftable" backend for the refs API.
Seems to break CI jobs in 'seen'.
+ cf. https://github.com/git/git/runs/3257622953?check_suite_focus=true#step:4:1685
* ab/refs-files-cleanup (2021-08-02) 11 commits
- - refs/files: remove unused "errno != ENOTDIR" condition
- - refs/files: remove unused "errno == EISDIR" code
- - refs/files: remove unused "oid" in lock_ref_oid_basic()
- - reflog expire: don't lock reflogs using previously seen OID
- - refs/files: add a comment about refs_reflog_exists() call
- - refs: make repo_dwim_log() accept a NULL oid
- - refs/debug: re-indent argument list for "prepare"
- - refs/files: remove unused "skip" in lock_raw_ref() too
- - refs/files: remove unused "extras/skip" in lock_ref_oid_basic()
- - refs/files: remove unused REF_DELETING in lock_ref_oid_basic()
- - refs/packet: add missing BUG() invocations to reflog callbacks
- (this branch is used by hn/refs-errno-cleanup.)
+ (merged to 'next' on 2021-08-04 at 8ca0ef1b6e)
+ + refs/files: remove unused "errno != ENOTDIR" condition
+ + refs/files: remove unused "errno == EISDIR" code
+ + refs/files: remove unused "oid" in lock_ref_oid_basic()
+ + reflog expire: don't lock reflogs using previously seen OID
+ + refs/files: add a comment about refs_reflog_exists() call
+ + refs: make repo_dwim_log() accept a NULL oid
+ + refs/debug: re-indent argument list for "prepare"
+ + refs/files: remove unused "skip" in lock_raw_ref() too
+ + refs/files: remove unused "extras/skip" in lock_ref_oid_basic()
+ + refs/files: remove unused REF_DELETING in lock_ref_oid_basic()
+ + refs/packet: add missing BUG() invocations to reflog callbacks
+ (this branch is used by hn/refs-errno-cleanup and jk/refs-files-cleanup-cleanup.)
- Will merge to 'next'.
+ Will cook in 'next'.
* en/pull-conflicting-options (2021-07-22) 8 commits
@@ -585,22 +644,6 @@ Release tarballs are available at:
cf. <bf1893ee-6973-d8b2-659e-bb239a0a9ae2@gmail.com>
-* en/ort-perf-batch-14 (2021-07-20) 7 commits
- (merged to 'next' on 2021-07-30 at 89cfdc4513)
- + merge-ort: restart merge with cached renames to reduce process entry cost
- + merge-ort: avoid recursing into directories when we don't need to
- + merge-ort: defer recursing into directories when merge base is matched
- + merge-ort: add a handle_deferred_entries() helper function
- + merge-ort: add data structures for allowable trivial directory resolves
- + merge-ort: add some more explanations in collect_merge_info_callback()
- + merge-ort: resolve paths early when we have sufficient information
- (this branch is used by en/ort-perf-batch-15.)
-
- Further optimization on "merge -sort" backend.
-
- Will merge to 'master'.
-
-
* cf/fetch-set-upstream-while-detached (2021-07-06) 1 commit
- fetch: fix segfault on --set-upstream while on a detached HEAD
@@ -612,41 +655,26 @@ Release tarballs are available at:
* ab/bundle-doc (2021-08-02) 4 commits
- - bundle doc: replace "basis" with "prerequsite(s)"
- - bundle doc: elaborate on rev<->ref restriction
- - bundle doc: elaborate on object prerequisites
- - bundle doc: rewrite the "DESCRIPTION" section
+ (merged to 'next' on 2021-08-04 at b3b3b0fa98)
+ + bundle doc: replace "basis" with "prerequsite(s)"
+ + bundle doc: elaborate on rev<->ref restriction
+ + bundle doc: elaborate on object prerequisites
+ + bundle doc: rewrite the "DESCRIPTION" section
Doc update.
- Will merge to 'next'.
+ Will cook in 'next'.
* ab/pack-stdin-packs-fix (2021-07-09) 2 commits
- - pack-objects: fix segfault in --stdin-packs option
- - pack-objects tests: cover blindspots in stdin handling
+ (merged to 'next' on 2021-08-04 at f464b74a6f)
+ + pack-objects: fix segfault in --stdin-packs option
+ + pack-objects tests: cover blindspots in stdin handling
Input validation of "git pack-objects --stdin-packs" has been
corrected.
- Will merge to 'next'.
-
-
-* ds/commit-and-checkout-with-sparse-index (2021-07-20) 7 commits
- (merged to 'next' on 2021-07-30 at 52ed1b0091)
- + unpack-trees: resolve sparse-directory/file conflicts
- + t1092: document bad 'git checkout' behavior
- + checkout: stop expanding sparse indexes
- + sparse-index: recompute cache-tree
- + commit: integrate with sparse-index
- + p2000: compress repo names
- + p2000: add 'git checkout -' test and decrease depth
- (this branch is used by ds/add-with-sparse-index.)
-
- "git checkout" and "git commit" learn to work without unnecessarily
- expanding sparse indexes.
-
- Will merge to 'master'.
+ Will cook in 'next'.
* jt/push-negotiation-fixes (2021-07-15) 3 commits
@@ -660,9 +688,9 @@ Release tarballs are available at:
Needs review.
-* ab/make-tags-cleanup (2021-07-22) 5 commits
+* ab/make-tags-cleanup (2021-08-05) 5 commits
- Makefile: normalize clobbering & xargs for tags targets
- - Makefile: the "cscope" target always creates a "cscope.out"
+ - Makefile: remove "cscope.out", not "cscope*" in cscope.out target
- Makefile: don't use "FORCE" for tags targets
- Makefile: add QUIET_GEN to "cscope" target
- Makefile: move ".PHONY: cscope" near its target
@@ -752,16 +780,13 @@ Release tarballs are available at:
Waiting for reviews.
-* ab/serve-cleanup (2021-08-03) 13 commits
- - fixup! {upload,receive}-pack tests: add --advertise-refs tests
- - serve.[ch]: don't pass "struct strvec *keys" to commands
- - upload-pack.c: convert to new serve.c "startup" config cb
+* ab/serve-cleanup (2021-08-05) 10 commits
- upload-pack: document and rename --advertise-refs
- - {upload,receive}-pack tests: add --advertise-refs tests
- serve.[ch]: remove "serve_options", split up --advertise-refs code
+ - {upload,receive}-pack tests: add --advertise-refs tests
- serve.c: move version line to advertise_capabilities()
- - serve: add support for a "startup" git_config() callback
- - serve.c: add call_{advertise,command}() indirection
+ - serve: move transfer.advertiseSID check into session_id_advertise()
+ - serve.[ch]: don't pass "struct strvec *keys" to commands
- serve: use designated initializers
- transport: use designated initializers
- transport: rename "fetch" in transport_vtable to "fetch_refs"
@@ -769,41 +794,47 @@ Release tarballs are available at:
Code clean-up around "git serve".
+ Expecting a reroll.
+
-* pw/diff-color-moved-fix (2021-07-20) 12 commits
- - diff --color-moved: intern strings
- - diff: use designated initializers for emitted_diff_symbol
- - diff --color-moved-ws=allow-indentation-change: improve hash lookups
- - diff --color-moved: stop clearing potential moved blocks
- - diff --color-moved: shrink potential moved blocks as we go
- - diff --color-moved: unify moved block growth functions
- - diff --color-moved: call comparison function directly
- - diff --color-moved-ws=allow-indentation-change: simplify and optimize
- - diff: simplify allow-indentation-change delta calculation
- - diff --color-moved: avoid false short line matches and bad zerba coloring
- - diff --color-moved=zebra: fix alternate coloring
- - diff --color-moved: add perf tests
+* pw/diff-color-moved-fix (2021-08-05) 13 commits
+ (merged to 'next' on 2021-08-05 at 7b5e312aac)
+ + diff: drop unused options parameter from cmp_in_block_with_wsd()
+ (merged to 'next' on 2021-08-04 at 4de4a451e0)
+ + diff --color-moved: intern strings
+ + diff: use designated initializers for emitted_diff_symbol
+ + diff --color-moved-ws=allow-indentation-change: improve hash lookups
+ + diff --color-moved: stop clearing potential moved blocks
+ + diff --color-moved: shrink potential moved blocks as we go
+ + diff --color-moved: unify moved block growth functions
+ + diff --color-moved: call comparison function directly
+ + diff --color-moved-ws=allow-indentation-change: simplify and optimize
+ + diff: simplify allow-indentation-change delta calculation
+ + diff --color-moved: avoid false short line matches and bad zerba coloring
+ + diff --color-moved=zebra: fix alternate coloring
+ + diff --color-moved: add perf tests
Long-overdue correctness and performance update to "diff
--color-moved" feature.
- Will merge to 'next'.
+ Will cook in 'next'.
* hn/refs-errno-cleanup (2021-08-02) 7 commits
- - refs: make errno output explicit for refs_resolve_ref_unsafe
- - refs: explicitly return failure_errno from parse_loose_ref_contents
- - refs: add failure_errno to refs_read_raw_ref() signature
- - refs: make errno output explicit for read_raw_ref_fn
- - refs/files-backend: stop setting errno from lock_ref_oid_basic
- - refs: remove EINVAL errno output from specification of read_raw_ref_fn
- - refs file backend: move raceproof_create_file() here
+ (merged to 'next' on 2021-08-04 at 7fe3c31e7f)
+ + refs: make errno output explicit for refs_resolve_ref_unsafe
+ + refs: explicitly return failure_errno from parse_loose_ref_contents
+ + refs: add failure_errno to refs_read_raw_ref() signature
+ + refs: make errno output explicit for read_raw_ref_fn
+ + refs/files-backend: stop setting errno from lock_ref_oid_basic
+ + refs: remove EINVAL errno output from specification of read_raw_ref_fn
+ + refs file backend: move raceproof_create_file() here
(this branch uses ab/refs-files-cleanup.)
Futz with the way 'errno' is relied on in the refs API to carry the
failure modes up the callchain.
- Will merge to 'next'.
+ Will cook in 'next'.
* ab/test-tool-cache-cleanup (2021-06-08) 4 commits
@@ -814,7 +845,7 @@ Release tarballs are available at:
Test code shuffling.
- Waiting for reviews.
+ Expecting a reroll.
* ab/pack-objects-stdin (2021-07-09) 5 commits
@@ -826,45 +857,23 @@ Release tarballs are available at:
Introduce handle_stdin_line callback to revision API and uses it.
-
-* ar/submodule-add (2021-07-26) 5 commits
- (merged to 'next' on 2021-07-28 at 7d315a0f67)
- + submodule: drop unused sm_name parameter from show_fetch_remotes()
- (merged to 'next' on 2021-07-22 at b8b636c9a1)
- + submodule--helper: introduce add-clone subcommand
- + submodule--helper: refactor module_clone()
- + submodule: prefix die messages with 'fatal'
- + t7400: test failure to add submodule in tracked path
- (this branch is used by ar/submodule-add-config.)
-
- Rewrite of "git submodule" in C continues.
-
- Will merge to 'master'.
-
-
-* ab/update-submitting-patches (2021-07-22) 2 commits
- (merged to 'next' on 2021-07-30 at 9ae2de7f7a)
- + SubmittingPatches: replace discussion of Travis with GitHub Actions
- + SubmittingPatches: move discussion of Signed-off-by above "send"
-
- Reorganize and update the SubmitingPatches document.
-
- Will merge to 'master'.
+ Waiting for reviews.
* zh/ref-filter-raw-data (2021-07-26) 6 commits
- - ref-filter: add %(rest) atom
- - ref-filter: use non-const ref_format in *_atom_parser()
- - ref-filter: --format=%(raw) support --perl
- - ref-filter: add %(raw) atom
- - ref-filter: add obj-type check in grab contents
- - Merge branch 'zh/cat-file-batch-fix' into zh/ref-filter-raw-data
+ (merged to 'next' on 2021-08-04 at 4c4529d8d0)
+ + ref-filter: add %(rest) atom
+ + ref-filter: use non-const ref_format in *_atom_parser()
+ + ref-filter: --format=%(raw) support --perl
+ + ref-filter: add %(raw) atom
+ + ref-filter: add obj-type check in grab contents
+ + Merge branch 'zh/cat-file-batch-fix' into zh/ref-filter-raw-data
Prepare the "ref-filter" machinery that drives the "--format"
option of "git for-each-ref" and its friends to be used in "git
cat-file --batch".
- Will merge to 'next'.
+ Will cook in 'next'.
* jh/builtin-fsmonitor (2021-07-12) 35 commits
@@ -911,13 +920,14 @@ Release tarballs are available at:
* es/trace2-log-parent-process-name (2021-07-22) 2 commits
- - tr2: log parent process name
- - tr2: make process info collection platform-generic
+ (merged to 'next' on 2021-08-04 at 47e35c31b0)
+ + tr2: log parent process name
+ + tr2: make process info collection platform-generic
trace2 logs learned to show parent process name to see in what
context Git was invoked.
- Will merge to 'next'.
+ Will cook in 'next'.
* ab/fsck-unexpected-type (2021-07-12) 21 commits
@@ -951,64 +961,17 @@ Release tarballs are available at:
--------------------------------------------------
[Discarded]
-* ab/doc-retire-alice-bob (2021-06-16) 6 commits
- . pack-protocol doc: use "www-data" in place of "alice"
- . doc: replace "alice" and "bob" with "jdoe" and "msmith"
- . fast-import doc: change "bob" in an example to "file.txt"
- . daemon doc + code comments: reword "alice" example
- . gitcvs-migration doc: replace "alice" and "bob" with "you" and "www-data"
- . gittutorial doc: replace "alice" and "bob" with "you" and "www-data"
-
- Documentation update to avoid Alice and Bob in contexts where Eve
- does not appear in.
-
- Will discard.
- Let's shelve this one for now, as it does not seem to solve any
- real problems (other than ceasing to use Alice and Bob in contexts
- that do not call for Eve).
-
-
-* hn/refs-test-cleanup-contd (2021-07-22) 11 commits
- (merged to 'next' on 2021-07-28 at dd3af04939)
- + t6001: avoid direct file system access
- + t6500: use "ls -1" to snapshot ref database state
- + t7064: use update-ref -d to remove upstream branch
- + t1410: mark test as REFFILES
- + t1405: mark test for 'git pack-refs' as REFFILES
- + t1405: use 'git reflog exists' to check reflog existence
- (merged to 'next' on 2021-07-22 at 2ab8bc259a)
- + t2402: use ref-store test helper to create broken symlink
- + t3320: use git-symbolic-ref rather than filesystem access
- + t6120: use git-update-ref rather than filesystem access
- + t1503: mark symlink test as REFFILES
- + t6050: use git-update-ref rather than filesystem access
-
- Absorbed by the hn/refs-test-cleanup topic.
+* ab/test-columns (2021-08-05) 3 commits
+ - test-lib.sh: use GIT_TEST_COLUMNS over COLUMNS
+ - test-lib-functions.sh: add a test_with_columns function
+ - test-lib-functions.sh: rename test_must_fail_acceptable()
+ Shells that adjust COLUMNS (e.g. bash with checkwinsize shell
+ option), affect and break tests on progress meters and anything
+ that depends on term_columns(). An test-only environment variable
+ has been introduced as a workaround.
-* os/bisect-runs-show-branch-without-pager (2021-07-27) 1 commit
- - bisect: disable pager while invoking show-branch
+ Seems too involved for a last-minute fix.
+ cf. <20210804212825.GH23408@szeder.dev>
- When "git bisect" spawns "git show-branch" to pretty-print the
- title of the commit to be tested, it could have invoked user's
- pager if user configured to run pager while running show-branch.
- The invocation of show-branch has been changed to disable pager,
- even if one is configured.
- Will discard.
- This probably is unnecessary with the rewrite to get rid of the
- show-branch invocation altogether.
-
-
-* es/config-based-hooks (2021-07-20) 9 commits
- - hook: implement hookcmd.<name>.skip
- - hook: teach 'hookcmd' config to alias hook scripts
- - hook: allow out-of-repo 'git hook' invocations
- - hook: include hooks from the config
- - hook: allow running non-native hooks
- - hook: treat hookdir hook specially
- - hook: introduce "git hook list"
- - hook: allow parallel hook execution
- - hook: run a list of hooks instead
-
- Discarded to give room for updated ab/config-based-hooks-base.