What's cooking (2024/08 #01)

This commit is contained in:
Junio C Hamano
2024-08-01 14:00:29 -07:00
parent 88bc047a00
commit 5d775b5a86

View File

@@ -1,10 +1,10 @@
To: git@vger.kernel.org
Subject: What's cooking in git.git (Jul 2024, #09; Mon, 29)
X-master-at: 39bf06adf96da25b87c9aa7d35a32ef3683eb4a4
X-next-at: 1c80b25241079052bdf3727e0ab9a5d77c51ea6e
Subject: What's cooking in git.git (Aug 2024, #01; Thu, 1)
X-master-at: 406f326d271e0bacecdb00425422c5fa3f314930
X-next-at: e559c4bf1a306cf5814418d318cc0fea070da3c7
Bcc: lwn@lwn.net, gitster@pobox.com
What's cooking in git.git (Jul 2024, #09; Mon, 29)
What's cooking in git.git (Aug 2024, #01; Thu, 1)
--------------------------------------------------
Here are the topics that have been cooking in my tree. Commits
@@ -17,16 +17,8 @@ topic without enough support may be discarded after a long period of
no activity (of course they can be resubmit when new interests
arise).
Git 2.46 has been tagged. As usual, we'll wait for embarrassing
bugs to be reported for a week or so, try to fix them, and then
reopen the tree for the next iteration (probably called 2.47).
We already have known fallouts left from the removal of fallback to
SHA-1 in operations that do not require an repository, which we may
want to address next. There may be more work needed to alleviate
the issues caused by the over-eager defense-in-depth changes
introduced by 2.45.1, even though they were somewhat loosened in
2.45.2 already.
The first two batches of topics have graduated to 'master' and
'next' has been rewound on top of 'master'.
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
@@ -57,41 +49,15 @@ Release tarballs are available at:
https://www.kernel.org/pub/software/scm/git/
--------------------------------------------------
[New Topics]
[Graduated to 'master']
* ja/doc-synopsis-markup (2024-07-24) 3 commits
- doc: apply synopsis simplification on git-clone and git-init
- doc: update the guidelines to reflect the current formatting rules
- doc: introduce a synopsis custom paragraph attribute
* ad/merge-with-diff-algorithm (2024-07-13) 1 commit
(merged to 'next' on 2024-07-16 at 90fe5aff4d)
+ merge-recursive: honor diff.algorithm
The way AsciiDoc is used for SYNOPSIS part of the manual pages has
been revamped. The sources, at least for the simple cases, got
vastly pleasant to work with.
Inviting further discussion.
source: <pull.1766.v2.git.1721855179.gitgitgadget@gmail.com>
* ps/doc-more-c-coding-guidelines (2024-07-24) 3 commits
- Documentation: document difference between release and free
- Documentation: document naming schema for struct-related functions
- Documentation: clarify indentation style for C preprocessor directives
Some project conventions have been added to CodingGuidelines.
Inviting further discussion.
source: <cover.1721818488.git.ps@pks.im>
* tc/fetch-bundle-uri (2024-07-24) 3 commits
- fetch: use bundle URIs when having creationToken heuristic
- transport: introduce transport_has_remote_bundle_uri()
- clone: remove double bundle list clear code
Allow "git fetch" take advantage of bundleURI feature.
Needs review.
source: <20240724144957.3033840-1-toon@iotcl.com>
Many Porcelain commands that internally use the merge machinery
were taught to consistently honor the diff.algorithm configuration.
source: <pull.1743.v3.git.git.1720889507066.gitgitgadget@gmail.com>
* as/show-ref-option-help-update (2024-07-25) 1 commit
@@ -99,11 +65,42 @@ Release tarballs are available at:
+ show-ref: improve short help messages of options
A few descriptions in "git show-ref -h" have been clarified.
Will merge to 'master'.
source: <20240724111116.91615-1-ash@kambanaria.org>
* cp/unit-test-reftable-merged (2024-07-12) 7 commits
(merged to 'next' on 2024-07-23 at 88d2a9ee28)
+ t-reftable-merged: add test for REFTABLE_FORMAT_ERROR
+ t-reftable-merged: use reftable_ref_record_equal to compare ref records
+ t-reftable-merged: add tests for reftable_merged_table_max_update_index
+ t-reftable-merged: improve the const-correctness of helper functions
+ t-reftable-merged: improve the test t_merged_single_record()
+ t: harmonize t-reftable-merged.c with coding guidelines
+ t: move reftable/merged_test.c to the unit testing framework
Another reftable test has been ported to use the unit test framework.
source: <20240712055041.6476-1-chandrapratap3519@gmail.com>
* jc/checkout-no-op-switch-errors (2024-07-02) 1 commit
(merged to 'next' on 2024-07-22 at 9573259db9)
+ checkout: special case error messages during noop switching
"git checkout --ours" (no other arguments) complained that the
option is incompatible with branch switching, which is technically
correct, but found confusing by some users. It now says that the
user needs to give pathspec to specify what paths to checkout.
source: <xmqqikxnqzz4.fsf@gitster.g>
* jc/doc-one-shot-export-with-shell-func (2024-07-23) 1 commit
(merged to 'next' on 2024-07-23 at 621c29e4f6)
+ CodingGuidelines: document a shell that "fails" "VAR=VAL shell_func"
It has been documented that we avoid "VAR=VAL shell_func" and why.
source: <xmqqwmld55y1.fsf@gitster.g>
* jc/doc-rebase-fuzz-vs-offset-fix (2024-07-25) 1 commit
(merged to 'next' on 2024-07-26 at 6f784b0c1c)
+ doc: difference in location to apply is "offset", not "fuzz"
@@ -111,8 +108,6 @@ Release tarballs are available at:
"git rebase --help" referred to "offset" (the difference between
the location a change was taken from and the change gets replaced)
incorrectly and called it "fuzz", which has been corrected.
Will merge to 'master'.
source: <xmqqplr1fkla.fsf@gitster.g>
@@ -122,119 +117,267 @@ Release tarballs are available at:
The reviewing guidelines document now explicitly encourages people
to give positive reviews and how.
Will merge to 'master'.
source: <xmqqle1pjwtt.fsf@gitster.g>
* jc/leakfix-hashfile (2024-07-26) 1 commit
- csum-file: introduce discard_hashfile()
* jc/how-to-maintain-updates (2024-07-19) 2 commits
(merged to 'next' on 2024-07-26 at c950efa46d)
+ howto-maintain: update daily tasks
+ howto-maintain: cover a whole development cycle
source: <xmqqle1p1367.fsf@gitster.g>
Doc update.
source: <xmqq1q3phzpi.fsf@gitster.g>
* jc/leakfix-mailmap (2024-07-26) 1 commit
- mailmap: plug memory leak in read_mailmap_blob()
* jt/doc-post-receive-hook-update (2024-07-15) 1 commit
(merged to 'next' on 2024-07-17 at 624ac4ebe2)
+ doc: clarify post-receive hook behavior
source: <xmqqcyn112xi.fsf@gitster.g>
Doc update.
source: <20240715183739.7808-1-jltobler@gmail.com>
* jr/ls-files-expand-literal-doc (2024-07-26) 1 commit
- doc: fix hex code escapes in git-ls-files
* kn/ci-clang-format (2024-07-23) 6 commits
(merged to 'next' on 2024-07-23 at 3aca45d08a)
+ ci/style-check: add `RemoveBracesLLVM` in CI job
+ check-whitespace: detect if no base_commit is provided
+ ci: run style check on GitHub and GitLab
+ clang-format: formalize some of the spacing rules
+ clang-format: avoid spacing around bitfield colon
+ clang-format: indent preprocessor directives after hash
(this branch is used by ps/doc-more-c-coding-guidelines.)
source: <CACStHN-Gs2Sxej+md6zWr3V1dFo+pp=B4yEPm9=uPambDR2NaQ@mail.gmail.com>
A CI job that use clang-format to check coding style issues in new
code has been added.
source: <20240723082111.874382-1-karthik.188@gmail.com>
* ps/leakfixes-part-3 (2024-07-26) 23 commits
- commit-reach: fix trivial memory leak when computing reachability
- convert: fix leaking config strings
- entry: fix leaking pathnames during delayed checkout
- object-name: fix leaking commit list items
- t/test-repository: fix leaking repository
- builtin/credential-cache: fix trivial leaks
- builtin/worktree: fix leaking derived branch names
- builtin/shortlog: fix various trivial memory leaks
- builtin/rerere: fix various trivial memory leaks
- builtin/credential-store: fix leaking credential
- builtin/show-branch: fix several memory leaks
- builtin/rev-parse: fix memory leak with `--parseopt`
- builtin/stash: fix various trivial memory leaks
- builtin/remote: fix various trivial memory leaks
- builtin/remote: fix leaking strings in `branch_list`
- builtin/ls-remote: fix leaking `pattern` strings
- builtin/submodule--helper: fix various trivial memory leaks
- builtin/name-rev: fix various trivial memory leaks
- builtin/describe: fix trivial memory leak when describing blob
- builtin/describe: fix leaking array when running diff-index
- builtin/describe: fix memory leak with `--contains=`
- builtin/log: fix leaking branch name when creating cover letters
- builtin/replay: plug leaking `advance_name` variable
* pw/add-patch-with-suppress-blank-empty (2024-07-20) 2 commits
(merged to 'next' on 2024-07-22 at 5437b7dee3)
+ add-patch: use normalize_marker() when recounting edited hunk
+ add-patch: handle splitting hunks with diff.suppressBlankEmpty
source: <cover.1721995576.git.ps@pks.im>
"git add -p" by users with diff.suppressBlankEmpty set to true
failed to parse the patch that represents an unmodified empty line
with an empty line (not a line with a single space on it), which
has been corrected.
source: <pull.1763.v2.git.1721491320.gitgitgadget@gmail.com>
* rj/make-cleanup (2024-07-18) 2 commits
(merged to 'next' on 2024-07-22 at bf3991f70f)
+ config.mak.uname: remove unused uname_P variable
+ Makefile: drop -Wno-universal-initializer from SP_EXTRA_FLAGS
A build tweak knob has been simplified by not setting the value
that is already the default; another unused one has been removed.
source: <0d132370-3e07-4332-bcfb-c4450100d736@ramsayjones.plus.com>
* rs/t-strvec-use-test-msg (2024-07-16) 3 commits
(merged to 'next' on 2024-07-16 at 3e860b3f12)
+ t-strvec: fix type mismatch in check_strvec
(merged to 'next' on 2024-07-15 at f26e434515)
+ t-strvec: improve check_strvec() output
(merged to 'next' on 2024-07-08 at c28c2553de)
+ t-strvec: use test_msg()
Unit test clean-up.
source: <35b0ba6b-d485-44f2-a19f-3ce816f8b435@web.de>
source: <983be396-f47c-4573-8c33-af8367f8ddbe@web.de>
source: <1521ed89-989e-452b-b7fc-9e73672e0764@web.de>
* tn/doc-commit-fix (2024-07-22) 1 commit
(merged to 'next' on 2024-07-23 at eb73e04ee4)
+ doc: remove dangling closing parenthesis
Docfix.
source: <20240722225302.124356-1-tomasn@posteo.net>
--------------------------------------------------
[New Topics]
* dd/notes-empty-no-edit-by-default (2024-07-29) 1 commit
(merged to 'next' on 2024-08-01 at fe75c53260)
+ notes: do not trigger editor when adding an empty note
"git notes add -m '' --allow-empty" and friends that take prepared
data to create notes should not invoke an editor, but it started
doing so since Git 2.42, which has been corrected.
Will merge to 'master'.
source: <20240729151639.19192-2-ddiss@suse.de>
* ks/unit-test-comment-typofix (2024-07-29) 1 commit
(merged to 'next' on 2024-08-01 at 35c44187b1)
+ unit-tests/test-lib: fix typo in check_pointer_eq() description
Typofix.
Will merge to 'master'.
source: <20240729043303.3486-1-five231003@gmail.com>
* dh/encoding-trace-optim (2024-07-31) 1 commit
(merged to 'next' on 2024-08-01 at c5e023eeaf)
+ convert: return early when not tracing
An expensive operation to prepare tracing was done in re-encoding
code path even when the tracing was not requested, which has been
corrected.
Will merge to 'master'.
source: <pull.1744.v6.git.git.1722432839473.gitgitgadget@gmail.com>
* ps/refs-wo-the-repository (2024-07-30) 5 commits
- refs/reftable: stop using `the_repository`
- refs/packed: stop using `the_repository`
- refs/files: stop using `the_repository`
- refs/files: stop using `the_repository` in `parse_loose_ref_contents()`
- refs: stop using `the_repository`
In the refs subsystem, implicit reliance of the_repository has been
eliminated; the repository associated with the ref store object is
used instead.
Will merge to 'next'?
cf. <ZqnEuz9uFgUwWKkc@tanuki>
source: <cover.1722316795.git.ps@pks.im>
* rs/grep-omit-blank-lines-after-function-at-eof (2024-07-30) 1 commit
(merged to 'next' on 2024-08-01 at 0c6e2b21f9)
+ grep: -W: skip trailing empty lines at EOF, too
"git grep -W" omits blank lines that follow the found function at
the end of the file, just like it omits blank lines before the next
function.
Will merge to 'master'.
source: <8b90e0ec-251f-46b3-8777-96efd58e227b@web.de>
* rs/t-example-simplify (2024-07-30) 1 commit
- t-example-decorate: remove test messages
Unit test simplification.
Will merge to 'next'?
source: <5c838884-b606-465a-8f7e-ab760ddadef8@web.de>
* cc/promisor-remote-capability (2024-07-31) 4 commits
- promisor-remote: check advertised name or URL
- Add 'promisor-remote' capability to protocol v2
- strbuf: refactor strbuf_trim_trailing_ch()
- version: refactor strbuf_sanitize()
The v2 protocol learned to allow the server to advertise possible
promisor remotes, and the client to respond with what promissor
remotes it uses, so that the server side can omit objects that the
client can lazily obtain from these other promissor remotes.
Inviting further discussion.
source: <20240731134014.2299361-1-christian.couder@gmail.com>
* ps/reftable-stack-compaction (2024-07-31) 8 commits
- reftable/stack: handle locked tables during auto-compaction
- reftable/stack: fix corruption on concurrent compaction
- reftable/stack: use lock_file when adding table to "tables.list"
- reftable/stack: do not die when fsyncing lock file files
- reftable/stack: simplify tracking of table locks
- reftable/stack: update stats on failed full compaction
- reftable/stack: test compaction with already-locked tables
- reftable/stack: refactor function to gather table sizes
The code paths to compact multiple reftable files have been updated
to correctly deal with multiple compaction triggering at the same
time.
Needs review.
source: <cover.1722435214.git.ps@pks.im>
* rh/http-proxy-path (2024-08-01) 1 commit
- http: do not ignore proxy path
The value of http.proxy can have "path" at the end for a socks
proxy that listens to a unix-domain socket, but we started to
discard it when we taught proxy auth code path to use the
credential helpers, which has been corrected.
Will merge to 'next'.
source: <pull.1767.v4.git.1722489776279.gitgitgadget@gmail.com>
* jc/refs-symref-referent (2024-08-01) 4 commits
- SQUASH???
- ref-filter: populate symref from iterator
- refs: add referent to each_ref_fn
- refs: keep track of unresolved reference value in iterators
The refs API has been taught to give symref target information to
the users of ref iterators, allowing for-each-ref and friends to
avoid an extra ref_resolve_* API call per a symbolic ref.
Inviting further discussion.
source: <pull.1712.v2.git.git.1722524334.gitgitgadget@gmail.com>
* jk/osxkeychain-username-is-nul-terminated (2024-08-01) 1 commit
- credential/osxkeychain: respect NUL terminator in username
The credential helper to talk to OSX keychain sometimes sent
garbage bytes after the username, which has been corrected.
Will merge to 'next'.
source: <20240801082556.GA640360@coredump.intra.peff.net>
* tb/config-fixed-value-with-valueless-true (2024-08-01) 1 commit
- config.c: avoid segfault with --fixed-value and valueless config
"git config --value=foo --fixed-value section.key newvalue" barfed
when the existing value in the configuration file used the
valueless true syntax, which has been corrected.
Will merge to 'next'.
source: <c78bacfa8fb274fbb48f259b13f4f30253932f69.1722532013.git.me@ttaylorr.com>
* jc/jl-git-no-advice-fix (2024-08-01) 1 commit
- t0018: remove leftover debugging cruft
Remove leftover debugging cruft from a test script.
Will merge to 'next'.
source: <xmqq7cd0ulen.fsf_-_@gitster.g>
--------------------------------------------------
[Stalled]
* sj/ref-fsck (2024-07-15) 10 commits
- fsck: add ref content check for files backend
- fsck: add ref name check for files backend
- files-backend: add unified interface for refs scanning
- builtin/fsck: add `git-refs verify` child process
- git refs: add verify subcommand
- refs: set up ref consistency check infrastructure
- fsck: add refs-related error report function
- fsck: rename objects-related fsck error functions
- fsck: add a unified interface for reporting fsck messages
- fsck: rename "skiplist" to "skip_oids"
* sj/ref-fsck (2024-07-30) 10 commits
. fsck: add ref content check for files backend
. fsck: add ref name check for files backend
. files-backend: add unified interface for refs scanning
. builtin/fsck: add `git-refs verify` child process
. git refs: add verify subcommand
. refs: set up ref consistency check infrastructure
. fsck: add refs-related error report function
. fsck: rename objects-related fsck error functions
. fsck: add a unified interface for reporting fsck messages
. fsck: rename "skiplist" to "skip_oids"
"git fsck" infrastructure has been taught to also check the sanity
of the ref database, in addition to the object database.
Needs review.
source: <ZpPEdmUN1Z5tqbK3@ArchLinux>
* cp/unit-test-reftable-pq (2024-07-23) 7 commits
- t-reftable-pq: add tests for merged_iter_pqueue_top()
- t-reftable-pq: add test for index based comparison
- t-reftable-pq: make merged_iter_pqueue_check() callable by reference
- t-reftable-pq: make merged_iter_pqueue_check() static
- t: move reftable/pq_test.c to the unit testing framework
- reftable: change the type of array indices to 'size_t' in reftable/pq.c
- reftable: remove unncessary curly braces in reftable/pq.c
The tests for "pq" part of reftable library got rewritten to use
the unit test framework.
Needs review.
source: <20240723143032.4261-1-chandrapratap3519@gmail.com>
* tb/incremental-midx-part-1 (2024-07-17) 19 commits
- midx: implement support for writing incremental MIDX chains
- t/t5313-pack-bounds-checks.sh: prepare for sub-directories
- t: retire 'GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP'
- midx: implement verification support for incremental MIDXs
- midx: support reading incremental MIDX chains
- midx: teach `midx_fanout_add_midx_fanout()` about incremental MIDXs
- midx: teach `midx_preferred_pack()` about incremental MIDXs
- midx: teach `midx_contains_pack()` about incremental MIDXs
- midx: remove unused `midx_locate_pack()`
- midx: teach `fill_midx_entry()` about incremental MIDXs
- midx: teach `nth_midxed_offset()` about incremental MIDXs
- midx: teach `bsearch_midx()` about incremental MIDXs
- midx: introduce `bsearch_one_midx()`
- midx: teach `nth_bitmapped_pack()` about incremental MIDXs
- midx: teach `nth_midxed_object_oid()` about incremental MIDXs
- midx: teach `prepare_midx_pack()` about incremental MIDXs
- midx: teach `nth_midxed_pack_int_id()` about incremental MIDXs
- midx: add new fields for incremental MIDX chains
- Documentation: describe incremental MIDX format
Incremental updates of multi-pack index files.
Needs review.
source: <cover.1721250704.git.me@ttaylorr.com>
Needs update.
Contradicts with Patrick's the_repository elimination series.
source: <ZqeXrPROpEg_pRS2@ArchLinux>
* pp/add-parse-range-unit-test (2024-05-27) 1 commit
@@ -262,25 +405,152 @@ Release tarballs are available at:
--------------------------------------------------
[Cooking]
* ps/p4-tests-updates (2024-07-23) 3 commits
- t98xx: mark Perforce tests as memory-leak free
- ci: update Perforce version to r23.2
- t98xx: fix Perforce tests with p4d r23 and newer
* cp/unit-test-reftable-pq (2024-08-01) 7 commits
- t-reftable-pq: add tests for merged_iter_pqueue_top()
- t-reftable-pq: add test for index based comparison
- t-reftable-pq: make merged_iter_pqueue_check() callable by reference
- t-reftable-pq: make merged_iter_pqueue_check() static
- t: move reftable/pq_test.c to the unit testing framework
- reftable: change the type of array indices to 'size_t' in reftable/pq.c
- reftable: remove unnecessary curly braces in reftable/pq.c
The tests for "pq" part of reftable library got rewritten to use
the unit test framework.
Will merge to 'next'.
cf. <Zqt02XmevPRB3idt@tanuki>
source: <20240801110453.5087-1-chandrapratap3519@gmail.com>
* tb/incremental-midx-part-1 (2024-07-17) 19 commits
- midx: implement support for writing incremental MIDX chains
- t/t5313-pack-bounds-checks.sh: prepare for sub-directories
- t: retire 'GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP'
- midx: implement verification support for incremental MIDXs
- midx: support reading incremental MIDX chains
- midx: teach `midx_fanout_add_midx_fanout()` about incremental MIDXs
- midx: teach `midx_preferred_pack()` about incremental MIDXs
- midx: teach `midx_contains_pack()` about incremental MIDXs
- midx: remove unused `midx_locate_pack()`
- midx: teach `fill_midx_entry()` about incremental MIDXs
- midx: teach `nth_midxed_offset()` about incremental MIDXs
- midx: teach `bsearch_midx()` about incremental MIDXs
- midx: introduce `bsearch_one_midx()`
- midx: teach `nth_bitmapped_pack()` about incremental MIDXs
- midx: teach `nth_midxed_object_oid()` about incremental MIDXs
- midx: teach `prepare_midx_pack()` about incremental MIDXs
- midx: teach `nth_midxed_pack_int_id()` about incremental MIDXs
- midx: add new fields for incremental MIDX chains
- Documentation: describe incremental MIDX format
Incremental updates of multi-pack index files.
Expecting a reroll.
cf. <ZqvZeWDGDAeZNZjW@nand.local>
source: <cover.1721250704.git.me@ttaylorr.com>
* ja/doc-synopsis-markup (2024-07-24) 3 commits
- doc: apply synopsis simplification on git-clone and git-init
- doc: update the guidelines to reflect the current formatting rules
- doc: introduce a synopsis custom paragraph attribute
The way AsciiDoc is used for SYNOPSIS part of the manual pages has
been revamped. The sources, at least for the simple cases, got
vastly pleasant to work with.
Inviting further discussion.
source: <pull.1766.v2.git.1721855179.gitgitgadget@gmail.com>
* ps/doc-more-c-coding-guidelines (2024-07-30) 6 commits
(merged to 'next' on 2024-08-01 at 8f8ac5d6ca)
+ Documentation: consistently use spaces inside initializers
+ Documentation: document idiomatic function names
+ Documentation: document naming schema for structs and their functions
+ Documentation: clarify indentation style for C preprocessor directives
+ clang-format: fix indentation width for preprocessor directives
+ Merge branch 'kn/ci-clang-format' into ps/doc-more-c-coding-guidelines
Some project conventions have been added to CodingGuidelines.
Will merge to 'master'.
source: <cover.1722323818.git.ps@pks.im>
* tc/fetch-bundle-uri (2024-07-24) 3 commits
- fetch: use bundle URIs when having creationToken heuristic
- transport: introduce transport_has_remote_bundle_uri()
- clone: remove double bundle list clear code
Allow "git fetch" take advantage of bundleURI feature.
Needs review.
source: <20240724144957.3033840-1-toon@iotcl.com>
* jc/leakfix-hashfile (2024-07-26) 1 commit
- csum-file: introduce discard_hashfile()
source: <xmqqle1p1367.fsf@gitster.g>
* jc/leakfix-mailmap (2024-07-26) 1 commit
- mailmap: plug memory leak in read_mailmap_blob()
source: <xmqqcyn112xi.fsf@gitster.g>
* jr/ls-files-expand-literal-doc (2024-07-26) 1 commit
- doc: fix hex code escapes in git-ls-files
source: <CACStHN-Gs2Sxej+md6zWr3V1dFo+pp=B4yEPm9=uPambDR2NaQ@mail.gmail.com>
* ps/leakfixes-part-3 (2024-08-01) 24 commits
- commit-reach: fix trivial memory leak when computing reachability
- convert: fix leaking config strings
- entry: fix leaking pathnames during delayed checkout
- object-name: fix leaking commit list items
- t/test-repository: fix leaking repository
- builtin/credential-cache: fix trivial leaks
- builtin/worktree: fix leaking derived branch names
- builtin/shortlog: fix various trivial memory leaks
- builtin/rerere: fix various trivial memory leaks
- builtin/credential-store: fix leaking credential
- builtin/show-branch: fix several memory leaks
- builtin/rev-parse: fix memory leak with `--parseopt`
- builtin/stash: fix various trivial memory leaks
- builtin/remote: fix various trivial memory leaks
- builtin/remote: fix leaking strings in `branch_list`
- builtin/ls-remote: fix leaking `pattern` strings
- builtin/submodule--helper: fix leaking buffer in `is_tip_reachable`
- builtin/submodule--helper: fix leaking clone depth parameter
- builtin/name-rev: fix various trivial memory leaks
- builtin/describe: fix trivial memory leak when describing blob
- builtin/describe: fix leaking array when running diff-index
- builtin/describe: fix memory leak with `--contains=`
- builtin/log: fix leaking branch name when creating cover letters
- builtin/replay: plug leaking `advance_name` variable
More leakfixes.
Will merge to 'next'.
cf. <ZqvDJpNxMkvd3hSZ@nand.local>
source: <cover.1722499961.git.ps@pks.im>
* ps/p4-tests-updates (2024-07-31) 3 commits
(merged to 'next' on 2024-08-01 at e559c4bf1a)
+ t98xx: mark Perforce tests as memory-leak free
+ ci: update Perforce version to r23.2
+ t98xx: fix Perforce tests with p4d r23 and newer
Perforce tests have been updated.
Needs review.
source: <cover.1721740612.git.ps@pks.im>
* jc/doc-one-shot-export-with-shell-func (2024-07-23) 1 commit
(merged to 'next' on 2024-07-23 at 621c29e4f6)
+ CodingGuidelines: document a shell that "fails" "VAR=VAL shell_func"
It has been documented that we avoid "VAR=VAL shell_func" and why.
Will merge to 'master'.
source: <xmqqwmld55y1.fsf@gitster.g>
cf. <na5mwletzpnacietbc7pzqcgb622mvrwgrkjgjosysz3gvjcso@gzxxi7d7icr7>
source: <cover.1722421911.git.ps@pks.im>
* ag/git-svn-global-ignores (2024-07-18) 2 commits
@@ -290,69 +560,36 @@ Release tarballs are available at:
"git svn" has been taught about svn:global-ignores property
recent versions of Subversion has.
Needs review.
Will merge to 'next'?
source: <pull.1747.v2.git.git.1721335657.gitgitgadget@gmail.com>
* jc/how-to-maintain-updates (2024-07-19) 2 commits
(merged to 'next' on 2024-07-26 at c950efa46d)
+ howto-maintain: update daily tasks
+ howto-maintain: cover a whole development cycle
Doc update.
Will merge to 'master'.
source: <xmqq1q3phzpi.fsf@gitster.g>
* es/shell-check-updates (2024-07-26) 5 commits
- check-non-portable-shell: improve `VAR=val shell-func` detection
- check-non-portable-shell: suggest alternative for `VAR=val shell-func`
- check-non-portable-shell: loosen one-shot assignment error message
- t4034: fix use of one-shot variable assignment with shell function
- t3430: drop unnecessary one-shot "VAR=val shell-func" invocation
(merged to 'next' on 2024-08-01 at cf06aced6d)
+ check-non-portable-shell: improve `VAR=val shell-func` detection
+ check-non-portable-shell: suggest alternative for `VAR=val shell-func`
+ check-non-portable-shell: loosen one-shot assignment error message
+ t4034: fix use of one-shot variable assignment with shell function
+ t3430: drop unnecessary one-shot "VAR=val shell-func" invocation
Test script linter has been updated to catch an attempt to use
one-shot export construct "VAR=VAL func" for shell functions (which
does not work for some shells) better.
Will merge to 'next'.
Will merge to 'master'.
source: <20240727053509.34339-1-ericsunshine@charter.net>
* jc/safe-directory (2024-07-22) 3 commits
* jc/safe-directory (2024-07-30) 4 commits
- safe.directory: setting safe.directory="." allows the "current" directory
- safe.directory: normalize the configured path
- safe.directory: normalize the checked path
- safe.directory: preliminary clean-up
Follow-up on 2.45.1 regression fix.
Needs review.
source: <20240723021900.388020-1-gitster@pobox.com>
* pw/add-patch-with-suppress-blank-empty (2024-07-20) 2 commits
(merged to 'next' on 2024-07-22 at 5437b7dee3)
+ add-patch: use normalize_marker() when recounting edited hunk
+ add-patch: handle splitting hunks with diff.suppressBlankEmpty
"git add -p" by users with diff.suppressBlankEmpty set to true
failed to parse the patch that represents an unmodified empty line
with an empty line (not a line with a single space on it), which
has been corrected.
Will merge to 'master'.
source: <pull.1763.v2.git.1721491320.gitgitgadget@gmail.com>
* tn/doc-commit-fix (2024-07-22) 1 commit
(merged to 'next' on 2024-07-23 at eb73e04ee4)
+ doc: remove dangling closing parenthesis
Docfix.
Will merge to 'master'.
source: <20240722225302.124356-1-tomasn@posteo.net>
Will merge to 'next'.
source: <20240730184352.2503276-1-gitster@pobox.com>
* cp/unit-test-reftable-tree (2024-07-22) 5 commits
@@ -369,18 +606,6 @@ Release tarballs are available at:
source: <20240722061836.4176-1-chandrapratap3519@gmail.com>
* rj/make-cleanup (2024-07-18) 2 commits
(merged to 'next' on 2024-07-22 at bf3991f70f)
+ config.mak.uname: remove unused uname_P variable
+ Makefile: drop -Wno-universal-initializer from SP_EXTRA_FLAGS
A build tweak knob has been simplified by not setting the value
that is already the default; another unused one has been removed.
Will merge to 'master'.
source: <0d132370-3e07-4332-bcfb-c4450100d736@ramsayjones.plus.com>
* ew/cat-file-optim (2024-07-15) 10 commits
- cat-file: use writev(2) if available
- cat-file: batch_write: use size_t for length
@@ -408,16 +633,6 @@ Release tarballs are available at:
source: <xmqq1q3u8zmr.fsf@gitster.g>
* jt/doc-post-receive-hook-update (2024-07-15) 1 commit
(merged to 'next' on 2024-07-17 at 624ac4ebe2)
+ doc: clarify post-receive hook behavior
Doc update.
Will merge to 'master'.
source: <20240715183739.7808-1-jltobler@gmail.com>
* jc/reflog-expire-lookup-commit-fix (2024-07-16) 1 commit
- Revert "reflog expire: don't use lookup_commit_reference_gently()"
@@ -428,128 +643,57 @@ Release tarballs are available at:
source: <xmqqv8156rh2.fsf@gitster.g>
* es/doc-platform-support-policy (2024-07-18) 2 commits
- SQUASH???
* es/doc-platform-support-policy (2024-07-30) 1 commit
- Documentation: add platform support policy
A policy document that describes platform support levels and
expectation on platform stakeholders has been introduced.
source: <20240718173843.2411415-1-emilyshaffer@google.com>
* kn/ci-clang-format (2024-07-23) 6 commits
(merged to 'next' on 2024-07-23 at 3aca45d08a)
+ ci/style-check: add `RemoveBracesLLVM` in CI job
+ check-whitespace: detect if no base_commit is provided
+ ci: run style check on GitHub and GitLab
+ clang-format: formalize some of the spacing rules
+ clang-format: avoid spacing around bitfield colon
+ clang-format: indent preprocessor directives after hash
A CI job that use clang-format to check coding style issues in new
code has been added.
Will merge to 'master'.
source: <20240723082111.874382-1-karthik.188@gmail.com>
Inviding further discussion.
source: <20240730175448.1727373-1-emilyshaffer@google.com>
* rj/add-p-pager (2024-07-25) 4 commits
- add-patch: render hunks through the pager
- pager: introduce wait_for_pager
- pager: do not close fd 2 unnecessarily
- add-patch: test for 'p' command
(merged to 'next' on 2024-08-01 at 6f66ace52d)
+ add-patch: render hunks through the pager
+ pager: introduce wait_for_pager
+ pager: do not close fd 2 unnecessarily
+ add-patch: test for 'p' command
A 'P' command to "git add -p" that passes the patch hunk to the
pager has been added.
Will merge to 'next'.
Will merge to 'master'.
source: <76936fb1-446d-455f-b4e7-6e24dda3c17d@gmail.com>
* ad/merge-with-diff-algorithm (2024-07-13) 1 commit
(merged to 'next' on 2024-07-16 at 90fe5aff4d)
+ merge-recursive: honor diff.algorithm
Many Porcelain commands that internally use the merge machinery
were taught to consistently honor the diff.algorithm configuration.
Will merge to 'master'.
source: <pull.1743.v3.git.git.1720889507066.gitgitgadget@gmail.com>
* jc/checkout-no-op-switch-errors (2024-07-02) 1 commit
(merged to 'next' on 2024-07-22 at 9573259db9)
+ checkout: special case error messages during noop switching
"git checkout --ours" (no other arguments) complained that the
option is incompatible with branch switching, which is technically
correct, but found confusing by some users. It now says that the
user needs to give pathspec to specify what paths to checkout.
Will merge to 'master'.
source: <xmqqikxnqzz4.fsf@gitster.g>
* cp/unit-test-reftable-merged (2024-07-12) 7 commits
(merged to 'next' on 2024-07-23 at 88d2a9ee28)
+ t-reftable-merged: add test for REFTABLE_FORMAT_ERROR
+ t-reftable-merged: use reftable_ref_record_equal to compare ref records
+ t-reftable-merged: add tests for reftable_merged_table_max_update_index
+ t-reftable-merged: improve the const-correctness of helper functions
+ t-reftable-merged: improve the test t_merged_single_record()
+ t: harmonize t-reftable-merged.c with coding guidelines
+ t: move reftable/merged_test.c to the unit testing framework
Another reftable test has been ported to use the unit test framework.
Will merge to 'master'.
source: <20240712055041.6476-1-chandrapratap3519@gmail.com>
* rs/t-strvec-use-test-msg (2024-07-16) 3 commits
(merged to 'next' on 2024-07-16 at 3e860b3f12)
+ t-strvec: fix type mismatch in check_strvec
(merged to 'next' on 2024-07-15 at f26e434515)
+ t-strvec: improve check_strvec() output
(merged to 'next' on 2024-07-08 at c28c2553de)
+ t-strvec: use test_msg()
Unit test clean-up.
Will merge to 'master'.
source: <35b0ba6b-d485-44f2-a19f-3ce816f8b435@web.de>
source: <983be396-f47c-4573-8c33-af8367f8ddbe@web.de>
source: <1521ed89-989e-452b-b7fc-9e73672e0764@web.de>
* gt/unit-test-hashmap (2024-07-12) 1 commit
* gt/unit-test-hashmap (2024-07-30) 1 commit
- t: port helper/test-hashmap.c to unit-tests/t-hashmap.c
An existing test of hashmap API has been rewritten with the
unit-test framework.
What's the doneness of this one?
source: <20240711235159.5320-1-shyamthakkar001@gmail.com>
source: <20240730115101.188100-1-author@example.com>
* rs/unit-tests-test-run (2024-07-24) 7 commits
- t-strbuf: use for_test
- t-strvec: use for_test
- t-reftable-basics: use for_test
- t-ctype: use for_test
- unit-tests: add for_test
* rs/unit-tests-test-run (2024-07-30) 6 commits
- t-strvec: use if_test
- t-reftable-basics: use if_test
- t-ctype: use if_test
- unit-tests: add if_test
- unit-tests: show location of checks outside of tests
- t0080: use here-doc test body
Unit-test framework clean-up.
Still under discussion.
source: <73465c3d-1be0-456b-9471-f875e819c566@web.de>
source: <077a178e-eb30-45ff-b653-a514bfd33077@web.de>
* jc/patch-id (2024-07-29) 5 commits
. patch-id: tighten code to detect the patch header
. patch-id: rewrite code that detects the beginning of a patch
- patch-id: tighten code to detect the patch header
- patch-id: rewrite code that detects the beginning of a patch
- patch-id: make get_one_patchid() more extensible
- patch-id: call flush_current_id() only when needed
- t4204: patch-id supports various input format
@@ -559,18 +703,4 @@ Release tarballs are available at:
message.
Inviding further discussion.
source: <20240621231826.3280338-1-gitster@pobox.com>
--------------------------------------------------
[Discarded]
* jk/add-patch-with-suppress-blank-empty (2024-07-10) 1 commit
(merged to 'next' on 2024-07-11 at cec8ebb668)
+ add-patch: handle splitting hunks with diff.suppressBlankEmpty
When the diff.suppressBlankEmpty configuration variable is set,
"git add -p" failed to process a patch with an unmodified empty
line, which has been corrected.
Reverted out of 'next'.
source: <20240710093610.GA2076910@coredump.intra.peff.net>
source: <20240730011738.4032377-1-gitster@pobox.com>