mirror of
https://github.com/git/git.git
synced 2026-01-21 08:00:54 +00:00
What's cooking (2021/08 #04)
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
To: git@vger.kernel.org
|
||||
Subject: What's cooking in git.git (Aug 2021, #03; Fri, 6)
|
||||
Subject: What's cooking in git.git (Aug 2021, #04; Tue, 10)
|
||||
X-master-at: 2d755dfac9aadab25c3e025b849252b8c0a61465
|
||||
X-next-at: 0d66db33f37daf054bbe20901c0ccadbc4558854
|
||||
X-next-at: d937d09924f20c2ef76e4ae1cc20f566d2ecf953
|
||||
|
||||
What's cooking in git.git (Aug 2021, #03; Fri, 6)
|
||||
What's cooking in git.git (Aug 2021, #04; Tue, 10)
|
||||
--------------------------------------------------
|
||||
|
||||
Here are the topics that have been cooking in my tree. Commits
|
||||
@@ -17,11 +17,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.
|
||||
|
||||
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.
|
||||
Git 2.33-rc2 will be tagged tomorrow, with a few build and
|
||||
regression fixes (not in 'master' yet as of this writing).
|
||||
|
||||
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
|
||||
@@ -51,190 +48,143 @@ Release tarballs are available at:
|
||||
|
||||
https://www.kernel.org/pub/software/scm/git/
|
||||
|
||||
--------------------------------------------------
|
||||
[Graduated to 'master']
|
||||
|
||||
* 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
|
||||
|
||||
Portability test update.
|
||||
|
||||
|
||||
* ab/pickaxe-pcre2 (2021-08-04) 1 commit
|
||||
(merged to 'next' on 2021-08-05 at 2c90b51f76)
|
||||
+ diff: --pickaxe-all typofix
|
||||
|
||||
Documentation update.
|
||||
|
||||
|
||||
* 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.
|
||||
|
||||
|
||||
* 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.
|
||||
|
||||
|
||||
* ar/doc-markup-fix (2021-07-30) 1 commit
|
||||
(merged to 'next' on 2021-08-02 at b99073fa75)
|
||||
+ Documentation: render special characters correctly
|
||||
|
||||
Doc mark-up fix.
|
||||
|
||||
|
||||
* 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.
|
||||
|
||||
|
||||
* cb/t7508-regexp-fix (2021-08-02) 1 commit
|
||||
(merged to 'next' on 2021-08-04 at 87e2b70ba1)
|
||||
+ t7508: avoid non POSIX BRE
|
||||
|
||||
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.
|
||||
|
||||
|
||||
* rs/use-fspathhash (2021-07-30) 1 commit
|
||||
(merged to 'next' on 2021-08-02 at 72c388e867)
|
||||
+ use fspathhash() everywhere
|
||||
|
||||
Code simplification.
|
||||
|
||||
|
||||
* 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
|
||||
|
||||
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]
|
||||
|
||||
* ps/fetch-pack-load-refs-optim (2021-08-04) 1 commit
|
||||
- fetch-pack: speed up loading of refs via commit graph
|
||||
* cb/builtin-merge-format-string-fix (2021-08-09) 1 commit
|
||||
- builtin/merge: avoid -Wformat-extra-args from ancient Xcode
|
||||
|
||||
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.
|
||||
Code clean-up.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* 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
|
||||
* cb/many-alternate-optim-fixup (2021-08-09) 2 commits
|
||||
(merged to 'next' on 2021-08-09 at 3572bef349)
|
||||
+ object-store: avoid extra ';' from KHASH_INIT
|
||||
+ oidtree: avoid nested struct oidtree_node
|
||||
(this branch is used by cb/ci-build-pedantic.)
|
||||
|
||||
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.
|
||||
Build fix.
|
||||
|
||||
Looking good.
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* 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.)
|
||||
* ka/want-ref-in-namespace (2021-08-09) 3 commits
|
||||
- docs: clarify the interaction of transfer.hideRefs and namespaces
|
||||
- upload-pack.c: treat want-ref relative to namespace
|
||||
- t5730: introduce fetch command helper
|
||||
|
||||
More parts of "git submoudle add" has been rewritten in C.
|
||||
"git upload-pack" which runs on the other side of "git fetch"
|
||||
forgot to take the ref namespaces into account when handling
|
||||
want-ref requests.
|
||||
|
||||
|
||||
* 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
|
||||
* np/blame-ignore-revs-file-may-be-optional (2021-08-09) 1 commit
|
||||
- blame: add config `blame.ignoreRevsFileIsOptional`
|
||||
|
||||
Build update.
|
||||
When the file named by blame.ignoreRevsFile configuration variable
|
||||
does not exist, it causes "git blame" to die. Sometimes, it is
|
||||
useful if the files named by configuration variables can be made
|
||||
optional (it would allow ~/.gitconfig to give a filename, and make
|
||||
it effective only in repositories that have a file with that name).
|
||||
|
||||
This uses an extra variable that marks that the variable is
|
||||
optional. Yet another alternative is being discussed to define
|
||||
syntax for "optional" filename values, so that the same mechanism
|
||||
can be used for not just blame.ignoreRevsFile but other filenames.
|
||||
|
||||
Queued just as a reminder of the theme.
|
||||
|
||||
|
||||
* 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.)
|
||||
* cb/ci-build-pedantic (2021-08-09) 1 commit
|
||||
- ci: run a pedantic build as part of the GitHub workflow
|
||||
(this branch uses cb/many-alternate-optim-fixup.)
|
||||
|
||||
Code cleanup.
|
||||
CI update.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* jn/log-m-does-not-imply-p (2021-08-09) 1 commit
|
||||
(merged to 'next' on 2021-08-09 at d937d09924)
|
||||
+ Revert 'diff-merges: let "-m" imply "-p"'
|
||||
|
||||
Earlier "git log -m" was changed to always produce patch output,
|
||||
which would break existing scripts, which has been reverted.
|
||||
|
||||
Will merge to 'master'.
|
||||
|
||||
|
||||
* ds/sparse-index-ignored-files (2021-08-10) 9 commits
|
||||
- sparse-checkout: clear tracked sparse dirs
|
||||
- sparse-index: add SPARSE_INDEX_IGNORE_CONFIG flag
|
||||
- attr: be careful about sparse directories
|
||||
- sparse-checkout: create helper methods
|
||||
- unpack-trees: fix nested sparse-dir search
|
||||
- sparse-index: silently return when cache tree fails
|
||||
- sparse-index: silently return when not using cone-mode patterns
|
||||
- t7519: rewrite sparse index test
|
||||
- Merge branch 'ds/add-with-sparse-index' into ds/sparse-index-ignored-files
|
||||
(this branch uses ds/add-with-sparse-index.)
|
||||
|
||||
In cone mode, the sparse-index codepath learned to remove ignored
|
||||
files (like build artifacts) outside the sparse cone, allowing the
|
||||
entire directory outside the sparse cone to be removed, which is
|
||||
especially useful when the sparse patterns change.
|
||||
|
||||
|
||||
* jc/userdiff-pattern-hint (2021-08-10) 1 commit
|
||||
- userdiff: comment on the builtin patterns
|
||||
|
||||
Remind developers that the userdiff patterns should be kept simple
|
||||
and permissive, assuming that the contents they apply are always
|
||||
syntactically correct.
|
||||
|
||||
|
||||
* jk/apply-binary-hunk-parsing-fix (2021-08-10) 1 commit
|
||||
- apply: keep buffer/size pair in sync when parsing binary hunks
|
||||
|
||||
"git apply" miscounted the bytes and failed to read to the end of
|
||||
binary hunks.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* jk/range-diff-fixes (2021-08-10) 3 commits
|
||||
- range-diff: use ssize_t for parsed "len" in read_patches()
|
||||
- range-diff: handle unterminated lines in read_patches()
|
||||
- range-diff: drop useless "offset" variable from read_patches()
|
||||
|
||||
"git range-diff" code clean-up.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* js/advise-when-skipping-cherry-picked (2021-08-10) 2 commits
|
||||
- SQUASH???
|
||||
- sequencer: advise if skipping cherry-picked commit
|
||||
|
||||
"git rebase" by default skips changes that are equivalent to
|
||||
commits that are already in the history the branch is rebased onto;
|
||||
give messages when this happens to let the users be aware of
|
||||
skipped commits, and also teach them how to tell "rebase" to keep
|
||||
duplicated changes.
|
||||
|
||||
|
||||
* jt/grep-wo-submodule-odb-as-alternate (2021-08-10) 7 commits
|
||||
- t7814: show lack of alternate ODB-adding
|
||||
- grep: add repository to OID grep sources
|
||||
- grep: allocate subrepos on heap
|
||||
- grep: read submodule entry with explicit repo
|
||||
- grep: typesafe versions of grep_source_init
|
||||
- grep: use submodule-ODB-as-alternate lazy-addition
|
||||
- submodule: lazily add submodule ODBs as alternates
|
||||
|
||||
The code to make "git grep" recurse into submodules has been
|
||||
updated to migrate away from the "add submodule's object store as
|
||||
an alternate object store" mechanism (which is suboptimal).
|
||||
|
||||
--------------------------------------------------
|
||||
[Stalled]
|
||||
|
||||
@@ -316,6 +266,65 @@ Release tarballs are available at:
|
||||
--------------------------------------------------
|
||||
[Cooking]
|
||||
|
||||
* ps/fetch-pack-load-refs-optim (2021-08-04) 1 commit
|
||||
(merged to 'next' on 2021-08-09 at 4744a01fd5)
|
||||
+ 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.
|
||||
|
||||
Will cook in 'next'.
|
||||
|
||||
|
||||
* ps/connectivity-optim (2021-08-09) 5 commits
|
||||
- revision: avoid hitting packfiles when commits are in commit-graph
|
||||
- commit-graph: split out function to search commit position
|
||||
- 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.
|
||||
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* ar/submodule-add-more (2021-08-10) 10 commits
|
||||
- submodule--helper: rename compute_submodule_clone_url()
|
||||
- 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.
|
||||
|
||||
|
||||
* 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
|
||||
|
||||
Build update.
|
||||
|
||||
|
||||
* jk/refs-files-cleanup-cleanup (2021-08-06) 1 commit
|
||||
(merged to 'next' on 2021-08-09 at 37b0b8c910)
|
||||
+ refs: drop unused "flags" parameter to lock_ref_oid_basic()
|
||||
(this branch uses ab/refs-files-cleanup.)
|
||||
|
||||
Code cleanup.
|
||||
|
||||
Will cook in 'next'.
|
||||
|
||||
|
||||
* cb/reftable-fixup (2021-08-02) 3 commits
|
||||
- openbsd: allow reftable building with zlib 1.2.3
|
||||
- reftable: clarify zlib version dependency
|
||||
@@ -342,7 +351,7 @@ Release tarballs are available at:
|
||||
|
||||
Documentation updates.
|
||||
|
||||
Expecting a (hopefully final) reroll.
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* en/ort-becomes-the-default (2021-08-05) 2 commits
|
||||
@@ -352,15 +361,15 @@ Release tarballs are available at:
|
||||
|
||||
Use `ort` instead of `recursive` as the default merge strategy.
|
||||
|
||||
Waiting for the base topic to settle.
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* js/log-protocol-version (2021-08-03) 1 commit
|
||||
* js/log-protocol-version (2021-08-10) 1 commit
|
||||
- connect, protocol: log negotiated protocol version
|
||||
|
||||
Debugging aid.
|
||||
|
||||
Expecting a reroll.
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* ow/clone-bare-origin (2021-08-03) 1 commit
|
||||
@@ -434,6 +443,7 @@ 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 is used by ds/sparse-index-ignored-files.)
|
||||
|
||||
"git add" can work better with the sparse index.
|
||||
|
||||
@@ -462,7 +472,7 @@ Release tarballs are available at:
|
||||
cover between 0-100%, which has been corrected.
|
||||
|
||||
|
||||
* ar/submodule-add-config (2021-08-05) 1 commit
|
||||
* ar/submodule-add-config (2021-08-10) 1 commit
|
||||
- submodule--helper: introduce add-config subcommand
|
||||
(this branch is used by ar/submodule-add-more.)
|
||||
|
||||
@@ -631,7 +641,7 @@ Release tarballs are available at:
|
||||
but went ahead and rebased when the history on other side is not a
|
||||
descendant of our history. The series tries to fix them up.
|
||||
|
||||
Comments?
|
||||
Will merge to 'next'.
|
||||
|
||||
|
||||
* bc/inactive-submodules (2021-07-02) 1 commit
|
||||
@@ -678,14 +688,15 @@ Release tarballs are available at:
|
||||
|
||||
|
||||
* jt/push-negotiation-fixes (2021-07-15) 3 commits
|
||||
- fetch: die on invalid --negotiation-tip hash
|
||||
- send-pack: fix push nego. when remote has refs
|
||||
- send-pack: fix push.negotiate with remote helper
|
||||
(merged to 'next' on 2021-08-09 at ea7da8239c)
|
||||
+ fetch: die on invalid --negotiation-tip hash
|
||||
+ send-pack: fix push nego. when remote has refs
|
||||
+ send-pack: fix push.negotiate with remote helper
|
||||
|
||||
Bugfix for common ancestor negotiation recently introduced in "git
|
||||
push" codepath.
|
||||
|
||||
Needs review.
|
||||
Will cook in 'next'.
|
||||
|
||||
|
||||
* ab/make-tags-cleanup (2021-08-05) 5 commits
|
||||
@@ -973,5 +984,3 @@ Release tarballs are available at:
|
||||
|
||||
Seems too involved for a last-minute fix.
|
||||
cf. <20210804212825.GH23408@szeder.dev>
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user