What's cooking (2025/07 #05)
Junio C Hamano committed
Jul 17, 2025 at 14:18 UTC
57d47ee7bb2bed80e83d1f51c063b62bd9369b59
1 file changed
+269
-348
whats-cooking.txt
+269
-348
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
-Subject: What's cooking in git.git (Jul 2025, #04; Mon, 14)
3
-X-master-at: d30e120486c5e0632d97f3cba79c03efb6dbb3cb
4
-X-next-at: e9779f64349fbcc8d177d055208039877316e652
2
+Subject: What's cooking in git.git (Jul 2025, #05; Thu, 17)
3
+X-master-at: 90c0775e972847832ac8dfa6a14bc4c3abacd914
4
+X-next-at: 6ba607880dc2bbf7e13e5734880ce0f9b87d2670
5
Bcc: lwn@lwn.net, gitster@pobox.com
6
7
-What's cooking in git.git (Jul 2025, #04; Mon, 14)
7
+What's cooking in git.git (Jul 2025, #05; Thu, 17)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking in my tree. Commits
@@ -48,198 +48,235 @@ Release tarballs are available at:
48
--------------------------------------------------
49
[Graduated to 'master']
50
51
-* ac/prune-wo-the-repository (2025-07-04) 2 commits
52
- (merged to 'next' on 2025-07-07 at 3dd296a911)
53
- + builtin/prune: stop depending on 'the_repository'
54
- + repository: move 'repository_format_precious_objects' to repo scope
55
-
56
- Some code paths in the "git prune" used to ignore passed in
57
- repository object and used the_repository singleton instance
58
- instead, which has been corrected.
59
-
60
- source: <cover.1751630981.git.ayu.chandekar@gmail.com>
61
-
51
+* ag/doc-send-email (2025-06-30) 5 commits
52
+ (merged to 'next' on 2025-07-09 at cf940e82a1)
53
+ + docs: mention possible options for Proton Mail users
54
+ + docs: add a paragraph explaining the `sendmailCmd` option of sendemail
55
+ + docs: add an OAuth2.0 credential helper for AOL accounts
56
+ + docs: add outlookidfix config option to sendemail documentation
57
+ + docs: link OpenSSL's verify(1) manual page to know about -CAfile and -CApath options
58
63
-* bs/config-mak-freebsd (2025-07-02) 2 commits
64
- (merged to 'next' on 2025-07-07 at d6761aa225)
65
- + build: retire NO_UINTMAX_T
66
- + config.mak.uname: set NO_MEMMEM only for functional version
59
+ Documentation updates for "git send-email".
60
+ source: <20250630180511.499-1-gargaditya08@proton.me>
61
68
- Drop FreeBSD 4 support and assume we are at least at FreeBSD 6 with
69
- memmem() supported.
70
-
71
- source: <20250702093736.36074-1-carenas@gmail.com>
62
63
+* ly/load-bitmap-leakfix (2025-06-30) 3 commits
64
+ (merged to 'next' on 2025-07-08 at 6e6d182a8c)
65
+ + pack-bitmap: add load corrupt bitmap test
66
+ + pack-bitmap: reword comments in test_bitmap_commits()
67
+ + pack-bitmap: fix memory leak if load_bitmap() failed
68
74
-* bs/remote-helpers-doc-markup-fix (2025-07-02) 1 commit
75
- (merged to 'next' on 2025-07-07 at 60c2a47d1b)
76
- + gitremote-helpers.adoc: fix formatting
69
+ Leakfix with a new and a bit invasive test.
70
+ cf. <aG2XZYamUv5FWq/W@nand.local>
71
+ source: <pull.1962.v6.git.git.1751347929.gitgitgadget@gmail.com>
72
78
- Docfix.
79
-
80
- source: <20250702161951.22908-2-bacs@librecast.net>
73
74
+* ph/fetch-prune-optim (2025-07-01) 3 commits
75
+ (merged to 'next' on 2025-07-09 at f0a1daff6a)
76
+ + clean up interface for refs_warn_dangling_symrefs
77
+ + refs: remove old refs_warn_dangling_symref
78
+ + fetch-prune: optimize dangling-ref reporting
79
83
-* cb/total-ram-bsd-fix (2025-07-07) 1 commit
84
- (merged to 'next' on 2025-07-07 at d9a7ca747c)
85
- + builtin/gc: correct total_ram calculation with HAVE_BSD_SYSCTL
80
+ "git fetch --prune" used to be O(n^2) expensive when there are many
81
+ refs, which has been corrected.
82
+ cf. <20250708013612.GB549007@coredump.intra.peff.net>
83
+ source: <20250702011214.2835529-2-phil.hord@gmail.com>
84
87
- Use of sysctl() system call to learn the total RAM size used on
88
- BSDs has been corrected.
89
-
90
- source: <20250707164518.6600-1-carenas@gmail.com>
85
86
+* ps/doc-pack-refs-auto-with-files-backend-fix (2025-07-08) 1 commit
87
+ (merged to 'next' on 2025-07-09 at 200b4b24a8)
88
+ + docs/git-pack-refs: document heuristic used for packing loose refs
89
93
-* hy/read-cache-lock-error-fix (2025-07-03) 1 commit
94
- (merged to 'next' on 2025-07-07 at a97a188a9e)
95
- + read-cache: report lock error when refreshing index
90
+ Doc update.
91
+ source: <20250708-b4-pks-pack-refs-document-files-heuristic-v1-1-e28d65a94573@pks.im>
92
97
- A failure to open the index file for writing due to conflicting
98
- access did not state what went wrong, which has been corrected.
99
-
100
- source: <20250703074502.45593-1-hanyang.tony@bytedance.com>
93
94
+* ps/object-store (2025-07-01) 17 commits
95
+ (merged to 'next' on 2025-07-07 at e19db55858)
96
+ + odb: rename `read_object_with_reference()`
97
+ + odb: rename `pretend_object_file()`
98
+ + odb: rename `has_object()`
99
+ + odb: rename `repo_read_object_file()`
100
+ + odb: rename `oid_object_info()`
101
+ + odb: trivial refactorings to get rid of `the_repository`
102
+ + odb: get rid of `the_repository` when handling submodule sources
103
+ + odb: get rid of `the_repository` when handling the primary source
104
+ + odb: get rid of `the_repository` in `for_each()` functions
105
+ + odb: get rid of `the_repository` when handling alternates
106
+ + odb: get rid of `the_repository` in `odb_mkstemp()`
107
+ + odb: get rid of `the_repository` in `assert_oid_type()`
108
+ + odb: get rid of `the_repository` in `find_odb()`
109
+ + odb: introduce parent pointers
110
+ + object-store: rename files to "odb.{c,h}"
111
+ + object-store: rename `object_directory` to `odb_source`
112
+ + object-store: rename `raw_object_store` to `object_database`
113
+ (this branch is used by ps/object-file-wo-the-repository and ps/object-store-midx.)
114
103
-* jc/coccicheck-fails-make-when-it-fails (2025-06-23) 1 commit
104
- (merged to 'next' on 2025-07-07 at 0b7affe7cd)
105
- + coccicheck: fail "make" when it fails
115
+ Code clean-up around object access API.
116
+ source: <20250701-pks-object-store-wo-the-repository-v6-0-dbf3894ab4e2@pks.im>
117
107
- "make coccicheck" succeeds even when spatch made suggestions, which
108
- has been updated to fail in such a case.
109
-
110
- source: <xmqqbjqe77vw.fsf@gitster.g>
118
119
+* ps/refs-files-remove-empty-parent (2025-07-08) 1 commit
120
+ (merged to 'next' on 2025-07-09 at f726af7117)
121
+ + refs/files: remove empty parent dirs when ref creation fails
122
113
-* jk/all-negative-diff-filter-fix (2025-07-03) 1 commit
114
- (merged to 'next' on 2025-07-07 at 139dd3db75)
115
- + setup_revisions(): turn on diffs for all-negative diff filter
123
+ When a ref creation at refs/heads/foo/bar fails, the files backend
124
+ now removes refs/heads/foo/ if the directory is otherwise not used.
125
+ source: <20250708-b4-pks-reffiles-prune-empty-dirs-on-abort-v1-1-3bae02e4f034@pks.im>
126
117
- A diff-filter with negative-only specification like "git log
118
- --diff-filter=d" did not trigger correctly, which has been fixed.
119
-
120
- source: <20250703224428.GB1909836@coredump.intra.peff.net>
127
128
+* ps/t1006-tap-fix (2025-07-08) 1 commit
129
+ (merged to 'next' on 2025-07-09 at bbed1acc2a)
130
+ + t1006: fix broken TAP format
131
123
-* kh/doc-config-subcommands (2025-07-01) 5 commits
124
- (merged to 'next' on 2025-07-07 at b0db48b397)
125
- + config: mention --url in the synopsis
126
- + config: use --value instead of value-pattern
127
- + config: document --[no-]value
128
- + config: use --value=<pattern> consistently
129
- + config: document --[no-]show-names
132
+ Test fix.
133
+ source: <20250708-b4-pks-t1006-fix-tap-format-v1-1-c3f837448364@pks.im>
134
131
- Documentation updates.
132
-
133
- source: <cover.1751382830.git.code@khaugsbakk.name>
135
136
+* rs/parse-options-precision (2025-07-09) 7 commits
137
+ (merged to 'next' on 2025-07-09 at aefffa21b7)
138
+ + parse-options: add precision handling for OPTION_COUNTUP
139
+ + parse-options: add precision handling for OPTION_BITOP
140
+ + parse-options: add precision handling for OPTION_NEGBIT
141
+ + parse-options: add precision handling for OPTION_BIT
142
+ + parse-options: add precision handling for OPTION_SET_INT
143
+ + parse-options: add precision handling for PARSE_OPT_CMDMODE
144
+ + parse-options: require PARSE_OPT_NOARG for OPTION_BITOP
145
136
-* kn/clang-format-updates (2025-07-02) 3 commits
137
- (merged to 'next' on 2025-07-07 at 0b0770e97a)
138
- + meson: add rule to run 'git clang-format'
139
- + clang-format: add 'RemoveBracesLLVM' to the main config
140
- + clang-format: set 'ColumnLimit' to 0
146
+ Define .precision to more canned parse-options type to avoid bugs
147
+ coming from using a variable with a wrong type to capture the
148
+ parsed values.
149
+ source: <802eba72-c100-429a-80b7-7a0e8b6559ed@web.de>
150
142
- Update ".clang-format" and ".editorconfig" to match our style guide
143
- a bit better.
144
-
145
- source: <20250702-525-make-clang-format-more-robust-v3-0-705344f30580@gmail.com>
151
+--------------------------------------------------
152
+[New Topics]
153
154
+* kl/test-installed-fix (2025-07-15) 2 commits
155
+ (merged to 'next' on 2025-07-16 at 512176f26c)
156
+ + test-lib: respect GIT_TEST_INSTALLED when querying default hash
157
+ + Merge branch 'bc/use-sha256-by-default-in-3.0' into kl/test-installed-fix
158
+ (this branch uses bc/use-sha256-by-default-in-3.0.)
159
148
-* mc/netrc-service-names (2025-06-25) 3 commits
149
- (merged to 'next' on 2025-07-07 at e98100afdd)
150
- + contrib: better support symbolic port names in git-credential-netrc
151
- + contrib: warn for invalid netrc file ports in git-credential-netrc
152
- + contrib: use a more portable shebang for git-credential-netrc
160
+ GIT_TEST_INSTALLED was not honored in the recent topic related to
161
+ SHA256 hashes, which has been corrected.
162
154
- "netrc" credential helper has been improved to understand textual
155
- service names (like smtp) in addition to the numeric port numbers
156
- (like 25).
157
-
158
- source: <20250625142511.28857-1-maxim@guixotic.coop>
163
+ Will merge to 'master'.
164
+ source: <pull.2011.git.git.1752605874596.gitgitgadget@gmail.com>
165
166
161
-* ps/perlless-test-fixes (2025-07-07) 2 commits
162
- (merged to 'next' on 2025-07-07 at 2c56966ff8)
163
- + t5333: fix missing terminator for sed(1) 's' command
164
- + t4150: fix warning printed by awk due to escaped '\@'
167
+* pw/config-kvi-remove-path (2025-07-15) 1 commit
168
+ (merged to 'next' on 2025-07-16 at 3203507b49)
169
+ + config: remove unneeded struct field
170
166
- Test fixes.
167
-
168
- source: <20250707-b4-pks-t-perlless-fixes-v1-0-92b2de1c3dd0@pks.im>
171
+ Remove a redundant member from kvi struct.
172
173
+ Will merge to 'master'.
174
+ source: <31724ce432b19088b7c7643654788d8e712b3193.1752588042.git.phillip.wood@dunelm.org.uk>
175
171
-* ps/use-reftable-as-default-in-3.0 (2025-07-04) 2 commits
172
- (merged to 'next' on 2025-07-07 at 3f3402f221)
173
- + setup: use "reftable" format when experimental features are enabled
174
- + BreakingChanges: announce switch to "reftable" format
176
176
- The reftable ref backend has matured enough; Git 3.0 will make it
177
- the default format in a newly created repositories by default.
178
-
179
- source: <20250704-pks-reftable-default-backend-v3-0-a1eb63e8442a@pks.im>
177
+* rs/pop-recent-commit-with-prio-queue (2025-07-16) 4 commits
178
+ - fixup! commit: convert pop_most_recent_commit() to prio_queue
179
+ - commit: use prio_queue_replace() in pop_most_recent_commit()
180
+ - prio-queue: add prio_queue_replace()
181
+ - commit: convert pop_most_recent_commit() to prio_queue
182
183
+ The pop_most_recent_commit() function can have quite expensive
184
+ worst case performance characteristics, which has been optimized by
185
+ using prio-queue data structure.
186
182
-* re/ssh-sign-buffer-fix (2025-07-07) 1 commit
183
- (merged to 'next' on 2025-07-07 at 36dad3e4dc)
184
- + ssh signing: don't detach the filename strbuf from key_file tempfile
187
+ Will merge to 'next', after squashing the fixup in?
188
+ source: <bc079b3c-a472-4f5d-95ca-390f9de25196@web.de>
189
186
- Tempfile removal fix in the codepath to sign commits with SSH keys.
187
-
188
- source: <20250707184852.16010-1-redoste@redoste.xyz>
190
191
+* bc/contribution-under-non-real-names (2025-07-15) 1 commit
192
+ (merged to 'next' on 2025-07-16 at 6ba607880d)
193
+ + SubmittingPatches: allow non-real name contributions
194
191
-* rj/freebsd-sysinfo-build-fix (2025-07-04) 1 commit
192
- (merged to 'next' on 2025-07-07 at bc4cbfd76d)
193
- + build: fix FreeBSD build when sysinfo compat library installed
195
+ Document that we do not require "real" name when signing your
196
+ patches off.
197
195
- Build fix for FreeBSD.
196
-
197
- source: <e6a80163-47ef-436b-98a6-2ac39c477080@ramsayjones.plus.com>
198
+ Will merge to 'master'.
199
+ source: <20250716002523.1392423-1-sandals@crustytoothpaste.net>
200
201
200
-* rp/apply-intent-to-add-fix (2025-07-07) 4 commits
201
- (merged to 'next' on 2025-07-07 at 957e3fd081)
202
- + apply docs: clarify wording for --intent-to-add
203
- + t4140: test apply --intent-to-add interactions
204
- + apply: only write intents to add for new files
205
- + apply: read in the index in --intent-to-add mode
202
+* jc/ci-print-test-failures-fix (2025-07-16) 1 commit
203
+ - ci: allow github-actions print test failures again
204
207
- "git apply -N" should start from the current index and register
208
- only new files, but it instead started from an empty index, which
209
- has been corrected.
210
-
211
- source: <20250707121534.2933349-1-ray@ameretat.dev>
205
+ CI fix.
206
207
+ Comments?
208
+ source: <xmqqa553alp1.fsf_-_@gitster.g>
209
214
-* sj/string-list (2025-06-28) 8 commits
215
- (merged to 'next' on 2025-07-07 at 5a95dc8007)
216
- + u-string-list: move "remove duplicates" test to "u-string-list.c"
217
- + u-string-list: move "filter string" test to "u-string-list.c"
218
- + u-string-list: move "test_split_in_place" to "u-string-list.c"
219
- + u-string-list: move "test_split" into "u-string-list.c"
220
- + string-list: enable sign compare warnings check
221
- + string-list: return index directly when inserting an existing element
222
- + string-list: remove unused "insert_at" parameter from add_entry
223
- + string-list: fix sign compare warnings for loop iterator
210
225
- Code and test clean-up around string-list API.
226
-
227
- source: <aGDAZ6a0-PyXXGmK@ArchLinux>
211
+* rj/meson-libexecdir-fix (2025-07-15) 2 commits
212
+ (merged to 'next' on 2025-07-16 at 36c2be9510)
213
+ + po/meson.build: add missing 'ga' language code
214
+ + meson: fix installation when -Dlibexexdir is set
215
216
+ Meson-based build did not handle libexecdir setting correctly,
217
+ which has been corrected.
218
230
-* ts/merge-orig-head-doc-fix (2025-07-05) 1 commit
231
- (merged to 'next' on 2025-07-07 at 08f4a573e5)
232
- + docs: correct ORIG_HEAD example in "git merge" documentation
219
+ Will merge to 'master'.
220
+ source: <20250715233239.1539780-1-ramsay@ramsayjones.plus.com>
221
+
222
+
223
+* ds/sparse-checkout-clean (2025-07-16) 9 commits
224
+ - sparse-checkout: make 'clean' clear more files
225
+ - t: expand tests around sparse merges and clean
226
+ - sparse-index: point users to new 'clean' action
227
+ - sparse-checkout: add --verbose option to 'clean'
228
+ - dir: add generic "walk all files" helper
229
+ - sparse-checkout: match some 'clean' behavior
230
+ - sparse-checkout: add basics of 'clean' command
231
+ - sparse-checkout: remove use of the_repository
232
+ - Merge branch 'ac/deglobal-sparse-variables' into ds/sparse-checkout-clean
233
+ (this branch uses ac/deglobal-sparse-variables.)
234
+
235
+ "git sparse-checkout" subcommand learned a new "clean" action to
236
+ prune otherwise unused working-tree files that are outside the
237
+ areas of interest.
238
+
239
+ source: <pull.1941.v2.git.1752716054.gitgitgadget@gmail.com>
240
+
241
+
242
+* ps/config-wo-the-repository (2025-07-17) 22 commits
243
+ - config: fix sign comparison warnings
244
+ - config: move Git config parsing into "environment.c"
245
+ - config: remove unused `the_repository` wrappers
246
+ - config: drop `git_config_set_multivar()` wrapper
247
+ - config: drop `git_config_get_multivar_gently()` wrapper
248
+ - config: drop `git_config_set_multivar_in_file_gently()` wrapper
249
+ - config: drop `git_config_set_in_file_gently()` wrapper
250
+ - config: drop `git_config_set()` wrapper
251
+ - config: drop `git_config_set_gently()` wrapper
252
+ - config: drop `git_config_set_in_file()` wrapper
253
+ - config: drop `git_config_get_bool()` wrapper
254
+ - config: drop `git_config_get_ulong()` wrapper
255
+ - config: drop `git_config_get_int()` wrapper
256
+ - config: drop `git_config_get_string()` wrapper
257
+ - config: drop `git_config_get_string()` wrapper
258
+ - config: drop `git_config_get_string_multi()` wrapper
259
+ - config: drop `git_config_get_value()` wrapper
260
+ - config: drop `git_config_get_value()` wrapper
261
+ - config: drop `git_config_get()` wrapper
262
+ - config: drop `git_config_clear()` wrapper
263
+ - config: drop `git_config()` wrapper
264
+ - Merge branch 'bc/use-sha256-by-default-in-3.0' into ps/config-wo-the-repository
265
+ (this branch uses bc/use-sha256-by-default-in-3.0.)
266
+
267
+ The config API had a set of convenience wrapper functions that
268
+ implicitly use the_repository instance; they have been removed and
269
+ inlined at the calling sites.
270
234
- Doc fix.
235
-
236
- source: <pull.1940.git.1751737158670.gitgitgadget@gmail.com>
271
+ Will merge to 'next'?
272
+ source: <20250717-pks-config-wo-the-repository-v1-0-d888e4a17de1@pks.im>
273
274
--------------------------------------------------
239
-[New Topics]
275
+[Cooking]
276
277
* ps/sane-ctype-workaround (2025-07-09) 1 commit
242
- - sane-ctype: fix compiler error on Amazon Linux 2
278
+ (merged to 'next' on 2025-07-15 at 21b79228e3)
279
+ + sane-ctype: fix compiler error on Amazon Linux 2
280
281
Our <sane-ctype.h> header file relied on that the system-supplied
282
<ctype.h> header is not later included, which would override our
@@ -247,7 +284,7 @@ Release tarballs are available at:
284
this by preemptively including <ctype.h> near the beginning of
285
<sane-ctype.h> ourselves.
286
250
- Will merge to 'next'.
287
+ Will merge to 'master'.
288
source: <fabacc9bc7ef7d462d1c7198d5edc18c76b82270.1752139420.git.ps@pks.im>
289
290
@@ -261,36 +298,38 @@ Release tarballs are available at:
298
source: <20250708024507.62386-2-rhanneken@pobox.com>
299
300
264
-* cb/meson-avoid-broken-macos-pcre2 (2025-07-13) 1 commit
265
- - meson: disable PCRE2 dependency by default in macOS
301
+* cb/meson-avoid-broken-macos-pcre2 (2025-07-16) 1 commit
302
+ - meson: work around broken system PCRE2 dependency in macOS
303
304
Build fix for macOS.
305
269
- Will merge to 'next'.
270
- source: <20250713174807.32444-1-carenas@gmail.com>
306
+ Still in flux.
307
+ source: <20250716193000.44673-1-carenas@gmail.com>
308
309
310
* jb/gpg-program-variable-is-a-pathname (2025-07-11) 1 commit
274
- - gpg-interface: expand gpg.program as a path
311
+ (merged to 'next' on 2025-07-14 at b23aee3cb1)
312
+ + gpg-interface: expand gpg.program as a path
313
314
The gpg.program configuration variable, which names a pathname to
315
the (custom) GPG compatible program, can now be spelled with ~tilde
316
expansion.
317
280
- Will merge to 'next'.
318
+ Will merge to 'master'.
319
source: <20250711232348.460804-1-jonas.brandstoetter@gmx.at>
320
321
284
-* pw/adopt-c99-bool-officially (2025-07-14) 3 commits
285
- - strbuf: convert predicates to return bool
286
- - git-compat-util: convert string predicates to return bool
287
- - CodingGuildlines: allow the use of bool
322
+* pw/adopt-c99-bool-officially (2025-07-16) 3 commits
323
+ (merged to 'next' on 2025-07-16 at 62afce02b7)
324
+ + strbuf: convert predicates to return bool
325
+ + git-compat-util: convert string predicates to return bool
326
+ + CodingGuidelines: allow the use of bool
327
328
Declare weather-balloon we raised for "bool" type 18 months ago a
329
success and officially allow using the type in our codebase.
330
292
- Comments?
293
- source: <cover.1752499610.git.phillip.wood@dunelm.org.uk>
331
+ Will merge to 'master'.
332
+ source: <cover.1752658700.git.phillip.wood@dunelm.org.uk>
333
334
335
* pw/compound-literal-test-balloon (2025-07-14) 1 commit
@@ -302,39 +341,6 @@ Release tarballs are available at:
341
Comments?
342
source: <7ac55a5096c261b706f47ca239c381f71db2b67a.1752499653.git.phillip.wood@dunelm.org.uk>
343
305
---------------------------------------------------
306
-[Cooking]
307
-
308
-* ps/doc-pack-refs-auto-with-files-backend-fix (2025-07-08) 1 commit
309
- (merged to 'next' on 2025-07-09 at 200b4b24a8)
310
- + docs/git-pack-refs: document heuristic used for packing loose refs
311
-
312
- Doc update.
313
-
314
- Will merge to 'master'.
315
- source: <20250708-b4-pks-pack-refs-document-files-heuristic-v1-1-e28d65a94573@pks.im>
316
-
317
-
318
-* ps/refs-files-remove-empty-parent (2025-07-08) 1 commit
319
- (merged to 'next' on 2025-07-09 at f726af7117)
320
- + refs/files: remove empty parent dirs when ref creation fails
321
-
322
- When a ref creation at refs/heads/foo/bar fails, the files backend
323
- now removes refs/heads/foo/ if the directory is otherwise not used.
324
-
325
- Will merge to 'master'.
326
- source: <20250708-b4-pks-reffiles-prune-empty-dirs-on-abort-v1-1-3bae02e4f034@pks.im>
327
-
328
-
329
-* ps/t1006-tap-fix (2025-07-08) 1 commit
330
- (merged to 'next' on 2025-07-09 at bbed1acc2a)
331
- + t1006: fix broken TAP format
332
-
333
- Test fix.
334
-
335
- Will merge to 'master'.
336
- source: <20250708-b4-pks-t1006-fix-tap-format-v1-1-c3f837448364@pks.im>
337
-
344
345
* pw/3.0-commentchar-auto-deprecation (2025-07-08) 2 commits
346
- commit: print advice when core.commentString=auto
@@ -349,31 +355,28 @@ Release tarballs are available at:
355
source: <cover.1751983009.git.phillip.wood@dunelm.org.uk>
356
357
352
-* ps/object-store-midx (2025-07-09) 9 commits
358
+* ps/object-store-midx (2025-07-15) 9 commits
359
- midx: remove now-unused linked list of multi-pack indices
360
- packfile: stop using linked MIDX list in `get_all_packs()`
361
- packfile: stop using linked MIDX list in `find_pack_entry()`
362
- packfile: refactor `get_multi_pack_index()` to work on sources
357
- - midx: track whether we have loaded the MIDX
363
- midx: stop using linked list when closing MIDX
364
- packfile: refactor `prepare_packed_git_one()` to work on sources
365
- midx: start tracking per object database source
366
+ - Merge branch 'tb/midx-avoid-cruft-packs' into ps/object-store-midx
367
- Merge branch 'ps/object-store' into ps/object-store-midx
362
- (this branch uses ps/object-store.)
368
+ (this branch uses tb/midx-avoid-cruft-packs.)
369
370
Redefine where the multi-pack-index sits in the object subsystem,
371
which recently was restructured to allow multiple backends that
372
support a single object source that belongs to one repository. A
373
midx does span mulitple "object sources".
374
369
- Expecting responses.
370
- source: <20250709-b4-pks-midx-via-odb-alternate-v1-0-f31150d21331@pks.im>
375
+ Comments?
376
+ source: <20250715-b4-pks-midx-via-odb-alternate-v2-0-b0ca0b4b516e@pks.im>
377
378
373
-* ps/object-file-wo-the-repository (2025-07-09) 20 commits
374
- - object-file: drop USE_THE_REPOSITORY_VARIABLE
375
- - environment: move object creation mode into repo settings
376
- - environment: move compression level into repo settings
379
+* ps/object-file-wo-the-repository (2025-07-16) 17 commits
380
- object-file: get rid of `the_repository` in index-related functions
381
- object-file: get rid of `the_repository` in `force_object_loose()`
382
- object-file: get rid of `the_repository` in `read_loose_object()`
@@ -391,14 +394,11 @@ Release tarballs are available at:
394
- object-file: stop using `the_hash_algo`
395
- object-file: fix -Wsign-compare warnings
396
- Merge branch 'ps/object-store' into ps/object-file-wo-the-repository
394
- (this branch uses ps/object-store.)
397
398
Reduce implicit assumption and dependence on the_repository in the
399
object-file subsystem.
400
399
- Needs a bit of redoing around the configuration reading.
400
- cf. <32fceddc-c867-4a47-bde8-c873279edbc1@gmail.com>
401
- source: <20250709-pks-object-file-wo-the-repository-v1-0-62627b55707f@pks.im>
401
+ source: <20250717-pks-object-file-wo-the-repository-v2-0-36d2cd6c700e@pks.im>
402
403
404
* jk/remote-avoid-overlapping-names (2025-07-08) 1 commit
@@ -447,53 +447,25 @@ Release tarballs are available at:
447
source: <20250706215039.715732-1-usmanakinyemi202@gmail.com>
448
449
450
-* ag/doc-send-email (2025-06-30) 5 commits
451
- (merged to 'next' on 2025-07-09 at cf940e82a1)
452
- + docs: mention possible options for Proton Mail users
453
- + docs: add a paragraph explaining the `sendmailCmd` option of sendemail
454
- + docs: add an OAuth2.0 credential helper for AOL accounts
455
- + docs: add outlookidfix config option to sendemail documentation
456
- + docs: link OpenSSL's verify(1) manual page to know about -CAfile and -CApath options
457
-
458
- Documentation updates for "git send-email".
459
-
460
- Will merge to 'master'.
461
- source: <20250630180511.499-1-gargaditya08@proton.me>
462
-
463
-
464
-* rs/parse-options-precision (2025-07-09) 7 commits
465
- (merged to 'next' on 2025-07-09 at aefffa21b7)
466
- + parse-options: add precision handling for OPTION_COUNTUP
467
- + parse-options: add precision handling for OPTION_BITOP
468
- + parse-options: add precision handling for OPTION_NEGBIT
469
- + parse-options: add precision handling for OPTION_BIT
470
- + parse-options: add precision handling for OPTION_SET_INT
471
- + parse-options: add precision handling for PARSE_OPT_CMDMODE
472
- + parse-options: require PARSE_OPT_NOARG for OPTION_BITOP
473
-
474
- Define .precision to more canned parse-options type to avoid bugs
475
- coming from using a variable with a wrong type to capture the
476
- parsed values.
477
-
478
- Will merge to 'master'.
479
- source: <802eba72-c100-429a-80b7-7a0e8b6559ed@web.de>
480
-
481
-
482
-* kn/for-each-ref-skip (2025-07-11) 4 commits
483
- - for-each-ref: introduce a '--start-after' option
484
- - refs: selectively set prefix in the seek functions
485
- - ref-cache: remove unused function 'find_ref_entry()'
486
- - refs: expose `ref_iterator` via 'refs.h'
450
+* kn/for-each-ref-skip (2025-07-15) 5 commits
451
+ (merged to 'next' on 2025-07-15 at 4ea3c74afd)
452
+ + for-each-ref: introduce a '--start-after' option
453
+ + ref-filter: remove unnecessary else clause
454
+ + refs: selectively set prefix in the seek functions
455
+ + ref-cache: remove unused function 'find_ref_entry()'
456
+ + refs: expose `ref_iterator` via 'refs.h'
457
458
"git for-each-ref" learns "--skip-until" option to help
459
applications that want to page its output.
460
491
- Will merge to 'next'.
461
+ Will merge to 'master'.
462
cf. <CAP8UFD06KKF0A0WjBSw77A7fKp_pGJGVyw-OPd8-X92h=RSF+w@mail.gmail.com>
493
- source: <20250711-306-git-for-each-ref-pagination-v4-0-ed3303ad5b89@gmail.com>
463
+ source: <20250715-306-git-for-each-ref-pagination-v5-0-852d5a2f56e1@gmail.com>
464
465
496
-* tc/last-modified (2025-07-09) 3 commits
466
+* tc/last-modified (2025-07-16) 5 commits
467
+ - last-modified: support --extended format
468
+ - pretty: allow caller to disable indentation
469
- last-modified: use Bloom filters when available
470
- t/perf: add last-modified perf script
471
- last-modified: new subcommand to show when files were last modified
@@ -502,57 +474,45 @@ Release tarballs are available at:
474
ancestor commit that touched each path.
475
476
Comments?
505
- source: <20250630-toon-new-blame-tree-v3-0-3516025dc3bc@iotcl.com>
477
+ source: <20250716133206.1787549-1-toon@iotcl.com>
478
479
480
* cb/daemon-reap-children (2025-07-10) 2 commits
509
- - daemon: use sigaction() to install child_handler()
510
- - compat/mingw: allow sigaction(SIGCHLD)
481
+ (merged to 'next' on 2025-07-14 at a3574350ff)
482
+ + daemon: use sigaction() to install child_handler()
483
+ + compat/mingw: allow sigaction(SIGCHLD)
484
485
Futz with SIGCHLD handling in "git daemon".
486
514
- Will merge to 'next'?
487
+ Will merge to 'master'.
488
source: <pull.2002.v4.git.git.1752176743.gitgitgadget@gmail.com>
489
490
518
-* ac/auto-comment-char-fix (2025-06-30) 1 commit
491
+* ac/auto-comment-char-fix (2025-07-16) 2 commits
492
+ - config: set comment_line_str to "#" when core.commentChar=auto
493
- commit: avoid scanning trailing comments when 'core.commentChar' is "auto"
494
495
"git commit" that concludes a conflicted merge failed to notice and remove
496
existing comment added automatically (like "# Conflicts:") when the
497
core.commentstring is set to 'auto'.
498
525
- Expecting a reroll.
526
- cf. <f22e864e-669d-457c-838e-961bbc977c4b@gmail.com>
527
- source: <20250630182527.69167-1-ayu.chandekar@gmail.com>
499
+ Will merge to 'next'.
500
+ source: <cover.1752665506.git.ayu.chandekar@gmail.com>
501
502
530
-* ly/changed-paths-traversal (2025-07-12) 5 commits
531
- - bloom: optimize multiple pathspec items in revision
532
- - revision: make helper for pathspec to bloom keyvec
533
- - bloom: replace struct bloom_key * with struct bloom_keyvec
534
- - bloom: rename function operates on bloom_key
535
- - bloom: add test helper to return murmur3 hash
503
+* ly/changed-paths-traversal (2025-07-14) 5 commits
504
+ (merged to 'next' on 2025-07-15 at 45fdb67b92)
505
+ + bloom: optimize multiple pathspec items in revision
506
+ + revision: make helper for pathspec to bloom keyvec
507
+ + bloom: replace struct bloom_key * with struct bloom_keyvec
508
+ + bloom: rename function operates on bloom_key
509
+ + bloom: add test helper to return murmur3 hash
510
511
Lift the limitation to use changed-path filter in "git log" so that
512
it can be used for a pathspec with multiple literal paths.
513
540
- Will merge to 'next'?
541
- source: <20250712093517.17907-1-yldhome2d2@gmail.com>
542
-
543
-
544
-* ph/fetch-prune-optim (2025-07-01) 3 commits
545
- (merged to 'next' on 2025-07-09 at f0a1daff6a)
546
- + clean up interface for refs_warn_dangling_symrefs
547
- + refs: remove old refs_warn_dangling_symref
548
- + fetch-prune: optimize dangling-ref reporting
549
-
550
- "git fetch --prune" used to be O(n^2) expensive when there are many
551
- refs, which has been corrected.
552
-
514
Will merge to 'master'.
554
- cf. <20250708013612.GB549007@coredump.intra.peff.net>
555
- source: <20250702011214.2835529-2-phil.hord@gmail.com>
515
+ source: <20250712093517.17907-1-yldhome2d2@gmail.com>
516
517
518
* bc/use-sha256-by-default-in-3.0 (2025-07-01) 11 commits
@@ -568,6 +528,7 @@ Release tarballs are available at:
528
+ builtin: use default hash when outside a repository
529
+ hash: add a constant for the legacy hash algorithm
530
+ hash: add a constant for the default hash algorithm
531
+ (this branch is used by kl/test-installed-fix and ps/config-wo-the-repository.)
532
533
Prepare to flip the default hash function to SHA-256.
534
@@ -575,30 +536,26 @@ Release tarballs are available at:
536
source: <20250701212237.766774-1-sandals@crustytoothpaste.net>
537
538
578
-* lo/repo-info (2025-06-19) 7 commits
579
- . repo-info: add field layout.shallow
580
- . repo-info: add field layout.bare
581
- . repo-info: add the field references.format
582
- . repo-info: add the --allow-empty flag
583
- . repo-info: add plaintext as an output format
584
- . repo-info: add the --format flag
585
- . repo-info: declare the repo-info command
539
+* lo/repo-info (2025-07-14) 4 commits
540
+ - repo: add field layout.shallow
541
+ - repo: add field layout.bare
542
+ - repo: add the field references.format
543
+ - repo: declare the repo command
544
587
- A new subcommand "git repo-info" gives users a way to grab various
545
+ A new subcommand "git repo" gives users a way to grab various
546
repository characteristics.
589
-
590
- Expecting a reroll.
591
- cf. <0FEC4502-867F-4B9C-B752-376EF9464983@gmail.com>
592
- source: <20250619225751.99699-1-lucasseikioshiro@gmail.com>
547
+ source: <20250714235231.10137-1-lucasseikioshiro@gmail.com>
548
549
550
* cc/fast-import-export-signature-names (2025-07-09) 1 commit
596
- - fast-(import|export): improve on commit signature output format
551
+ (merged to 'next' on 2025-07-15 at a6a173da68)
552
+ + fast-(import|export): improve on commit signature output format
553
554
Clean up the way how signature on commit objects are exported to
555
and imported from fast-import stream.
556
601
- Will merge to 'next'?
557
+ Will merge to 'master'.
558
+ cf. <CABPp-BHM5afgiUf7GsTPWmrf_tm6mWnvHWMKiZPxApJzN-U8gg@mail.gmail.com>
559
source: <20250709141253.623563-1-christian.couder@gmail.com>
560
561
@@ -606,6 +563,7 @@ Release tarballs are available at:
563
- environment: remove the global variable 'sparse_expect_files_outside_of_patterns'
564
- environment: move access to "core.sparsecheckoutcone" into repo_settings
565
- environment: move access to "core.sparsecheckout" into repo_settings
566
+ (this branch is used by ds/sparse-checkout-clean.)
567
568
Two global variables related to sparse checkout have been moved to
569
the repository settings structure.
@@ -640,35 +598,37 @@ Release tarballs are available at:
598
source: <xmqqv7nyzgp7.fsf@gitster.g>
599
600
643
-* ss/compat-bswap-revamp (2025-06-11) 6 commits
644
- - bswap.h: provide a built-in based version of bswap32/64 if possible
645
- - bswap.h: remove optimized x86 version of bswap32/64
646
- - bswap.h: always overwrite ntohl/ntohll macros
647
- - bswap.h: define GIT_LITTLE_ENDIAN on MSVC as little endian
648
- - bswap.h: add support for __BYTE_ORDER__
649
- - Merge branch 'ss/revert-builtin-bswap-stuff' into ss/compat-bswap-revamp
601
+* ss/compat-bswap-revamp (2025-07-15) 6 commits
602
+ (merged to 'next' on 2025-07-16 at c8713eca28)
603
+ + bswap.h: provide a built-in based version of bswap32/64 if possible
604
+ + bswap.h: remove optimized x86 version of bswap32/64
605
+ + bswap.h: always overwrite ntohl/ ntohll macros
606
+ + bswap.h: define GIT_LITTLE_ENDIAN on msvc as little endian
607
+ + bswap.h: add support for __BYTE_ORDER__
608
+ + Merge branch 'ss/revert-builtin-bswap-stuff' into ss/compat-bswap-revamp
609
610
Clean-up compat/bswap.h mess.
611
653
- Stalled.
654
- cf. <xmqqo6tv1v1z.fsf@gitster.g>
655
- source: <20250611221444.1567638-1-sebastian@breakpoint.cc>
612
+ Will merge to 'master'.
613
+ cf. <aHbX4hIKbjO6h1R5@fruit.crustytoothpaste.net>
614
+ source: <20250715191230.12081-1-sebastian@breakpoint.cc>
615
616
617
* ja/doc-git-log-markup (2025-07-07) 9 commits
659
- - doc: git-log: convert log config to new doc format
660
- - doc: git-log: convert diff options to new doc format
661
- - doc: git-log: convert pretty formats to new doc format
662
- - doc: git-log: convert pretty options to new doc format
663
- - doc: git-log: convert rev list options to new doc format
664
- - doc: git-log: convert line range format to new doc format
665
- - doc: git-log: convert line range options to new doc format
666
- - doc: git-log convert rev-list-description to new doc format
667
- - doc: convert git-log to new documentation format
618
+ (merged to 'next' on 2025-07-14 at 8eb14e9306)
619
+ + doc: git-log: convert log config to new doc format
620
+ + doc: git-log: convert diff options to new doc format
621
+ + doc: git-log: convert pretty formats to new doc format
622
+ + doc: git-log: convert pretty options to new doc format
623
+ + doc: git-log: convert rev list options to new doc format
624
+ + doc: git-log: convert line range format to new doc format
625
+ + doc: git-log: convert line range options to new doc format
626
+ + doc: git-log convert rev-list-description to new doc format
627
+ + doc: convert git-log to new documentation format
628
629
Doc mark-up updates.
630
671
- Will merge to 'next'.
631
+ Will merge to 'master'.
632
source: <pull.1933.v3.git.1751914412.gitgitgadget@gmail.com>
633
634
@@ -692,19 +652,6 @@ Release tarballs are available at:
652
source: <20250605140644.239199-1-kuforiji98@gmail.com>
653
654
695
-* ly/load-bitmap-leakfix (2025-06-30) 3 commits
696
- (merged to 'next' on 2025-07-08 at 6e6d182a8c)
697
- + pack-bitmap: add load corrupt bitmap test
698
- + pack-bitmap: reword comments in test_bitmap_commits()
699
- + pack-bitmap: fix memory leak if load_bitmap() failed
700
-
701
- Leakfix with a new and a bit invasive test.
702
-
703
- Will merge to 'master'.
704
- cf. <aG2XZYamUv5FWq/W@nand.local>
705
- source: <pull.1962.v6.git.git.1751347929.gitgitgadget@gmail.com>
706
-
707
-
655
* tb/prepare-midx-pack-cleanup (2025-05-28) 5 commits
656
- midx: return a `packed_git` pointer from `prepare_midx_pack()`
657
- midx-write.c: extract inner loop from fill_packs_from_midx()
@@ -746,33 +693,6 @@ Release tarballs are available at:
693
source: <pull.1915.v3.git.1751128486.gitgitgadget@gmail.com>
694
695
749
-* ps/object-store (2025-07-01) 17 commits
750
- (merged to 'next' on 2025-07-07 at e19db55858)
751
- + odb: rename `read_object_with_reference()`
752
- + odb: rename `pretend_object_file()`
753
- + odb: rename `has_object()`
754
- + odb: rename `repo_read_object_file()`
755
- + odb: rename `oid_object_info()`
756
- + odb: trivial refactorings to get rid of `the_repository`
757
- + odb: get rid of `the_repository` when handling submodule sources
758
- + odb: get rid of `the_repository` when handling the primary source
759
- + odb: get rid of `the_repository` in `for_each()` functions
760
- + odb: get rid of `the_repository` when handling alternates
761
- + odb: get rid of `the_repository` in `odb_mkstemp()`
762
- + odb: get rid of `the_repository` in `assert_oid_type()`
763
- + odb: get rid of `the_repository` in `find_odb()`
764
- + odb: introduce parent pointers
765
- + object-store: rename files to "odb.{c,h}"
766
- + object-store: rename `object_directory` to `odb_source`
767
- + object-store: rename `raw_object_store` to `object_database`
768
- (this branch is used by ps/object-file-wo-the-repository and ps/object-store-midx.)
769
-
770
- Code clean-up around object access API.
771
-
772
- Will merge to 'master'.
773
- source: <20250701-pks-object-store-wo-the-repository-v6-0-dbf3894ab4e2@pks.im>
774
-
775
-
696
* cc/promisor-remote-capability (2025-06-25) 5 commits
697
- promisor-remote: use string constants for 'name' and 'url' too
698
- promisor-remote: allow a client to check fields
@@ -800,6 +720,7 @@ Release tarballs are available at:
720
+ pack-objects: factor out handling '--stdin-packs'
721
+ pack-objects: limit scope in 'add_object_entry_from_pack()'
722
+ pack-objects: use standard option incompatibility functions
723
+ (this branch is used by ps/object-store-midx.)
724
725
"pack-objects" has been taught to avoid pointing into objects in
726
cruft packs from midx.