summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2021-11-20 05:48:16 (GMT)
committerJunio C Hamano <gitster@pobox.com>2021-11-20 05:48:16 (GMT)
commit97045d831334061694f4e72d464a5efc270947e3 (patch)
tree5c0f1b26c3b83cd03c3aa944898d19aba18db63d
parentc96e9bd64c39fa60e9e37e7d3ef53bf82871e782 (diff)
downloadgit-97045d831334061694f4e72d464a5efc270947e3.zip
git-97045d831334061694f4e72d464a5efc270947e3.tar.gz
git-97045d831334061694f4e72d464a5efc270947e3.tar.bz2
What's cooking (2021/11 #05)
-rw-r--r--whats-cooking.txt321
1 files changed, 199 insertions, 122 deletions
diff --git a/whats-cooking.txt b/whats-cooking.txt
index 1adeffa..ecc5d7f 100644
--- a/whats-cooking.txt
+++ b/whats-cooking.txt
@@ -1,10 +1,10 @@
To: git@vger.kernel.org
Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Nov 2021, #04; Sun, 14)
+Subject: What's cooking in git.git (Nov 2021, #05; Fri, 19)
X-master-at: cd3e606211bb1cf8bc57f7d76bab98cc17a150bc
-X-next-at: ca35af825273b98fc8dc11527488952f5db8eb80
+X-next-at: b44f4d0eb0c6319e109b5f54df97d96d0d6b46fd
-What's cooking in git.git (Nov 2021, #04; Sun, 14)
+What's cooking in git.git (Nov 2021, #05; Fri, 19)
--------------------------------------------------
Here are the topics that have been cooking in my tree. Commits
@@ -18,19 +18,13 @@ 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.34 (final) has been tagged with a few more regression fixes.
+The tip of the 'master' branch is still at v2.34.0.
-As we have been fairly aggressive to deliberately merge down many
-topics that are under-reviewed, mostly due to reviewer fatigue and
-limited reviewer bandwidth, it was expected that we'd see unexpected
-breakages after things are in 'master', and it was quite nice to see
-people found and squashed these problems fairly quickly.
-
-Thank you all for finding, reporting and fixing them so quickly.
-Before starting to queue new topics for the next cycle or merging
-down topics in-flight, we'd wait about a week to see if people
-encounter any more issues, and after that we'd restart the usual
-cycle.
+A few topics for regression fixes have been merged to 'next' and
+will be merged to 'master' shortly. There are many topics listed as
+"New" that are in 'seen', but I haven't read many of them (and I
+shouldn't have anyway, before dealing with regression fixes) and
+haven't gave any summary comments in this report, either, yet.
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
@@ -61,134 +55,144 @@ Release tarballs are available at:
https://www.kernel.org/pub/software/scm/git/
--------------------------------------------------
-[Graduated to 'master']
+[New Topics]
-* ab/fsck-unexpected-type (2021-11-11) 2 commits
- (merged to 'next' on 2021-11-11 at f8c9666880)
- + object-file: free(*contents) only in read_loose_object() caller
- + object-file: fix SEGV on free() regression in v2.34.0-rc2
+* ab/checkout-branch-info-leakfix (2021-11-18) 1 commit
+ - checkout: fix "branch info" memory leaks
- Regression fix.
+ Leakfix.
+ Will merge to 'next'.
-* ds/no-usable-cron-on-macos (2021-11-10) 1 commit
- (merged to 'next' on 2021-11-10 at 18eb9c13bc)
- + maintenance: disable cron on macOS
- "git maintenance run" learned to use system supplied scheduler
- backend, but cron on macOS turns out to be unusable for this
- purpose.
+* ab/make-dependency (2021-11-18) 24 commits
+ - Makefile: move ".SUFFIXES" rule to shared.mak
+ - Makefile: define $(LIB_H) in terms of $(FIND_SOURCE_FILES)
+ - Makefile: disable GNU make built-in wildcard rules
+ - Makefile: use $(file) I/O instead of "FORCE" when possible
+ - Makefile: correct the dependency graph of hook-list.h
+ - Makefiles: add and use wildcard "mkdir -p" template
+ - Makefile: use $(wspfx) for $(QUIET...) in shared.mak
+ - Makefile: add "$(QUIET)" boilerplate to shared.mak
+ - Makefile: add a "TRACK_template" for GIT-*{FLAGS,DEFINES,...}
+ - Makefile: re-add and use the "shellquote" macros
+ - Makefile: move $(comma), $(empty) and $(space) to shared.mak
+ - Makefiles: add "shared.mak", move ".DELETE_ON_ERROR" to it
+ - Makefile: stop needing @@GIT_VERSION@@ in *.perl scripts
+ - Makefile: create a GIT-PYTHON-DEFINES, like "PERL"
+ - Makefile: correct "GIT-PERL-{DEFINES,HEADER}" dependency graph
+ - Makefile: adjust Perl-related comments & whitespace
+ - Makefile: change "ifndef NO_PERL" to "ifdef NO_PERL"
+ - Makefile: guard Perl-only variable assignments
+ - Makefile: remove "mv $@ $@+" dance redundant to .DELETE_ON_ERROR
+ - Makefile: clean perl/build/ even with NO_PERL=Y
+ - Makefile: use "=" not ":=" for po/* and perl/*
+ - Makefile: don't set up "perl/build" rules under NO_PERL=Y
+ - Makefile: don't invoke msgfmt with --statistics
+ - Merge branch 'ab/sh-retire-helper-functions' into ab/make-dependency
+ (this branch uses ab/sh-retire-helper-functions.)
+
+
+* ah/advice-pull-has-no-preference-between-rebase-and-merge (2021-11-19) 1 commit
+ - pull: don't say that merge is "the default strategy"
+
+ The advice message given by "git pull" when the user hasn't made a
+ choice between merge and rebase still said that the merge is the
+ default, which no longer is the case. This has been corrected.
+ Will merge to 'next'.
-* jc/fix-pull-ff-only-when-already-up-to-date (2021-10-29) 1 commit
- (merged to 'next' on 2021-10-29 at ad4753e668)
- + pull: --ff-only should make it a noop when already-up-to-date
- "git pull --ff-only" and "git pull --rebase --ff-only" should make
- it a no-op to attempt pulling from a remote that is behind us, but
- instead the command errored out by saying it was impossible to
- fast-forward, which may technically be true, but not a useful thing
- to diagnose as an error. This has been corrected.
+* ds/fetch-pull-with-sparse-index (2021-11-18) 3 commits
+ - ls-files: add --sparse option
+ - fetch/pull: use the sparse index
+ - Merge branch 'ld/sparse-diff-blame' into ds/fetch-pull-with-sparse-index
+ (this branch uses ld/sparse-diff-blame and vd/sparse-reset.)
-* jk/ssh-signing-fix (2021-11-10) 1 commit
- (merged to 'next' on 2021-11-10 at b6195caa04)
- + t/lib-gpg: avoid broken versions of ssh-keygen
+* ev/pull-already-up-to-date-is-noop (2021-11-18) 1 commit
+ (merged to 'next' on 2021-11-19 at 2d8f0cd000)
+ + pull: should be noop when already-up-to-date
- Reject OpenSSH 8.7 whose "ssh-keygen -Y find-principals" is
- unusable from running the ssh signature tests.
+ "git pull" with any strategy when the other side is behind us
+ should succeed as it is a no-op, but doesn't.
+ Will merge to 'master'.
-* js/simple-ipc-cygwin-socket-fix (2021-11-10) 1 commit
- (merged to 'next' on 2021-11-10 at 00788f076f)
- + simple-ipc: work around issues with Cygwin's Unix socket emulation
- The way Cygwin emulates a unix-domain socket, on top of which the
- simple-ipc mechanism is implemented, can race with the program on
- the other side that wants to use the socket, and briefly make it
- appear as a regular file before lstat(2) starts reporting it as a
- socket. We now have a workaround on the side that connects to a
- unix domain socket.
+* fs/ssh-signing-other-keytypes (2021-11-19) 2 commits
+ - ssh signing: make sign/amend test more resilient
+ - ssh signing: support non ssh-* keytypes
-* js/trace2-raise-format-version (2021-11-11) 1 commit
- (merged to 'next' on 2021-11-11 at e7144ad963)
- + trace2: increment event format version
+* fs/test-prereq (2021-11-18) 2 commits
+ - test-lib: introduce required prereq for test runs
+ - test-lib: show missing prereq summary
- When we added a new event type to trace2 event stream, we forgot to
- raise the format version number, which has been corrected.
+* jk/t5319-midx-corruption-test-deflake (2021-11-18) 1 commit
+ - t5319: corrupt more bytes of the midx checksum
-* ps/connectivity-optim (2021-11-11) 1 commit
- (merged to 'next' on 2021-11-11 at 8b3dccbd68)
- + Revert "connected: do not sort input revisions"
+ Test fix.
- Regression fix.
---------------------------------------------------
-[New Topics]
+* js/trace2-avoid-recursive-errors (2021-11-18) 1 commit
+ - trace2: disable tr2_dst before warning on write errors
-* rj/receive-pack-avoid-sigpipe-during-status-reporting (2021-11-10) 1 commit
- - receive-pack: ignore SIGPIPE while reporting status to client
+ trace2 error code path fix.
- When the "git push" command is killed while the receiving end is
- trying to report what happened to the ref update proposals, the
- latter used to die, due to SIGPIPE. The code now ignores SIGPIPE
- to increase our chances to run the post-receive hook after it
- happens.
+* pw/xdiff-classify-record-in-histogram (2021-11-18) 3 commits
+ - xdiff: simplify comparison
+ - xdiff: avoid unnecessary memory allocations
+ - diff histogram: intern strings
-* ab/parse-options-cleanup (2021-11-10) 1 commit
- - parse-options.c: use "enum parse_opt_result" for parse_nodash_opt()
+ "diff --histogram" optimization.
- Change the type of an internal function to return an enum (instead
- of int) and replace -2 that was used to signal an error with -1.
+* rs/mergesort (2021-11-18) 1 commit
+ - mergesort: avoid left shift overflow
-* cw/protocol-v2-doc-fix (2021-11-11) 1 commit
- - protocol-v2.txt: align delim-pkt spec with usage
+ Bitop fix for 32-bit boxes.
- Doc update.
- Will merge to 'next'.
+* xw/am-empty (2021-11-19) 3 commits
+ - SQUASH???
+ - am: support --empty=<option> to handle empty patches
+ - doc: git-format-patch: describe the option --always
-* jt/pack-header-lshift-overflow (2021-11-11) 1 commit
- - packfile: avoid overflowing shift during decode
+* hk/ci-checkwhitespace-commentfix (2021-11-19) 1 commit
+ - ci(check-whitespace): update stale file top comments
- The code to decode the length of packed object size has been
- corrected.
+ Comment fix.
- Will merge to 'next'.
+* hm/paint-hits-in-log-grep (2021-11-19) 1 commit
+ (merged to 'next' on 2021-11-19 at e146d25c7c)
+ + Revert "grep/pcre2: fix an edge case concerning ascii patterns and UTF-8 data"
-* ab/update-submitting-patches (2021-11-13) 1 commit
- - SubmittingPatches: fix Asciidoc syntax in "GitHub CI" section
+ "git grep" looking in a blob that has non-UTF8 payload was
+ completely broken when linked with certain versions of PCREv2
+ library in the latest release.
- Doc fix.
+ Will merge to 'master'.
- Will merge to 'next'.
+* jk/fetch-pack-avoid-sigpipe-to-index-pack (2021-11-19) 1 commit
+ - fetch-pack: ignore SIGPIPE when writing to index-pack
-* bc/require-c99 (2021-11-14) 1 commit
- - git-compat-util: add a test balloon for C99 support
-
- Weather balloon to break people with compilers that do not support
- C99.
-
-
-* jc/c99-var-decl-in-for-loop (2021-11-14) 1 commit
- - revision: use C99 declaration of variable in for() loop
-
- Weather balloon to break comiplers that do not grok variable
- declaration in the for() loop.
+ "git fetch", when received a bad packfile, can fail with SIGPIPE.
+ This wasn't wrong per-se, but we now detect the situation and fail
+ in a more predictable way.
+ Will merge to 'next'.
-* tl/midx-docfix (2021-11-14) 1 commit
- - midx: fix a formatting issue in "multi-pack-index.txt"
+* jk/refs-g11-workaround (2021-11-19) 1 commit
+ - refs: work around gcc-11 warning with REF_HAVE_NEW
- Doc mark-up fix.
+ Workaround for a false-alarm by gcc-11
Will merge to 'next'.
@@ -212,7 +216,18 @@ Release tarballs are available at:
which is among the topics this topic stomps on.
-* mp/absorb-submodule-git-dir-upon-deinit (2021-10-07) 1 commit
+* cf/fetch-set-upstream-while-detached (2021-07-06) 1 commit
+ - fetch: fix segfault on --set-upstream while on a detached HEAD
+
+ "git fetch --set-upstream" while on detached HEAD segfaulted
+ instead of noticing that such an operation did not make sense.
+
+ Getting tired of waiting for a reroll; will discard.
+
+--------------------------------------------------
+[Cooking]
+
+* mp/absorb-submodule-git-dir-upon-deinit (2021-11-19) 1 commit
- submodule: absorb git dir instead of dying on deinit
"git submodule deinit" for a submodule whose .git metadata
@@ -223,26 +238,83 @@ Release tarballs are available at:
command is taught to convert such submodules to the absorbed form
as needed.
- Getting tired of waiting for a reroll; will discard.
- cf. <xmqqwnmopqqk.fsf@gitster.g>
+ Will merge to 'next'?
-* cf/fetch-set-upstream-while-detached (2021-07-06) 1 commit
- - fetch: fix segfault on --set-upstream while on a detached HEAD
+* rj/receive-pack-avoid-sigpipe-during-status-reporting (2021-11-10) 1 commit
+ - receive-pack: ignore SIGPIPE while reporting status to client
- "git fetch --set-upstream" while on detached HEAD segfaulted
- instead of noticing that such an operation did not make sense.
+ When the "git push" command is killed while the receiving end is
+ trying to report what happened to the ref update proposals, the
+ latter used to die, due to SIGPIPE. The code now ignores SIGPIPE
+ to increase our chances to run the post-receive hook after it
+ happens.
- Getting tired of waiting for a reroll; will discard.
---------------------------------------------------
-[Cooking]
+* ab/parse-options-cleanup (2021-11-10) 1 commit
+ - parse-options.c: use "enum parse_opt_result" for parse_nodash_opt()
+
+ Change the type of an internal function to return an enum (instead
+ of int) and replace -2 that was used to signal an error with -1.
+
+
+* cw/protocol-v2-doc-fix (2021-11-11) 1 commit
+ - protocol-v2.txt: align delim-pkt spec with usage
+
+ Doc update.
+
+ Will merge to 'next'.
+
+
+* jt/pack-header-lshift-overflow (2021-11-11) 1 commit
+ - packfile: avoid overflowing shift during decode
+
+ The code to decode the length of packed object size has been
+ corrected.
+
+ Will merge to 'next'.
+
+
+* ab/update-submitting-patches (2021-11-13) 1 commit
+ (merged to 'next' on 2021-11-19 at b44f4d0eb0)
+ + SubmittingPatches: fix Asciidoc syntax in "GitHub CI" section
+
+ Doc fix.
+
+ Will merge to 'master'.
+
+
+* bc/require-c99 (2021-11-18) 1 commit
+ - git-compat-util: add a test balloon for C99 support
+
+ Weather balloon to break people with compilers that do not support
+ C99.
+
+
+* jc/c99-var-decl-in-for-loop (2021-11-16) 1 commit
+ - revision: use C99 declaration of variable in for() loop
+
+ Weather balloon to break comiplers that do not grok variable
+ declaration in the for() loop.
-* ak/fetch-not-overwrite-any-current-branch (2021-11-09) 4 commits
+
+* tl/midx-docfix (2021-11-18) 1 commit
+ - midx: fix a formatting issue in "multi-pack-index.txt"
+
+ Doc mark-up fix.
+
+ Will merge to 'next'.
+
+
+* ak/protect-any-current-branch (2021-11-15) 8 commits
- branch: protect branches checked out in all worktrees
- receive-pack: protect current branch for bare repository worktree
- receive-pack: clean dead code from update_worktree()
- fetch: protect branches checked out in all worktrees
+ - worktree: simplify find_shared_symref() memory ownership model
+ - branch: lowercase error messages
+ - receive-pack: lowercase error messages
+ - fetch: lowercase error messages
"git fetch" without the "--update-head-ok" option ought to protect
a checked out branch from getting updated, to prevent the working
@@ -250,6 +322,9 @@ Release tarballs are available at:
before the use of "git worktree" got widespread, and only checked
the branch that was checked out in the current worktree, which has
been updated.
+ (originally called ak/fetch-not-overwrite-any-current-branch)
+
+ Will merge to 'next'?
* jk/test-bitmap-fix (2021-11-05) 1 commit
@@ -441,6 +516,7 @@ Release tarballs are available at:
+ Makefile: remove $(NO_CURL) from $(SCRIPT_DEFINES)
+ Makefile: remove $(GIT_VERSION) from $(SCRIPT_DEFINES)
+ Makefile: move git-SCRIPT-DEFINES adjacent to $(SCRIPT_DEFINES)
+ (this branch is used by ab/make-dependency.)
Make a few helper functions unused and then lose them.
@@ -487,13 +563,15 @@ Release tarballs are available at:
Will merge to 'next'?
-* fs/ssh-signing-key-lifetime (2021-10-27) 8 commits
+* fs/ssh-signing-key-lifetime (2021-11-18) 10 commits
+ - ssh signing: verify ssh-keygen in test prereq
- ssh signing: make fmt-merge-msg consider key lifetime
- ssh signing: make verify-tag consider key lifetime
- ssh signing: make git log verify key lifetime
- ssh signing: make verify-commit consider key lifetime
- ssh signing: add key lifetime test prereqs
- ssh signing: use sigc struct to pass payload
+ - Merge branch 'ad/ssh-signing-testfix' into fs/ssh-signing-key-lifetime
- Merge branch 'fs/ssh-signing-fix' into fs/ssh-signing-key-lifetime
- Merge branch 'fs/ssh-signing' into fs/ssh-signing-key-lifetime
@@ -511,8 +589,7 @@ Release tarballs are available at:
on, and hint/nudge contributors to read others' changes.
-* gc/remote-with-fewer-static-global-variables (2021-10-28) 6 commits
- - remote: add struct repository parameter to external functions
+* gc/remote-with-fewer-static-global-variables (2021-11-18) 5 commits
- remote: die if branch is not found in repository
- remote: remove the_repository->remote_state from static methods
- remote: use remote_state parameter internally
@@ -605,16 +682,13 @@ Release tarballs are available at:
Will cook in 'next'.
-* js/branch-track-inherit (2021-10-18) 1 commit
+* js/branch-track-inherit (2021-11-18) 1 commit
- branch: add flags and config to inherit tracking
"git -c branch.autosetupmerge=inherit branch new old" makes "new"
to have the same upstream as the "old" branch, instead of marking
"old" itself as its upstream.
- Under discussion.
- cf. <87a6j6tbsv.fsf@gmgdl.gmail.com>
-
* jh/builtin-fsmonitor-part2 (2021-10-21) 29 commits
- t7527: test status with untracked-cache and fsmonitor--daemon
@@ -654,7 +728,7 @@ Release tarballs are available at:
- blame: enable and test the sparse index
- diff: enable and test the sparse index
- Merge branch 'vd/sparse-reset' into ld/sparse-diff-blame
- (this branch uses vd/sparse-reset.)
+ (this branch is used by ds/fetch-pull-with-sparse-index; uses vd/sparse-reset.)
Teach diff and blame to work well with sparse index.
@@ -709,7 +783,7 @@ Release tarballs are available at:
- sparse-index: update command for expand/collapse test
- reset: preserve skip-worktree bit in mixed reset
- reset: rename is_missing to !is_in_reset_tree
- (this branch is used by ld/sparse-diff-blame.)
+ (this branch is used by ds/fetch-pull-with-sparse-index and ld/sparse-diff-blame.)
Various operating modes of "git reset" have been made to work
better with the sparse index.
@@ -739,7 +813,8 @@ Release tarballs are available at:
protect the fixes.
-* es/superproject-aware-submodules (2021-11-04) 4 commits
+* es/superproject-aware-submodules (2021-11-18) 5 commits
+ - submodule: use config to find superproject worktree
- submodule: record superproject gitdir during 'update'
- submodule: record superproject gitdir during absorbgitdirs
- introduce submodule.superprojectGitDir record
@@ -790,8 +865,7 @@ Release tarballs are available at:
What's the status of this thing?
-* js/scalar (2021-10-27) 15 commits
- - scalar: accept -C and -c options before the subcommand
+* js/scalar (2021-11-19) 17 commits
- scalar: implement the `version` command
- scalar: implement the `delete` command
- scalar: teach 'reconfigure' to optionally handle all registered enlistments
@@ -803,9 +877,12 @@ Release tarballs are available at:
- scalar: let 'unregister' handle a deleted enlistment directory gracefully
- scalar: 'unregister' stops background maintenance
- scalar: 'register' sets recommended config and starts maintenance
+ - ci: also run the `scalar` tests
+ - cmake: optionally build `scalar`, too
- scalar: create test infrastructure
- scalar: start documenting the command
- scalar: create a rudimentary executable
+ - scalar: add a README with a roadmap
Add pieces from "scalar" to contrib/.