What's cooking (2024/01 #06)

todo
Junio C Hamano 2024-01-19 17:05:28 -08:00
parent 3e495d4686
commit e07100009d
1 changed files with 258 additions and 314 deletions

View File

@ -1,10 +1,10 @@
To: git@vger.kernel.org
Subject: What's cooking in git.git (Jan 2024, #05; Tue, 16)
X-master-at: 186b115d3062e6230ee296d1ddaa0c4b72a464b5
X-next-at: 8c6e9c07ef0bd922be435c0763b0b1b5bc508796
Subject: What's cooking in git.git (Jan 2024, #06; Fri, 19)
X-master-at: e02ecfcc534e2021aae29077a958dd11c3897e4c
X-next-at: 4ca1e1f3c373c10320a345031bbeadd1413955dc
Bcc: lwn@lwn.net, gitster@pobox.com

What's cooking in git.git (Jan 2024, #05; Tue, 16)
What's cooking in git.git (Jan 2024, #06; Fri, 19)
--------------------------------------------------

Here are the topics that have been cooking in my tree. Commits
@ -48,184 +48,203 @@ Release tarballs are available at:
--------------------------------------------------
[Graduated to 'master']

* cp/git-flush-is-an-env-bool (2024-01-04) 1 commit
(merged to 'next' on 2024-01-04 at b435a96ce8)
+ write-or-die: make GIT_FLUSH a Boolean environment variable
* bk/bisect-doc-fix (2024-01-10) 2 commits
(merged to 'next' on 2024-01-12 at bdb3609554)
+ doc: refer to pathspec instead of path
+ doc: use singular form of repeatable path arg

Unlike other environment variables that took the usual
true/false/yes/no as well as 0/1, GIT_FLUSH only understood 0/1,
which has been corrected.
source: <pull.1628.v3.git.1704363617842.gitgitgadget@gmail.com>
Synopsis fix.
source: <20240103040207.661413-1-britton.kerin@gmail.com>


* cp/sideband-array-index-comment-fix (2023-12-28) 1 commit
(merged to 'next' on 2024-01-08 at f906bc86f1)
+ sideband.c: remove redundant 'NEEDSWORK' tag

In-code comment fix.
source: <pull.1625.v4.git.1703750460527.gitgitgadget@gmail.com>


* ib/rebase-reschedule-doc (2024-01-05) 1 commit
(merged to 'next' on 2024-01-08 at d451d1f760)
+ rebase: clarify --reschedule-failed-exec default

Doc update.
source: <20240105011424.1443732-2-illia.bobyr@gmail.com>


* jk/commit-graph-slab-clear-fix (2024-01-05) 1 commit
(merged to 'next' on 2024-01-08 at f78c4fc296)
+ commit-graph: retain commit slab when closing NULL commit_graph

Clearing in-core repository (happens during e.g., "git fetch
--recurse-submodules" with commit graph enabled) made in-core
commit object in an inconsistent state by discarding the necessary
data from commit-graph too early, which has been corrected.
source: <20240105054142.GA2035092@coredump.intra.peff.net>


* jk/index-pack-lsan-false-positive-fix (2024-01-05) 1 commit
(merged to 'next' on 2024-01-08 at 589ed65251)
+ index-pack: spawn threads atomically

Fix false positive reported by leak sanitizer.
source: <20240105085034.GA3078476@coredump.intra.peff.net>


* jk/t1006-cat-file-objectsize-disk (2024-01-03) 2 commits
(merged to 'next' on 2024-01-03 at a492c6355c)
+ t1006: prefer shell loop to awk for packed object sizes
(merged to 'next' on 2023-12-28 at d82812e636)
+ t1006: add tests for %(objectsize:disk)
* cp/t4129-pipefix (2024-01-10) 1 commit
(merged to 'next' on 2024-01-12 at fd9b72b71a)
+ t4129: prevent loss of exit code due to the use of pipes

Test update.
source: <20231221094722.GA570888@coredump.intra.peff.net>
source: <20240103090152.GB1866508@coredump.intra.peff.net>
source: <pull.1636.git.1704891257544.gitgitgadget@gmail.com>


* js/contributor-docs-updates (2023-12-27) 9 commits
(merged to 'next' on 2024-01-02 at 0e072117cd)
+ SubmittingPatches: hyphenate non-ASCII
+ SubmittingPatches: clarify GitHub artifact format
+ SubmittingPatches: clarify GitHub visual
+ SubmittingPatches: provide tag naming advice
+ SubmittingPatches: update extra tags list
+ SubmittingPatches: discourage new trailers
+ SubmittingPatches: drop ref to "What's in git.git"
+ CodingGuidelines: write punctuation marks
+ CodingGuidelines: move period inside parentheses
* ps/gitlab-ci-static-analysis (2024-01-08) 1 commit
(merged to 'next' on 2024-01-10 at 71af34de07)
+ ci: add job performing static analysis on GitLab CI
(this branch is used by ps/gitlab-ci-macos.)

GitLab CI update.
source: <1536a5ef07ad24dafb5d685b40099882f89e6cc5.1703761005.git.ps@pks.im>


* ps/p4-use-ref-api (2024-01-11) 1 commit
(merged to 'next' on 2024-01-12 at 3f89cf25f6)
+ git-p4: stop reaching into the refdb

"git p4" update to prepare for reftable
source: <33d6a062ec56be33ed50a42a420be0b023f6f4cf.1704980814.git.ps@pks.im>


* ps/prompt-parse-HEAD-futureproof (2024-01-08) 2 commits
(merged to 'next' on 2024-01-10 at f9515b9d89)
+ git-prompt: stop manually parsing HEAD with unknown ref formats
+ Merge branch 'ps/refstorage-extension' into ps/prompt-parse-HEAD-futureproof

Futureproof command line prompt support (in contrib/).
source: <ef4e36a5a40c369da138242a8fdc9e12a846613b.1704356313.git.ps@pks.im>


* rj/clarify-branch-doc-m (2024-01-08) 1 commit
(merged to 'next' on 2024-01-10 at 432eaa2c6b)
+ branch: clarify <oldbranch> term

Doc update.
source: <pull.1623.v3.git.1703739324.gitgitgadget@gmail.com>
source: <d38e5a18-4d85-48f3-bc8b-8ca02ea683a4@gmail.com>


* jw/builtin-objectmode-attr (2023-12-28) 1 commit
(merged to 'next' on 2024-01-02 at 4c3784b3a1)
+ attr: add builtin objectmode values support
* sk/mingw-owner-check-error-message-improvement (2024-01-10) 1 commit
(merged to 'next' on 2024-01-12 at 05c56e151b)
+ mingw: give more details about unsafe directory's ownership

The builtin_objectmode attribute is populated for each path
without adding anything in .gitattributes files, which would be
useful in magic pathspec, e.g., ":(attr:builtin_objectmode=100755)"
to limit to executables.
cf. <xmqq5y0ssknj.fsf@gitster.g>
source: <20231116054437.2343549-1-jojwang@google.com>
In addition to (rather cryptic) Security Identifiers, show username
and domain in the error message when we barf on mismatch between
the Git directory and the current user on Windows.
source: <20240108173837.20480-2-soekkle@freenet.de>


* jx/sideband-chomp-newline-fix (2023-12-18) 3 commits
(merged to 'next' on 2024-01-04 at 1237898a22)
+ pkt-line: do not chomp newlines for sideband messages
+ pkt-line: memorize sideband fragment in reader
+ test-pkt-line: add option parser for unpack-sideband
* tb/fetch-all-configuration (2024-01-08) 1 commit
(merged to 'next' on 2024-01-12 at 6a05050382)
+ fetch: add new config option fetch.all

Sideband demultiplexer fixes.
source: <cover.1702823801.git.zhiyou.jx@alibaba-inc.com>


* ms/rebase-insnformat-doc-fix (2024-01-03) 1 commit
(merged to 'next' on 2024-01-04 at d68f2be39b)
+ Documentation: fix statement about rebase.instructionFormat

Docfix.
source: <pull.1629.git.git.1704305663254.gitgitgadget@gmail.com>


* ps/refstorage-extension (2024-01-02) 13 commits
(merged to 'next' on 2024-01-08 at f9a034803b)
+ t9500: write "extensions.refstorage" into config
+ builtin/clone: introduce `--ref-format=` value flag
+ builtin/init: introduce `--ref-format=` value flag
+ builtin/rev-parse: introduce `--show-ref-format` flag
+ t: introduce GIT_TEST_DEFAULT_REF_FORMAT envvar
+ setup: introduce GIT_DEFAULT_REF_FORMAT envvar
+ setup: introduce "extensions.refStorage" extension
+ setup: set repository's formats on init
+ setup: start tracking ref storage format
+ refs: refactor logic to look up storage backends
+ worktree: skip reading HEAD when repairing worktrees
+ t: introduce DEFAULT_REPO_FORMAT prereq
+ Merge branch 'ps/clone-into-reftable-repository' into ps/refstorage-extension
(this branch is used by ps/prompt-parse-HEAD-futureproof and ps/worktree-refdb-initialization.)

Introduce a new extension "refstorage" so that we can mark a
repository that uses a non-default ref backend, like reftable.
source: <cover.1703833818.git.ps@pks.im>


* ps/reftable-fixes-and-optims (2024-01-03) 9 commits
(merged to 'next' on 2024-01-08 at 167d7685f8)
+ reftable/merged: transfer ownership of records when iterating
+ reftable/merged: really reuse buffers to compute record keys
+ reftable/record: store "val2" hashes as static arrays
+ reftable/record: store "val1" hashes as static arrays
+ reftable/record: constify some parts of the interface
+ reftable/writer: fix index corruption when writing multiple indices
+ reftable/stack: do not auto-compact twice in `reftable_stack_add()`
+ reftable/stack: do not overwrite errors when compacting
+ Merge branch 'ps/reftable-fixes' into ps/reftable-fixes-and-optims

More fixes and optimizations to the reftable backend.
source: <cover.1704262787.git.ps@pks.im>


* tb/multi-pack-verbatim-reuse (2023-12-14) 26 commits
(merged to 'next' on 2024-01-04 at 891ac0fa2c)
+ t/perf: add performance tests for multi-pack reuse
+ pack-bitmap: enable reuse from all bitmapped packs
+ pack-objects: allow setting `pack.allowPackReuse` to "single"
+ t/test-lib-functions.sh: implement `test_trace2_data` helper
+ pack-objects: add tracing for various packfile metrics
+ pack-bitmap: prepare to mark objects from multiple packs for reuse
+ pack-revindex: implement `midx_pair_to_pack_pos()`
+ pack-revindex: factor out `midx_key_to_pack_pos()` helper
+ midx: implement `midx_preferred_pack()`
+ git-compat-util.h: implement checked size_t to uint32_t conversion
+ pack-objects: include number of packs reused in output
+ pack-objects: prepare `write_reused_pack_verbatim()` for multi-pack reuse
+ pack-objects: prepare `write_reused_pack()` for multi-pack reuse
+ pack-objects: pass `bitmapped_pack`'s to pack-reuse functions
+ pack-objects: keep track of `pack_start` for each reuse pack
+ pack-objects: parameterize pack-reuse routines over a single pack
+ pack-bitmap: return multiple packs via `reuse_partial_packfile_from_bitmap()`
+ pack-bitmap: simplify `reuse_partial_packfile_from_bitmap()` signature
+ ewah: implement `bitmap_is_empty()`
+ pack-bitmap: pass `bitmapped_pack` struct to pack-reuse functions
+ midx: implement `midx_locate_pack()`
+ midx: implement `BTMP` chunk
+ midx: factor out `fill_pack_info()`
+ pack-bitmap: plug leak in find_objects()
+ pack-bitmap-write: deep-clear the `bb_commit` slab
+ pack-objects: free packing_data in more places

Streaming spans of packfile data used to be done only from a
single, primary, pack in a repository with multiple packfiles. It
has been extended to allow reuse from other packfiles, too.
cf. <ZXurD1NTZ4TAs7WZ@nand.local>
source: <cover.1702592603.git.me@ttaylorr.com>
"git fetch" learned to pay attention to "fetch.all" configuration
variable, which pretends as if "--all" was passed from the command
line when no remote parameter was given.
source: <20240108211832.47362-1-dev@tb6.eu>

--------------------------------------------------
[New Topics]

* kh/maintenance-use-xdg-when-it-should (2024-01-18) 4 commits
(merged to 'next' on 2024-01-19 at 9c8c7b2e9d)
+ maintenance: use XDG config if it exists
+ config: factor out global config file retrieval
+ config: rename global config function
+ config: format newlines

When $HOME/.gitignore is missing but XDG config file available, we
should write into the latter, not former. "git gc" and "git
maintenance" wrote into a wrong "global config" file, which have
been corrected.

Will merge to 'master'.
source: <cover.1705593810.git.code@khaugsbakk.name>


* ps/gitlab-ci-macos (2024-01-18) 6 commits
(merged to 'next' on 2024-01-19 at a239dc8140)
+ ci: add macOS jobs to GitLab CI
+ ci: make p4 setup on macOS more robust
+ ci: handle TEST_OUTPUT_DIRECTORY when printing test failures
+ Makefile: detect new Homebrew location for ARM-based Macs
+ t7527: decrease likelihood of racing with fsmonitor daemon
+ Merge branch 'ps/gitlab-ci-static-analysis' into ps/gitlab-ci-macos

CI for GitLab learned to drive macOS jobs.

Will merge to 'master'.
source: <cover.1705573336.git.ps@pks.im>


* ad/custom-merge-placeholder-for-symbolic-pathnames (2024-01-18) 1 commit
- merge-ll: expose revision names to custom drivers

source: <pull.1648.v3.git.git.1705615794307.gitgitgadget@gmail.com>


* cp/unit-test-prio-queue (2024-01-17) 2 commits
- SQUASH???
- tests: move t0009-prio-queue.sh to the new unit testing framework

source: <pull.1642.v3.git.1705502304219.gitgitgadget@gmail.com>


* jc/reffiles-tests (2024-01-19) 12 commits
- t5312: move reffiles specific tests to t0601
- t4202: move reffiles specific tests to t0600
- t3903: make drop stash test ref backend agnostic
- t1503: move reffiles specific tests to t0600
- t1415: move reffiles specific tests to t0601
- t1410: move reffiles specific tests to t0600
- t1406: move reffiles specific tests to t0600
- t1405: move reffiles specific tests to t0601
- t1404: move reffiles specific tests to t0600
- t1414: convert test to use Git commands instead of writing refs manually
- remove REFFILES prerequisite for some tests in t1405 and t2017
- t3210: move to t0601

source: <pull.1647.v2.git.git.1705695540.gitgitgadget@gmail.com>


* ml/log-merge-with-cherry-pick-and-other-pseudo-heads (2024-01-17) 2 commits
- revision: implement `git log --merge` also for rebase/cherry_pick/revert
- revision: ensure MERGE_HEAD is a ref in prepare_show_merge

source: <xmqqzfxa9usx.fsf@gitster.g>


* nb/rebase-x-shell-docfix (2024-01-17) 1 commit
- rebase: fix documentation about used shell in -x

source: <20240117085347.948960-1-nik.borisov@suse.com>


* tc/show-ref-exists-fix (2024-01-18) 1 commit
- builtin/show-ref: treat directory as non-existing in --exists

source: <20240110141559.387815-2-toon@iotcl.com>


* gt/t0024-style-fixes (2024-01-18) 2 commits
- t0024: style fix
- t0024: avoid losing exit status to pipes

source: <20240118215407.8609-1-shyamthakkar001@gmail.com>


* jc/majordomo-to-subspace (2024-01-19) 1 commit
- Docs: majordomo@vger.kernel.org has been decomissioned

source: <xmqqmst1hsd6.fsf@gitster.g>


* js/oss-fuzz-build-in-ci (2024-01-19) 2 commits
- ci: build and run minimal fuzzers in GitHub CI
- fuzz: fix fuzz test build rules

source: <cover.1705700054.git.steadmon@google.com>


* kn/for-all-refs (2024-01-19) 5 commits
- for-each-ref: avoid filtering on empty pattern
- refs: introduce `refs_for_each_all_refs()`
- refs: extract out `loose_fill_ref_dir_regular_file()`
- refs: make `is_pseudoref_syntax()` stricter
- refs: expose `is_pseudoref_syntax()`

source: <20240119142705.139374-1-karthik.188@gmail.com>


* ps/not-so-many-refs-are-special (2024-01-19) 7 commits
- Documentation: add "special refs" to the glossary
- refs: redefine special refs
- refs: convert MERGE_AUTOSTASH to become a normal pseudo-ref
- sequencer: introduce functions to handle autostashes via refs
- refs: convert AUTO_MERGE to become a normal pseudo-ref
- sequencer: delete REBASE_HEAD in correct repo when picking commits
- sequencer: clean up pseudo refs with REF_NO_DEREF

source: <cover.1705659748.git.ps@pks.im>

--------------------------------------------------
[Cooking]

* es/some-up-to-date-messages-must-stay (2024-01-12) 1 commit
(merged to 'next' on 2024-01-16 at 2b598f7de2)
+ messages: mark some strings with "up-to-date" not to touch
@ -240,8 +259,8 @@ Release tarballs are available at:
source: <20240112171910.11131-1-ericsunshine@charter.net>


* bk/complete-bisect (2024-01-12) 5 commits
- completion: custom git-bisect terms
* bk/complete-bisect (2024-01-18) 5 commits
- completion: git-bisect view recognized but not completed
- completion: custom git-bisect terms
- completion: move to maintain define-before-use
- completion: git-log opts to bisect visualize
@ -250,8 +269,9 @@ Release tarballs are available at:
Command line completion support (in contrib/) has been
updated for "git bisect".

Needs review.
source: <20240110020347.673155-1-britton.kerin@gmail.com>
Expecting a reroll.
cf. <ZaofJhHsFjRxx7a3@tanuki>
source: <20240118204323.1113859-1-britton.kerin@gmail.com>


* bk/complete-dirname-for-am-and-format-patch (2024-01-12) 1 commit
@ -276,35 +296,37 @@ Release tarballs are available at:
source: <a718b5ee-afb0-44bd-a299-3208fac43506@smtp-relay.sendinblue.com>


* gt/test-commit-o-i-options (2024-01-16) 2 commits
- t7501: add tests for --amend --signoff
- t7501: add tests for --include and --only
* gt/test-commit-o-i-options (2024-01-17) 2 commits
(merged to 'next' on 2024-01-19 at 0377e2c148)
+ t7501: add tests for --amend --signoff
+ t7501: add tests for --include and --only

A few tests to "git commit -o <pathspec>" and "git commit -i
<pathspec>" has been added.

Expecting a reroll.
cf. <xmqq1qah46i0.fsf@gitster.g>
source: <20240113042254.38602-1-shyamthakkar001@gmail.com>
Will merge to 'master'.
source: <20240117161421.17333-1-shyamthakkar001@gmail.com>


* jt/tests-with-reftable (2024-01-12) 2 commits
- t5541: remove lockfile creation
- t1401: remove lockfile creation
(merged to 'next' on 2024-01-19 at 498d203a57)
+ t5541: remove lockfile creation
+ t1401: remove lockfile creation

Tweak a few tests not to manually modify the reference database
(hence easier to work with other backends like reftable).

Will merge to 'next'.
Will merge to 'master'.
source: <pull.1634.v2.git.1705004670.gitgitgadget@gmail.com>


* la/strvec-comment-fix (2024-01-12) 1 commit
- strvec: use correct member name in comments
(merged to 'next' on 2024-01-19 at 120ef16493)
+ strvec: use correct member name in comments

Comment fix.

Will merge to 'next'.
Will merge to 'master'.
source: <pull.1640.git.1705043195997.gitgitgadget@gmail.com>


@ -342,116 +364,79 @@ Release tarballs are available at:


* ne/doc-filter-blob-limit-fix (2024-01-16) 1 commit
- rev-list-options: fix off-by-one in '--filter=blob:limit=<n>' explainer
(merged to 'next' on 2024-01-19 at 4f78975728)
+ rev-list-options: fix off-by-one in '--filter=blob:limit=<n>' explainer

Docfix.

Will merge to 'next'.
Will merge to 'master'.
source: <pull.1645.git.git.1705261850650.gitgitgadget@gmail.com>


* ps/commit-graph-write-leakfix (2024-01-15) 1 commit
- commit-graph: fix memory leak when not writing graph
(merged to 'next' on 2024-01-19 at df537fac39)
+ commit-graph: fix memory leak when not writing graph

Leakfix.

Will merge to 'next'.
source: <0feab5e7d5bc6275e2c7671cd8f6786ea86fd610.1702891190.git.ps@pks.im>

--------------------------------------------------
[Cooking]

* cp/t4129-pipefix (2024-01-10) 1 commit
(merged to 'next' on 2024-01-12 at fd9b72b71a)
+ t4129: prevent loss of exit code due to the use of pipes

Test update.

Will merge to 'master'.
source: <pull.1636.git.1704891257544.gitgitgadget@gmail.com>
source: <0feab5e7d5bc6275e2c7671cd8f6786ea86fd610.1702891190.git.ps@pks.im>


* rj/advice-delete-branch-not-fully-merged (2024-01-11) 3 commits
- branch: make the advice to force-deleting a conditional one
- advice: fix an unexpected leading space
- advice: sort the advice related lists
(merged to 'next' on 2024-01-19 at 7102eb6b79)
+ branch: make the advice to force-deleting a conditional one
+ advice: fix an unexpected leading space
+ advice: sort the advice related lists
(this branch is used by rj/advice-disable-how-to-disable.)

The error message given when "git branch -d branch" fails due to
commits unique to the branch has been split into an error and a new
conditional advice message.

Will merge to 'next'.
Will merge to 'master'.
source: <4aedc15c-4b3f-4f5e-abea-581b501600f8@gmail.com>


* en/diffcore-delta-final-line-fix (2024-01-11) 1 commit
* en/diffcore-delta-final-line-fix (2024-01-18) 1 commit
- diffcore-delta: avoid ignoring final 'line' of file

Rename detection logic ignored the final line of a file if it is an
incomplete line.

Expecting a reroll.
cf. <xmqqedenearc.fsf@gitster.g>
source: <pull.1637.git.1705006074626.gitgitgadget@gmail.com>
Will merge to 'next'.
source: <pull.1637.v2.git.1705119973690.gitgitgadget@gmail.com>


* mj/gitweb-unreadable-config-error (2024-01-10) 1 commit
- gitweb: die when a configuration file cannot be read
(merged to 'next' on 2024-01-19 at 790b7a7855)
+ gitweb: die when a configuration file cannot be read

When given an existing but unreadable file as a configuration file,
gitweb behaved as if the file did not exist at all, but now it
errors out. This is a change that may break backward compatibility.

Will merge to 'next'.
Will merge to 'master'.
source: <20240110225709.30168-1-marcelo.jimenez@gmail.com>


* ps/completion-with-reftable-fix (2024-01-16) 5 commits
- completion: treat dangling symrefs as existing pseudorefs
- completion: silence pseudoref existence check
- completion: improve existence check for pseudo-refs
- t9902: verify that completion does not print anything
- completion: discover repo path in `__git_pseudoref_exists ()`
(merged to 'next' on 2024-01-19 at 8854a7d903)
+ completion: treat dangling symrefs as existing pseudorefs
+ completion: silence pseudoref existence check
+ completion: improve existence check for pseudo-refs
+ t9902: verify that completion does not print anything
+ completion: discover repo path in `__git_pseudoref_exists ()`

Completion update to prepare for reftable

Will merge to 'next'?
Will merge to 'master'.
source: <cover.1705314554.git.ps@pks.im>


* ps/p4-use-ref-api (2024-01-11) 1 commit
(merged to 'next' on 2024-01-12 at 3f89cf25f6)
+ git-p4: stop reaching into the refdb

"git p4" update to prepare for reftable

Will merge to 'master'.
source: <33d6a062ec56be33ed50a42a420be0b023f6f4cf.1704980814.git.ps@pks.im>


* ps/gitlab-ci-static-analysis (2024-01-08) 1 commit
(merged to 'next' on 2024-01-10 at 71af34de07)
+ ci: add job performing static analysis on GitLab CI

GitLab CI update.

Will merge to 'master'.
source: <1536a5ef07ad24dafb5d685b40099882f89e6cc5.1703761005.git.ps@pks.im>


* ps/prompt-parse-HEAD-futureproof (2024-01-08) 2 commits
(merged to 'next' on 2024-01-10 at f9515b9d89)
+ git-prompt: stop manually parsing HEAD with unknown ref formats
+ Merge branch 'ps/refstorage-extension' into ps/prompt-parse-HEAD-futureproof

Futureproof command line prompt support (in contrib/).

Will merge to 'master'.
source: <ef4e36a5a40c369da138242a8fdc9e12a846613b.1704356313.git.ps@pks.im>


* ps/reftable-optimize-io (2024-01-11) 5 commits
* ps/reftable-optimize-io (2024-01-18) 7 commits
- reftable/stack: fix race in up-to-date check
- reftable/stack: unconditionally reload stack after commit
(merged to 'next' on 2024-01-12 at 4096e880e0)
+ reftable/blocksource: use mmap to read tables
+ reftable/blocksource: refactor code to match our coding style
@ -461,55 +446,36 @@ Release tarballs are available at:

Low-level I/O optimization for reftable.

Will merge to 'master'.
The two commits at the tip are new.
Will merge to 'next' and then to 'master'?
source: <cover.1704966670.git.ps@pks.im>
source: <cover.1705585037.git.ps@pks.im>


* rj/clarify-branch-doc-m (2024-01-08) 1 commit
(merged to 'next' on 2024-01-10 at 432eaa2c6b)
+ branch: clarify <oldbranch> term

Doc update.

Will merge to 'master'.
source: <d38e5a18-4d85-48f3-bc8b-8ca02ea683a4@gmail.com>


* tb/fetch-all-configuration (2024-01-08) 1 commit
(merged to 'next' on 2024-01-12 at 6a05050382)
+ fetch: add new config option fetch.all

"git fetch" learned to pay attention to "fetch.all" configuration
variable, which pretends as if "--all" was passed from the command
line when no remote parameter was given.

Will merge to 'master'.
source: <20240108211832.47362-1-dev@tb6.eu>


* rj/advice-disable-how-to-disable (2024-01-15) 1 commit
* rj/advice-disable-how-to-disable (2024-01-16) 2 commits
- advice: allow disabling the automatic hint in advise_if_enabled()
- Merge branch 'rj/advice-delete-branch-not-fully-merged' into rj/advice-disable-how-to-disable
(this branch uses rj/advice-delete-branch-not-fully-merged.)

All conditional "advice" messages show how to turn them off, which
becomes repetitive. Add a configuration variable to omit the
instruction.

Will requeue with better dependencies before merging to 'next'.
source: <c870a0b6-9fa8-4d00-a5a6-661ca175805f@gmail.com>
Will merge to 'next'?
source: <6a842ef8-b390-4739-9eef-e867d55ed5ea@gmail.com>


* vd/fsck-submodule-url-test (2024-01-09) 3 commits
- submodule-config.c: strengthen URL fsck check
- t7450: test submodule urls
- submodule-config.h: move check_submodule_url
* vd/fsck-submodule-url-test (2024-01-19) 4 commits
(merged to 'next' on 2024-01-19 at dad35ae82c)
+ submodule-config.c: strengthen URL fsck check
+ t7450: test submodule urls
+ test-submodule: remove command line handling for check-name
+ submodule-config.h: move check_submodule_url

Tighten URL checks fsck makes in a URL recorded for submodules.

Expecting a reroll (and review response).
cf. <20240110103812.GB16674@coredump.intra.peff.net>
cf. <ZZ46MrjSocJl-kpU@tanuki>
source: <pull.1635.git.1704822817.gitgitgadget@gmail.com>
Will merge to 'master'.
source: <pull.1635.v2.git.1705542918.gitgitgadget@gmail.com>


* sd/negotiate-trace-fix (2024-01-03) 1 commit
@ -522,32 +488,21 @@ Release tarballs are available at:
source: <20240103224054.1940209-1-delmerico@google.com>


* sk/mingw-owner-check-error-message-improvement (2024-01-10) 1 commit
(merged to 'next' on 2024-01-12 at 05c56e151b)
+ mingw: give more details about unsafe directory's ownership

In addition to (rather cryptic) Security Identifiers, show username
and domain in the error message when we barf on mismatch between
the Git directory and the current user.

Will merge to 'master'.
source: <20240108173837.20480-2-soekkle@freenet.de>


* ps/worktree-refdb-initialization (2024-01-08) 7 commits
- builtin/worktree: create refdb via ref backend
- worktree: expose interface to look up worktree by name
- builtin/worktree: move setup of commondir file earlier
- refs/files: skip creation of "refs/{heads,tags}" for worktrees
- setup: move creation of "refs/" into the files backend
- refs: prepare `refs_init_db()` for initializing worktree refs
- Merge branch 'ps/refstorage-extension' into ps/worktree-refdb-initialization
(merged to 'next' on 2024-01-19 at e8c649a3ac)
+ builtin/worktree: create refdb via ref backend
+ worktree: expose interface to look up worktree by name
+ builtin/worktree: move setup of commondir file earlier
+ refs/files: skip creation of "refs/{heads,tags}" for worktrees
+ setup: move creation of "refs/" into the files backend
+ refs: prepare `refs_init_db()` for initializing worktree refs
+ Merge branch 'ps/refstorage-extension' into ps/worktree-refdb-initialization

Instead of manually creating refs/ hierarchy on disk upon a
creation of a secondary worktree, which is only usable via the
files backend, use the refs API to populate it.

Will merge to 'next'.
Will merge to 'master'.
source: <cover.1704705733.git.ps@pks.im>


@ -567,23 +522,13 @@ Release tarballs are available at:


* al/unit-test-ctype (2024-01-16) 1 commit
- unit-tests: rewrite t/helper/test-ctype.c as a unit test
(merged to 'next' on 2024-01-19 at fcdad0d06c)
+ unit-tests: rewrite t/helper/test-ctype.c as a unit test

Move test-ctype helper to the unit-test framework.

Will merge to 'next'.
source: <20240112102743.1440-1-ach.lumap@gmail.com>


* bk/bisect-doc-fix (2024-01-10) 2 commits
(merged to 'next' on 2024-01-12 at bdb3609554)
+ doc: refer to pathspec instead of path
+ doc: use singular form of repeatable path arg

Synopsis fix.

Will merge to 'master'.
source: <20240103040207.661413-1-britton.kerin@gmail.com>
source: <20240112102743.1440-1-ach.lumap@gmail.com>


* ja/doc-placeholders-fix (2023-12-26) 2 commits
@ -621,7 +566,7 @@ Release tarballs are available at:
source: <cover.1699569246.git.me@ttaylorr.com>


* tb/path-filter-fix (2023-10-18) 17 commits
* tb/path-filter-fix (2024-01-16) 17 commits
- bloom: introduce `deinit_bloom_filters()`
- commit-graph: reuse existing Bloom filters where possible
- object.h: fix mis-aligned flag bits table
@ -629,7 +574,7 @@ Release tarballs are available at:
- commit-graph.c: unconditionally load Bloom filters
- bloom: prepare to discard incompatible Bloom filters
- bloom: annotate filters with hash version
- commit-graph: new filter ver. that fixes murmur3
- commit-graph: new Bloom filter version that fixes murmur3
- repo-settings: introduce commitgraph.changedPathsVersion
- t4216: test changed path filters with high bit paths
- t/helper/test-read-graph: implement `bloom-filters` mode
@ -644,9 +589,8 @@ Release tarballs are available at:
on systems whose "char" is unsigned; update the implementation and
bump the format version to 2.

Expecting a reroll?
cf. <20231023202212.GA5470@szeder.dev>
source: <cover.1697653929.git.me@ttaylorr.com>
Will merge to 'next'?
source: <cover.1705442923.git.me@ttaylorr.com>


* ak/color-decorate-symbols (2023-10-23) 7 commits