What's cooking (2023/03 #06)

Junio C Hamano committed Mar 29, 2023 at 15:21 UTC 8b8ca105ae5bec38aca0004eb2049982cbb7c598
1 file changed +376 -360
whats-cooking.txt
+376 -360
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Mar 2023, #05; Wed, 22)
3 -X-master-at: 27d43aaaf50ef0ae014b88bba294f93658016a2e
4 -X-next-at: c903bb7e22f8f86da64de537e5768ab0ca886f4b
2 +Subject: What's cooking in git.git (Mar 2023, #06; Wed, 29)
3 +X-master-at: 8d90352acc5c855620042fdcc6092f23a276af6d
4 +X-next-at: 7aeee1b6c6ffd94d2145753860ccc6d375edb1da
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (Mar 2023, #05; Wed, 22)
7 +What's cooking in git.git (Mar 2023, #06; Wed, 29)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -51,382 +51,275 @@ Release tarballs are available at:
51 --------------------------------------------------
52 [Graduated to 'master']
53
54 -* ab/avoid-losing-exit-codes-in-tests (2023-02-06) 6 commits
55 - (merged to 'next' on 2023-03-06 at 60d7d0d493)
56 - + tests: don't lose misc "git" exit codes
57 - + tests: don't lose exit status with "test <op> $(git ...)"
58 - + tests: don't lose "git" exit codes in "! ( git ... | grep )"
59 - + tests: don't lose exit status with "(cd ...; test <op> $(git ...))"
60 - + t/lib-patch-mode.sh: fix ignored exit codes
61 - + auto-crlf tests: don't lose exit code in loops and outside tests
62 -
63 - Test clean-up.
64 - source: <cover-v5-0.6-00000000000-20230206T224200Z-avarab@gmail.com>
65 -
66 -
67 -* ab/fix-strategy-opts-parsing (2023-03-08) 1 commit
68 - (merged to 'next' on 2023-03-08 at bd9eff2779)
69 - + sequencer.c: fix overflow & segfault in parse_strategy_opts()
70 - (this branch is used by pw/rebase-cleanup-merge-strategy-option-handling.)
71 -
72 - The code to parse "git rebase -X<opt>" was not prepared to see an
73 - unparsable option string, which has been corrected.
74 - source: <patch-1.1-f6a06e25cf3-20230307T182039Z-avarab@gmail.com>
75 -
76 -
77 -* aj/ls-files-format-fix (2023-03-10) 1 commit
78 - (merged to 'next' on 2023-03-13 at 27f876afa4)
79 - + ls-files: fix "--format" output of relative paths
80 -
81 - Fix for a "ls-files --format="%(path)" that produced nonsense
82 - output, which was a bug in 2.38.
83 - source: <pull.1465.git.git.1678453473484.gitgitgadget@gmail.com>
84 -
85 -
86 -* ak/restore-both-incompatible-with-conflicts (2023-02-27) 1 commit
87 - (merged to 'next' on 2023-03-06 at 4ee341853c)
88 - + restore: fault --staged --worktree with merge opts
89 -
90 - "git restore" supports options like "--ours" that are only
91 - meaningful during a conflicted merge, but these options are only
92 - meaningful when updating the working tree files. These options are
93 - marked to be incompatible when both "--staged" and "--worktree" are
94 - in effect.
95 - source: <20230226184354.221-1-andy.koppe@gmail.com>
96 -
97 -
98 -* as/doc-markup-fix (2023-03-06) 1 commit
99 - (merged to 'next' on 2023-03-07 at 8c7289659a)
100 - + git-merge-tree.txt: replace spurious HTML entity
101 -
102 - Fix for a mis-mark-up in doc made in Git 2.39 days.
103 - source: <87y1oco3i9.fsf@igel.home>
104 -
105 -
106 -* ds/reprepare-alternates-when-repreparing-packfiles (2023-03-09) 1 commit
107 - (merged to 'next' on 2023-03-09 at 851bceed17)
108 - + object-file: reprepare alternates when necessary
54 +* fc/completion-colors-do-not-need-prompt-command (2023-03-16) 1 commit
55 + (merged to 'next' on 2023-03-19 at 35911c8f54)
56 + + completion: prompt: use generic colors
57
110 - Once we start running, we assumed that the list of alternate object
111 - databases would never change. Hook into the machinery used to
112 - update the list of packfiles during runtime to update this list as
113 - well.
114 - source: <pull.1490.v2.git.1678301252360.gitgitgadget@gmail.com>
58 + Lift the limitation that colored prompts can only be used with
59 + PROMPT_COMMAND mode.
60 + source: <20230228145934.4182166-1-felipe.contreras@gmail.com>
61
62
117 -* ew/commit-reach-clean-up-flags-fix (2023-02-11) 1 commit
118 - (merged to 'next' on 2023-03-06 at 5dc1c4c0b7)
119 - + commit-reach: avoid NULL dereference
63 +* fc/docbook-remove-groff-workaround (2023-03-21) 1 commit
64 + (merged to 'next' on 2023-03-21 at 6c59b16205)
65 + + doc: remove GNU troff workaround
66
121 - Fix a segfaulting loop. The function and its caller may need
122 - further clean-up.
123 - cf. <876cf920-113a-90cf-f49e-6e1b7b146acf@github.com>
124 - source: <20230211111526.2028178-1-e@80x24.org>
67 + Remove workaround for ancient versions of DocBook to make it work
68 + correctly with groff, which has not been necessary since docbook
69 + 1.76 from 2010.
70 + source: <20230320190047.79836-1-felipe.contreras@gmail.com>
71
72
127 -* ew/fetch-no-write-fetch-head-fix (2023-03-09) 1 commit
128 - (merged to 'next' on 2023-03-09 at 283e2159c8)
129 - + fetch: pass --no-write-fetch-head to subprocesses
73 +* fc/oid-quietly-parse-upstream (2023-03-16) 1 commit
74 + (merged to 'next' on 2023-03-21 at 593883005f)
75 + + object-name: fix quiet @{u} parsing
76
131 - source: <20230308222205.M679514@dcvr>
77 + "git rev-parse --quiet foo@{u}", or anything that asks @{u} to be
78 + parsed with GET_OID_QUIETLY option, did not quietly fail, which has
79 + been corrected.
80 + source: <20230316171514.23741-1-felipe.contreras@gmail.com>
81
82
134 -* fc/advice-diverged-history (2023-03-08) 1 commit
135 - (merged to 'next' on 2023-03-08 at 30e7016218)
136 - + advice: add diverging advice for novices
83 +* jk/fix-proto-downgrade-to-v0 (2023-03-17) 1 commit
84 + (merged to 'next' on 2023-03-21 at ed9e43d3ed)
85 + + git_connect(): fix corner cases in downgrading v2 to v0
86
138 - After "git pull" that is configured with pull.rebase=false
139 - merge.ff=only fails due to our end having our own development, give
140 - advice messages to get out of the "Not possible to fast-forward"
141 - state.
142 - source: <20230308024834.1562386-2-felipe.contreras@gmail.com>
87 + Transports that do not support protocol v2 did not correctly fall
88 + back to protocol v0 under certain conditions, which has been
89 + corrected.
90 + source: <ZBS6wwWXcEBwGBm/@coredump.intra.peff.net>
91
92
145 -* fc/test-aggregation-clean-up (2023-03-09) 2 commits
146 - (merged to 'next' on 2023-03-13 at f938b09366)
147 - + test: don't print aggregate-results command
148 - + test: simplify counts aggregation
93 +* pe/time-use-gettimeofday (2023-03-21) 1 commit
94 + (merged to 'next' on 2023-03-21 at 456b65b4c2)
95 + + git-compat-util: use gettimeofday(2) for time(2)
96
150 - Code clean-up for test framework.
151 - source: <20230309173032.959968-1-felipe.contreras@gmail.com>
97 + time(2) on glib 2.31+, especially on Linux, goes out of sync with
98 + higher resolution timers used for gettimeofday(2) and by the
99 + filesystem. Replace all calls to it with a git_time() wrapper and
100 + use gettimeofday(2) in its implementation.
101 + source: <20230320230507.3932018-1-gitster@pobox.com>
102
103 +--------------------------------------------------
104 +[New Topics]
105
154 -* jk/add-p-unmerged-fix (2023-03-09) 1 commit
155 - (merged to 'next' on 2023-03-09 at a46443480c)
156 - + add-patch: handle "* Unmerged path" lines
106 +* jk/really-deprecate-pack-redundant (2023-03-23) 1 commit
107 + (merged to 'next' on 2023-03-29 at 4d1bc9ac42)
108 + + pack-redundant: escalate deprecation warning to an error
109
158 - "git add -p" while the index is unmerged sometimes failed to parse
159 - the diff output it internally produces and died, which has been
160 - corrected.
161 - source: <ZAmfqC9WMl3XeyEr@coredump.intra.peff.net>
110 + "git pack-redundant" gave a warning when run, as the command has
111 + outlived its usefulness long ago and is nominated for future
112 + removal. Now we escalate to give an error.
113
114 + Will merge to 'master'.
115 + source: <20230323204047.GA9290@coredump.intra.peff.net>
116
164 -* jk/bundle-progress (2023-03-06) 1 commit
165 - (merged to 'next' on 2023-03-07 at 0df2b09e1b)
166 - + bundle: turn on --all-progress-implied by default
117
168 - Simplify UI to control progress meter given by "git bundle" command.
169 - source: <ZAMjkffYmp+DNmr+@coredump.intra.peff.net>
118 +* mk/workaround-pcre-jit-ucp-bug (2023-03-23) 1 commit
119 + (merged to 'next' on 2023-03-24 at d6c402a77b)
120 + + grep: work around UTF-8 related JIT bug in PCRE2 <= 10.34
121
122 + A recent-ish change to allow unicode character classes to be used
123 + with "grep -P" triggered a JIT bug in older pcre2 libraries.
124 + The problematic change in Git built with these older libraries has
125 + been disabled to work around the bug.
126
172 -* jk/bundle-use-dash-for-stdfiles (2023-03-06) 5 commits
173 - (merged to 'next' on 2023-03-07 at 8ceb58f725)
174 - + parse-options: use prefix_filename_except_for_dash() helper
175 - + parse-options: consistently allocate memory in fix_filename()
176 - + bundle: don't blindly apply prefix_filename() to "-"
177 - + bundle: document handling of "-" as stdin
178 - + bundle: let "-" mean stdin for reading operations
127 + Will merge to 'master'.
128 + source: <20230323172539.25230-1-minipli@grsecurity.net>
129
180 - "git bundle" learned that "-" is a common way to say that the input
181 - comes from the standard input and/or the output goes to the
182 - standard output. It used to work only for output and only from the
183 - root level of the working tree.
184 - source: <ZAMb8LSpm2gOrpeY@coredump.intra.peff.net>
130
131 +* sm/ssl-key-type-config (2023-03-23) 1 commit
132 + - http: add support for different sslcert and sslkey types.
133
187 -* jk/format-patch-change-format-for-empty-commits (2023-03-03) 1 commit
188 - (merged to 'next' on 2023-03-07 at 1c421f4a9f)
189 - + format-patch: output header for empty commits
134 + Add a few configuration variables to tell the cURL library that
135 + different types of ssl-cert and ssl-key are in use.
136
191 - "git format-patch" learned to write a log-message only output file
192 - for empty commits.
193 - source: <20230303160301.3659328-1-john@keeping.me.uk>
137 + Will merge to 'next'.
138 + source: <pull.1474.v2.git.git.1679327330032.gitgitgadget@gmail.com>
139
140
196 -* jk/format-patch-ignore-noprefix (2023-03-13) 6 commits
197 - (merged to 'next' on 2023-03-13 at 4b28e389f5)
198 - + rebase: prefer --default-prefix to --{src,dst}-prefix for format-patch
199 - (merged to 'next' on 2023-03-12 at 621d71c151)
200 - + format-patch: add format.noprefix option
201 - + format-patch: do not respect diff.noprefix
202 - + diff: add --default-prefix option
203 - + t4013: add tests for diff prefix options
204 - + diff: factor out src/dst prefix setup
141 +* jk/blame-contents-with-arbitrary-commit (2023-03-24) 1 commit
142 + (merged to 'next' on 2023-03-27 at 74beb3baf9)
143 + + blame: allow --contents to work with non-HEAD commit
144
206 - "git format-patch" honors the src/dst prefixes set to nonstandard
207 - values with configuration variables like "diff.noprefix", causing
208 - receiving end of the patch that expects the standard -p1 format to
209 - break. Teach "format-patch" to ignore end-user configuration and
210 - always use the standard prefixes.
145 + "git blame --contents=<file> <rev> -- <path>" used to be forbidden,
146 + but now it finds the origins of lines starting at <file> contents
147 + through the history that leads to <rev>.
148
212 - This is a backward compatibility breaking change.
213 - source: <ZAl3bHB9zxjLITgf@coredump.intra.peff.net>
149 + Will merge to 'master'.
150 + source: <20230324170800.331022-1-jacob.e.keller@intel.com>
151
152
216 -* ps/receive-pack-unlock-before-die (2023-03-10) 1 commit
217 - (merged to 'next' on 2023-03-13 at 8d099dffcc)
218 - + receive-pack: fix stale packfile locks when dying
153 +* ed/fsmonitor-windows-named-pipe (2023-03-24) 1 commit
154 + - fsmonitor: handle differences between Windows named pipe functions
155
220 - "git receive-pack" that responds to "git push" requests failed to
221 - clean a stale lockfile when killed in the middle, which has been
222 - corrected.
223 - source: <e1ee1d8026a361bc58d16bc741e2b347ada7a53e.1678431076.git.ps@pks.im>
156 + Fix fsmonitor on Windows when the filesystem path contains certain
157 + characters.
158
159 + Expecting a reroll.
160 + cf. <b9cf67e4-22a7-2ff0-8310-9223bea10d6d@jeffhostetler.com>
161 + source: <pull.1503.git.1679678090412.gitgitgadget@gmail.com>
162
226 -* rj/avoid-switching-to-already-used-branch (2023-02-25) 4 commits
227 - (merged to 'next' on 2023-03-06 at 7546231ddf)
228 - + switch: reject if the branch is already checked out elsewhere (test)
229 - + rebase: refuse to switch to a branch already checked out elsewhere (test)
230 - + branch: fix die_if_checked_out() when ignore_current_worktree
231 - + worktree: introduce is_shared_symref()
163
233 - A few subcommands have been taught to stop users from working on a
234 - branch that is being used in another worktree linked to the same
235 - repository.
236 - source: <6fed3b1b-1c4e-9298-19b6-7ad9c04c87dd@gmail.com>
164 +* ob/rollback-after-commit-lock-failure (2023-03-24) 1 commit
165 + (merged to 'next' on 2023-03-27 at ea237a011c)
166 + + sequencer: remove pointless rollback_lock_file()
167
168 + Code clean-up.
169
239 -* rj/bisect-already-used-branch (2023-01-22) 1 commit
240 - (merged to 'next' on 2023-03-06 at 3508814a41)
241 - + bisect: fix "reset" when branch is checked out elsewhere
170 + Will merge to 'master'.
171 + source: <20230323162235.995529-1-oswald.buddenhagen@gmx.de>
172
243 - Allow "git bisect reset" to check out the original branch when the
244 - branch is already checked out in a different worktree linked to the
245 - same repository.
246 - source: <1c36c334-9f10-3859-c92f-3d889e226769@gmail.com>
173
174 +* ob/sequencer-save-head-simplify (2023-03-24) 1 commit
175 + (merged to 'next' on 2023-03-27 at 388e26f1d1)
176 + + sequencer: rewrite save_head() in terms of write_message()
177
249 -* zh/push-to-delete-onelevel-ref (2023-03-01) 2 commits
250 - (merged to 'next' on 2023-03-06 at f08def5949)
251 - + push: allow delete single-level ref
252 - + receive-pack: fix funny ref error messsage
178 + Code clean-up.
179
254 - "git push" has been taught to allow deletion of refs with one-level
255 - names to help repairing a repository who acquired such a ref by
256 - mistake. In general, we don't encourage use of such a ref, and
257 - creation or update to such a ref is rejected as before.
258 - source: <pull.1465.v4.git.1677666029.gitgitgadget@gmail.com>
180 + Will merge to 'master'.
181 + source: <20230323162235.995544-1-oswald.buddenhagen@gmx.de>
182
260 ---------------------------------------------------
261 -[New Topics]
183
263 -* jk/fix-proto-downgrade-to-v0 (2023-03-17) 1 commit
264 - (merged to 'next' on 2023-03-21 at ed9e43d3ed)
265 - + git_connect(): fix corner cases in downgrading v2 to v0
184 +* ab/retire-scripted-add-p (2023-03-27) 1 commit
185 + (merged to 'next' on 2023-03-27 at f8cbc0c604)
186 + + t3701: we don't need no Perl for `add -i` anymore
187
267 - Transports that do not support protocol v2 did not correctly fall
268 - back to protocol v0 under certain conditions, which has been
269 - corrected.
188 + Test fix.
189
190 Will merge to 'master'.
272 - source: <ZBS6wwWXcEBwGBm/@coredump.intra.peff.net>
191 + source: <pull.1504.git.1679898996492.gitgitgadget@gmail.com>
192
193
275 -* pe/time-use-gettimeofday (2023-03-21) 1 commit
276 - (merged to 'next' on 2023-03-21 at 456b65b4c2)
277 - + git-compat-util: use gettimeofday(2) for time(2)
194 +* ps/ahead-behind-truncation-fix (2023-03-27) 1 commit
195 + - commit-graph: fix truncated generation numbers
196 + (this branch uses ds/ahead-behind.)
197
279 - time(2) on glib 2.31+, especially on Linux, goes out of sync with
280 - higher resolution timers used for gettimeofday(2) and by the
281 - filesystem. Replace all calls to it with a time_now() wrapper and
282 - then use gettimeofday(2) in its implementation.
198 + Fix unnecessary truncation of generation numbers used in-core.
199
284 - Will merge to 'master'.
285 - source: <20230320230507.3932018-1-gitster@pobox.com>
200 + Comments?
201 + source: <pull.1489.v4.git.1679311615.gitgitgadget@gmail.com>
202
203
288 -* pw/sequencer-rescheduled-ones-are-not-done-yet (2023-03-20) 1 commit
289 - - rebase -i: do not update "done" when rescheduling command
204 +* rs/archive-mtime (2023-03-27) 1 commit
205 + (merged to 'next' on 2023-03-27 at 672cd32edf)
206 + + t5000: use check_mtime()
207
291 - "rebase -i" moved a "rescheduled" insn in the todo file to the
292 - "done" list before it completed, which has been corrected.
208 + Test update.
209
294 - Expecting clarification.
295 - source: <pull.1492.git.1679237337683.gitgitgadget@gmail.com>
210 + Will merge to 'master'.
211 + source: <233edbbe-35c1-9b5b-7578-4c70c6d24449@web.de>
212
213
298 -* pw/wildmatch-fixes (2023-03-20) 3 commits
299 - - wildmatch: hide internal return values
300 - - wildmatch: avoid undefined behavior
301 - - wildmatch: fix exponential behavior
214 +* ws/sparse-check-rules (2023-03-27) 2 commits
215 + - builtin/sparse-checkout: add check-rules command
216 + - builtin/sparse-checkout: remove NEED_WORK_TREE flag
217
303 - The wildmatch library code unlearns exponential behaviour it
304 - acquired some time ago since it was borrowed from rsync.
218 + "git sparse-checkout" command learns a debugging aid for the sparse
219 + rule definitions.
220
306 - Needs review.
307 - source: <cover.1679328580.git.phillip.wood@dunelm.org.uk>
221 + Comments?
222 + source: <pull.1488.v2.git.1679903703.gitgitgadget@gmail.com>
223
224
310 -* sg/parse-options-h-initializers (2023-03-20) 3 commits
311 - - parse-options.h: use designated initializers in OPT_* macros
312 - - parse-options.h: rename _OPT_CONTAINS_OR_WITH()'s parameters
313 - - parse-options.h: use consistent name for the callback parameters
225 +* kh/commentchar-config-error-message (2023-03-27) 1 commit
226 + (merged to 'next' on 2023-03-27 at 7fdda0a984)
227 + + config: tell the user that we expect an ASCII character
228
315 - Code clean-up to use designated initializers in parse-options API.
229 + Doc update.
230
317 - Will merge to 'next'.
318 - source: <20230319165648.656738-1-szeder.dev@gmail.com>
231 + Will merge to 'master'.
232 + source: <20230327194344.12910-1-code@khaugsbakk.name>
233
234
321 -* sg/parse-options-h-users (2023-03-20) 2 commits
322 - - treewide: remove unnecessary inclusions of parse-options.h from headers
323 - - treewide: include parse-options.h in source files
235 +* mh/credential-password-expiry-wincred (2023-03-27) 1 commit
236 + - credential/wincred: store password_expiry_utc
237
325 - Code clean-up to include and/or uninclude parse-options.h file as
326 - needed.
238 + Teach the recently invented "password expiry time" trait to the
239 + wincred credential helper.
240
328 - Will merge to 'next'.
329 - source: <20230319162712.654137-1-szeder.dev@gmail.com>
241 + Area maintainer is fairly negative. Perhaps drop?
242 + cf. <35e1ebe6-e15b-1712-f030-70ab708740db@gmx.de>
243 + source: <pull.1477.git.git.1679729956620.gitgitgadget@gmail.com>
244
245
332 -* rs/archive-from-subdirectory-fixes (2023-03-20) 1 commit
333 - . archive: improve support for running in a subdirectory
246 +* mh/use-wincred-from-system (2023-03-27) 1 commit
247 + - credential/wincred: include wincred.h
248
335 - "git archive" run from a subdirectory mishandled attributes and
336 - paths outside the current directory.
249 + Code clean-up.
250
338 - Breaks CI.
339 - cf. <xmqqlejpg17g.fsf@gitster.g>
340 - source: <e923e844-6891-76dc-e7db-4771b2d91792@web.de>
251 + Area maintainer is fairly negative. Perhaps drop?
252 + cf. <8511e030-8167-715c-5ed4-1646e6e9ef85@gmx.de>
253 + source: <pull.1496.git.1679707396407.gitgitgadget@gmail.com>
254
255
343 -* tb/pack-bitmap-index-seek (2023-03-20) 6 commits
344 - (merged to 'next' on 2023-03-21 at b579e226b5)
345 - + pack-bitmap.c: factor out `bitmap_index_seek_commit()`
346 - + pack-bitmap.c: use `bitmap_index_seek()` where possible
347 - + pack-bitmap.c: factor out manual `map_pos` manipulation
348 - + pack-bitmap.c: drop unnecessary 'inline's
349 - + pack-bitmap.c: hide bitmap internals in `read_be32()`
350 - + pack-bitmap.c: hide bitmap internals in `read_u8()`
256 +* ds/p2000-fix-grep-sparse (2023-03-28) 1 commit
257 + (merged to 'next' on 2023-03-29 at 6a59283aa3)
258 + + p2000: remove stray '--sparse' flag from test
259
352 - Clean-up the pack-bitmap codepath.
260 + Fix perf test.
261
262 Will merge to 'master'.
355 - source: <cover.1679342296.git.me@ttaylorr.com>
263 + source: <pull.1505.git.1680034162144.gitgitgadget@gmail.com>
264
265
358 -* en/header-split-cleanup (2023-03-21) 16 commits
359 - - csum-file.h: remove unnecessary inclusion of cache.h
360 - - write-or-die.h: move declarations for write-or-die.c functions from cache.h
361 - - treewide: remove cache.h inclusion due to setup.h changes
362 - - setup.h: move declarations for setup.c functions from cache.h
363 - - treewide: remove cache.h inclusion due to environment.h changes
364 - - environment.h: move declarations for environment.c functions from cache.h
365 - - treewide: remove unnecessary includes of cache.h
366 - - wrapper.h: move declarations for wrapper.c functions from cache.h
367 - - path.h: move function declarations for path.c functions from cache.h
368 - - cache.h: remove expand_user_path()
369 - - abspath.h: move absolute path functions from cache.h
370 - - environment: move comment_line_char from cache.h
371 - - treewide: remove unnecessary cache.h inclusion from several sources
372 - - treewide: remove unnecessary inclusion of gettext.h
373 - - treewide: be explicit about dependence on gettext.h
374 - - treewide: remove unnecessary cache.h inclusion from a few headers
266 +* jk/chainlint-fixes (2023-03-28) 4 commits
267 + - tests: skip test_eval_ in internal chain-lint
268 + - tests: drop here-doc check from internal chain-linter
269 + - tests: replace chainlint subshell with a function
270 + - tests: run internal chain-linter under "make test"
271
376 - Split key function and data structure definitions out of cache.h to
377 - new header files and adjust the users.
272 + Test framework fix.
273
379 - Needs review.
380 - source: <pull.1493.v2.git.1679379968.gitgitgadget@gmail.com>
274 + Comments?
275 + source: <20230328202043.GA1241391@coredump.intra.peff.net>
276
277
383 -* fc/docbook-remove-groff-workaround (2023-03-21) 1 commit
384 - (merged to 'next' on 2023-03-21 at 6c59b16205)
385 - + doc: remove GNU troff workaround
278 +* jk/document-pack-redundant-deprecation (2023-03-28) 1 commit
279 + (merged to 'next' on 2023-03-29 at cb64256b97)
280 + + pack-redundant: document deprecation
281
387 - Remove workaround for ancient versions of DocBook to make it work
388 - correctly with groff, which has not been necessary since docbook
389 - 1.76 from 2010.
282 + Document that we have marked "pack-redundant" as deprecated.
283
284 Will merge to 'master'.
392 - source: <20230320190047.79836-1-felipe.contreras@gmail.com>
285 + source: <20230328190641.GF18558@coredump.intra.peff.net>
286
287
395 -* jc/am-doc-refer-to-format-patch (2023-03-21) 1 commit
396 - - am: refer to format-patch in the documentation
288 +* jk/document-rev-list-object-name (2023-03-28) 1 commit
289 + (merged to 'next' on 2023-03-29 at e1cd79f572)
290 + + docs: document caveats of rev-list's object-name output
291
398 - Doc update.
292 + Document what the pathname-looking strings in "rev-list --object"
293 + output are for and what they mean.
294
400 - Will merge to 'next'.
401 - source: <xmqq1qlij9qr.fsf@gitster.g>
295 + Will merge to 'master'.
296 + source: <20230328182650.GC18558@coredump.intra.peff.net>
297
298
404 -* jk/fast-export-cleanup (2023-03-22) 6 commits
405 - - fast-export: drop unused parameter from anonymize_commit_message()
406 - - fast-export: drop data parameter from anonymous generators
407 - - fast-export: de-obfuscate --anonymize-map handling
408 - - fast-export: factor out anonymized_entry creation
409 - - fast-export: simplify initialization of anonymized hashmaps
410 - - fast-export: drop const when storing anonymized values
299 +* ob/revert-of-revert (2023-03-28) 1 commit
300 + - sequencer: call a revert of a revert "reapply"
301
412 - Code clean-up.
302 + Instead of "Revert "Revert "original"", give "Replay "original""
303 + as the title for a revert of a revert.
304
414 - Will merge to 'next'?
415 - source: <20230322173636.GA5643@coredump.intra.peff.net>
305 + Needs more polishing: docs, tests, transitions.
306 + source: <20230323162234.995465-1-oswald.buddenhagen@gmx.de>
307
308
418 -* js/split-index-fixes (2023-03-22) 4 commits
419 - - unpack-trees: take care to propagate the split-index flag
420 - - fsmonitor: avoid overriding `cache_changed` bits
421 - - split-index; stop abusing the `base_oid` to strip the "link" extension
422 - - split-index & fsmonitor: demonstrate a bug
309 +* jk/unused-post-2.40-part2 (2023-03-28) 7 commits
310 + (merged to 'next' on 2023-03-29 at 7aeee1b6c6)
311 + + parse-options: drop parse_opt_unknown_cb()
312 + + t/helper: mark unused argv/argc arguments
313 + + mark "argv" as unused when we check argc
314 + + builtins: mark unused prefix parameters
315 + + builtins: annotate always-empty prefix parameters
316 + + builtins: always pass prefix to parse_options()
317 + + fast-import: fix file access when run from subdir
318
424 - The index files can become corrupt under certain conditions when
425 - the split-index feature is in use, especially together with
426 - fsmonitor, which have been corrected.
319 + Code clean-up for "-Wunused-parameter" build.
320
428 - Will merge to 'next'?
429 - source: <pull.1497.git.1679500859.gitgitgadget@gmail.com>
321 + Will merge to 'master'.
322 + source: <20230328205253.GA1753925@coredump.intra.peff.net>
323
324 --------------------------------------------------
325 [Stalled]
@@ -459,17 +352,19 @@ Release tarballs are available at:
352 source: <20230109173227.29264-1-jacobabel@nullpo.dev>
353
354
462 -* tl/notes--blankline (2023-02-24) 4 commits
463 - - SQUASH??? leakfix
464 - - notes.c: introduce '--separator=<paragraph-break>' option
465 - - notes.c: cleanup for "designated init"
466 - - notes.c: cleanup 'strbuf_grow' call in 'append_edit'
355 +* tl/notes-separator (2023-03-28) 4 commits
356 + . notes.c: don't do stripespace when parse file arg
357 + . notes.c: introduce '--separator=<paragraph-break>' option
358 + . notes.c: use designated initializers for clarity
359 + . notes.c: cleanup 'strbuf_grow' call in 'append_edit'
360
361 'git notes append' was taught '--separator' to specify string to insert
362 between paragraphs.
363
364 Expecting further updates on -c/-C.
472 - source: <cover.1677136319.git.dyroneteng@gmail.com>
365 + Seems to break CI.
366 + cf. <xmqqy1nf8c0f.fsf@gitster.g>
367 + source: <cover.1680012650.git.dyroneteng@gmail.com>
368
369
370 * ab/tag-object-type-errors (2022-11-22) 5 commits
@@ -522,18 +417,156 @@ Release tarballs are available at:
417 --------------------------------------------------
418 [Cooking]
419
420 +* pw/sequencer-rescheduled-ones-are-not-done-yet (2023-03-20) 1 commit
421 + - rebase -i: do not update "done" when rescheduling command
422 +
423 + "rebase -i" moved a "rescheduled" insn in the todo file to the
424 + "done" list before it completed, which has been corrected.
425 +
426 + Expecting clarification.
427 + source: <pull.1492.git.1679237337683.gitgitgadget@gmail.com>
428 +
429 +
430 +* pw/wildmatch-fixes (2023-03-27) 4 commits
431 + (merged to 'next' on 2023-03-27 at 40f52ba243)
432 + + t3070: make chain lint tester happy
433 + (merged to 'next' on 2023-03-24 at d0d1f23565)
434 + + wildmatch: hide internal return values
435 + + wildmatch: avoid undefined behavior
436 + + wildmatch: fix exponential behavior
437 +
438 + The wildmatch library code unlearns exponential behaviour it
439 + acquired some time ago since it was borrowed from rsync.
440 +
441 + Will merge to 'master'.
442 + source: <cover.1679328580.git.phillip.wood@dunelm.org.uk>
443 +
444 +
445 +* sg/parse-options-h-initializers (2023-03-20) 3 commits
446 + (merged to 'next' on 2023-03-23 at f16b3ab6d7)
447 + + parse-options.h: use designated initializers in OPT_* macros
448 + + parse-options.h: rename _OPT_CONTAINS_OR_WITH()'s parameters
449 + + parse-options.h: use consistent name for the callback parameters
450 +
451 + Code clean-up to use designated initializers in parse-options API.
452 +
453 + Will merge to 'master'.
454 + source: <20230319165648.656738-1-szeder.dev@gmail.com>
455 +
456 +
457 +* sg/parse-options-h-users (2023-03-20) 2 commits
458 + (merged to 'next' on 2023-03-23 at 2ca7d1e737)
459 + + treewide: remove unnecessary inclusions of parse-options.h from headers
460 + + treewide: include parse-options.h in source files
461 +
462 + Code clean-up to include and/or uninclude parse-options.h file as
463 + needed.
464 +
465 + Will merge to 'master'.
466 + source: <20230319162712.654137-1-szeder.dev@gmail.com>
467 +
468 +
469 +* rs/archive-from-subdirectory-fixes (2023-03-24) 1 commit
470 + - archive: improve support for running in subdirectory
471 +
472 + "git archive" run from a subdirectory mishandled attributes and
473 + paths outside the current directory.
474 + source: <7c33b01b-7b2a-25fa-9a66-1e65cd12bc84@web.de>
475 +
476 +
477 +* tb/pack-bitmap-index-seek (2023-03-20) 6 commits
478 + (merged to 'next' on 2023-03-21 at b579e226b5)
479 + + pack-bitmap.c: factor out `bitmap_index_seek_commit()`
480 + + pack-bitmap.c: use `bitmap_index_seek()` where possible
481 + + pack-bitmap.c: factor out manual `map_pos` manipulation
482 + + pack-bitmap.c: drop unnecessary 'inline's
483 + + pack-bitmap.c: hide bitmap internals in `read_be32()`
484 + + pack-bitmap.c: hide bitmap internals in `read_u8()`
485 +
486 + Clean-up the pack-bitmap codepath.
487 +
488 + On hold. There is a BUG() on data errors.
489 + source: <cover.1679342296.git.me@ttaylorr.com>
490 +
491 +
492 +* en/header-split-cleanup (2023-03-21) 16 commits
493 + - csum-file.h: remove unnecessary inclusion of cache.h
494 + - write-or-die.h: move declarations for write-or-die.c functions from cache.h
495 + - treewide: remove cache.h inclusion due to setup.h changes
496 + - setup.h: move declarations for setup.c functions from cache.h
497 + - treewide: remove cache.h inclusion due to environment.h changes
498 + - environment.h: move declarations for environment.c functions from cache.h
499 + - treewide: remove unnecessary includes of cache.h
500 + - wrapper.h: move declarations for wrapper.c functions from cache.h
501 + - path.h: move function declarations for path.c functions from cache.h
502 + - cache.h: remove expand_user_path()
503 + - abspath.h: move absolute path functions from cache.h
504 + - environment: move comment_line_char from cache.h
505 + - treewide: remove unnecessary cache.h inclusion from several sources
506 + - treewide: remove unnecessary inclusion of gettext.h
507 + - treewide: be explicit about dependence on gettext.h
508 + - treewide: remove unnecessary cache.h inclusion from a few headers
509 +
510 + Split key function and data structure definitions out of cache.h to
511 + new header files and adjust the users.
512 +
513 + Needs review.
514 + source: <pull.1493.v2.git.1679379968.gitgitgadget@gmail.com>
515 +
516 +
517 +* jc/am-doc-refer-to-format-patch (2023-03-21) 1 commit
518 + (merged to 'next' on 2023-03-23 at 01b35c0581)
519 + + am: refer to format-patch in the documentation
520 +
521 + Doc update.
522 +
523 + Will merge to 'master'.
524 + source: <xmqq1qlij9qr.fsf@gitster.g>
525 +
526 +
527 +* jk/fast-export-cleanup (2023-03-22) 6 commits
528 + (merged to 'next' on 2023-03-27 at 12b9a9308e)
529 + + fast-export: drop unused parameter from anonymize_commit_message()
530 + + fast-export: drop data parameter from anonymous generators
531 + + fast-export: de-obfuscate --anonymize-map handling
532 + + fast-export: factor out anonymized_entry creation
533 + + fast-export: simplify initialization of anonymized hashmaps
534 + + fast-export: drop const when storing anonymized values
535 +
536 + Code clean-up.
537 +
538 + Will merge to 'master'.
539 + source: <20230322173636.GA5643@coredump.intra.peff.net>
540 +
541 +
542 +* js/split-index-fixes (2023-03-27) 4 commits
543 + (merged to 'next' on 2023-03-27 at 3a7b7da0d1)
544 + + unpack-trees: take care to propagate the split-index flag
545 + + fsmonitor: avoid overriding `cache_changed` bits
546 + + split-index; stop abusing the `base_oid` to strip the "link" extension
547 + + split-index & fsmonitor: demonstrate a bug
548 +
549 + The index files can become corrupt under certain conditions when
550 + the split-index feature is in use, especially together with
551 + fsmonitor, which have been corrected.
552 +
553 + Will merge to 'master'.
554 + source: <pull.1497.v2.git.1679870743.gitgitgadget@gmail.com>
555 +
556 +
557 * ar/test-cleanup-unused-file-creation (2023-03-20) 7 commits
526 - - t1507: assert output of rev-parse
527 - - t1404: don't create unused file
528 - - t1400: assert output of update-ref
529 - - t1302: don't create unused file
530 - - t1010: don't create unused files
531 - - t1006: assert error output of cat-file
532 - - t1005: assert output of ls-files
558 + (merged to 'next' on 2023-03-28 at ad035b41ea)
559 + + t1507: assert output of rev-parse
560 + + t1404: don't create unused file
561 + + t1400: assert output of update-ref
562 + + t1302: don't create unused file
563 + + t1010: don't create unused files
564 + + t1006: assert error output of cat-file
565 + + t1005: assert output of ls-files
566
567 Test clean-up.
568
536 - Needs Review.
569 + Will merge to 'master'.
570 source: <20230312201520.370234-1-rybak.a.v@gmail.com>
571
572
@@ -557,14 +590,14 @@ Release tarballs are available at:
590 source: <pull.1394.git.1678776364753.gitgitgadget@gmail.com>
591
592
560 -* mh/credential-password-expiry-libsecret (2023-03-14) 1 commit
593 +* mh/credential-password-expiry-libsecret (2023-03-27) 1 commit
594 - credential/libsecret: support password_expiry_utc
595
596 The libsecret credential helper learns to handle the password
597 expiry time information.
598
599 Needs Review.
567 - source: <pull.1469.git.git.1678829531648.gitgitgadget@gmail.com>
600 + source: <pull.1469.v2.git.git.1679729764851.gitgitgadget@gmail.com>
601
602
603 * ps/fetch-ref-update-reporting (2023-03-20) 6 commits
@@ -596,7 +629,7 @@ Release tarballs are available at:
629 source: <cover.1678893298.git.phillip.wood@dunelm.org.uk>
630
631
599 -* ab/remove-implicit-use-of-the-repository (2023-03-17) 17 commits
632 +* ab/remove-implicit-use-of-the-repository (2023-03-28) 17 commits
633 - libs: use "struct repository *" argument, not "the_repository"
634 - post-cocci: adjust comments for recent repo_* migration
635 - cocci: apply the "revision.h" part of "the_repository.pending"
@@ -617,31 +650,8 @@ Release tarballs are available at:
650
651 Code clean-up around the use of the_repository.
652
620 - Needs review.
621 - source: <cover-00.17-00000000000-20230317T152724Z-avarab@gmail.com>
622 -
623 -
624 -* fc/completion-colors-do-not-need-prompt-command (2023-03-16) 1 commit
625 - (merged to 'next' on 2023-03-19 at 35911c8f54)
626 - + completion: prompt: use generic colors
627 -
628 - Lift the limitation that colored prompts can only be used with
629 - PROMPT_COMMAND mode.
630 -
631 - Will merge to 'master'.
632 - source: <20230228145934.4182166-1-felipe.contreras@gmail.com>
633 -
634 -
635 -* fc/oid-quietly-parse-upstream (2023-03-16) 1 commit
636 - (merged to 'next' on 2023-03-21 at 593883005f)
637 - + object-name: fix quiet @{u} parsing
638 -
639 - "git rev-parse --quiet foo@{u}", or anything that asks @{u} to be
640 - parsed with GET_OID_QUIETLY option, did not quietly fail, which has
641 - been corrected.
642 -
643 - Will merge to 'master'.
644 - source: <20230316171514.23741-1-felipe.contreras@gmail.com>
653 + Will merge to 'next'.
654 + source: <cover-v2-00.17-00000000000-20230328T110946Z-avarab@gmail.com>
655
656
657 * jk/unused-post-2.40 (2023-03-17) 4 commits
@@ -650,39 +660,44 @@ Release tarballs are available at:
660 - http: drop unused parameter from start_object_request()
661 - mailmap: drop debugging code
662
663 + More "-Wunused-parameters" code clean-up.
664 +
665 + Will merge to 'next'.
666 source: <ZBS77VYL9ZrxKtCN@coredump.intra.peff.net>
667
668
656 -* sl/diff-files-sparse (2023-03-20) 2 commits
669 +* sl/diff-files-sparse (2023-03-22) 2 commits
670 - diff-files: integrate with sparse index
671 - t1092: add tests for `git diff-files`
672
673 Teach "diff-files" not to expand sparse-index unless needed.
674
675 Comments?
663 - source: <20230320205241.105476-1-cheskaqiqi@gmail.com>
676 + source: <20230322161820.3609-1-cheskaqiqi@gmail.com>
677
678
679 * ds/ahead-behind (2023-03-20) 9 commits
667 - - commit-reach: add tips_reachable_from_bases()
668 - - for-each-ref: add ahead-behind format atom
669 - - commit-reach: implement ahead_behind() logic
670 - - commit-graph: introduce `ensure_generations_valid()`
671 - - commit-graph: return generation from memory
672 - - commit-graph: simplify compute_generation_numbers()
673 - - commit-graph: refactor compute_topological_levels()
674 - - for-each-ref: explicitly test no matches
675 - - for-each-ref: add --stdin option
680 + (merged to 'next' on 2023-03-23 at a607895174)
681 + + commit-reach: add tips_reachable_from_bases()
682 + + for-each-ref: add ahead-behind format atom
683 + + commit-reach: implement ahead_behind() logic
684 + + commit-graph: introduce `ensure_generations_valid()`
685 + + commit-graph: return generation from memory
686 + + commit-graph: simplify compute_generation_numbers()
687 + + commit-graph: refactor compute_topological_levels()
688 + + for-each-ref: explicitly test no matches
689 + + for-each-ref: add --stdin option
690 + (this branch is used by ps/ahead-behind-truncation-fix.)
691
692 "git for-each-ref" learns '%(ahead-behind:<base>)' that computes the
693 distances from a single reference point in the history with bunch
694 of commits in bulk.
695
681 - Will merge to 'next'.
696 + Will merge to 'master' after ps/ahead-behind-truncation-fix is acked.
697 source: <pull.1489.v4.git.1679311615.gitgitgadget@gmail.com>
698
699
685 -* gc/config-parsing-cleanup (2023-03-15) 8 commits
700 +* gc/config-parsing-cleanup (2023-03-28) 8 commits
701 - config.c: rename "struct config_source cf"
702 - config: report cached filenames in die_bad_number()
703 - config.c: remove current_parsing_scope
@@ -694,8 +709,8 @@ Release tarballs are available at:
709
710 Config API clean-up to reduce its dependence on static variables
711
697 - Comments?
698 - source: <pull.1463.v2.git.git.1678925506.gitgitgadget@gmail.com>
712 + Will merge to 'next'.
713 + source: <pull.1463.v3.git.git.1680025914.gitgitgadget@gmail.com>
714
715
716 * my/wildmatch-cleanups (2023-02-27) 5 commits
@@ -726,16 +741,17 @@ Release tarballs are available at:
741 source: <20230228185253.2356546-1-calvinwan@google.com>
742
743
729 -* ah/rebase-merges-config (2023-03-20) 3 commits
730 - - rebase: add a config option for --rebase-merges
731 - - rebase: deprecate --rebase-merges=""
732 - - rebase: add documentation and test for --no-rebase-merges
744 +* ah/rebase-merges-config (2023-03-27) 3 commits
745 + (merged to 'next' on 2023-03-27 at c8a894ba4b)
746 + + rebase: add a config option for --rebase-merges
747 + + rebase: deprecate --rebase-merges=""
748 + + rebase: add documentation and test for --no-rebase-merges
749
750 Streamline --rebase-merges command line option handling and
751 introduce rebase.merges configuration variable.
752
737 - Comments?
738 - source: <20230320055955.461138-1-alexhenrie24@gmail.com>
753 + Will merge to 'master'.
754 + source: <20230326030636.2635642-1-alexhenrie24@gmail.com>
755
756
757 * tk/pull-conflict-suggest-rebase-merge-not-rebase-true (2023-02-13) 1 commit
@@ -752,18 +768,18 @@ Release tarballs are available at:
768 source: <pull.1474.git.1675614276549.gitgitgadget@gmail.com>
769
770
755 -* rj/branch-unborn-in-other-worktrees (2023-02-22) 3 commits
756 - (merged to 'next' on 2023-03-06 at 6ee0ec72ae)
757 - + branch: rename orphan branches in any worktree
758 - + branch: description for orphan branch errors
759 - + branch: avoid unnecessary worktrees traversals
771 +* rj/branch-unborn-in-other-worktrees (2023-03-27) 5 commits
772 + - branch: avoid unnecessary worktrees traversals
773 + - branch: rename orphan branches in any worktree
774 + - branch: description for orphan branch errors
775 + - branch: use get_worktrees() in copy_or_rename_branch()
776 + - branch: test for failures while renaming branches
777
778 Error messages given when working on an unborn branch that is
779 checked out in another worktree have been improved.
780
764 - Needs update.
765 - cf. <877b6f9d-bab6-1343-42d0-3e17e3d0a9c5@gmail.com>
766 - source: <139555f1-21ab-d987-a58e-c7f04ce222d3@gmail.com>
781 + Kicked out of 'next' to replace with an updated version.
782 + source: <f8e6447e-5cd3-98fa-f567-39e1c60dacb0@gmail.com>
783
784
785 * ab/imap-send-requires-curl (2023-02-02) 6 commits
@@ -783,7 +799,7 @@ Release tarballs are available at:
799 source: <cover-v2-0.6-00000000000-20230202T093706Z-avarab@gmail.com>
800
801
786 -* ab/config-multi-and-nonbool (2023-03-08) 9 commits
802 +* ab/config-multi-and-nonbool (2023-03-28) 9 commits
803 - for-each-repo: with bad config, don't conflate <path> and <cmd>
804 - config API: add "string" version of *_value_multi(), fix segfaults
805 - config API users: test for *_get_value_multi() segfaults
@@ -796,12 +812,12 @@ Release tarballs are available at:
812
813 Assorted config API updates.
814
799 - Almost there.
800 - cf. <kl6l8rg5hhen.fsf@chooglen-macbookpro.roam.corp.google.com>
801 - source: <cover-v7-0.9-00000000000-20230308T090513Z-avarab@gmail.com>
815 + Will merge to 'next'.
816 + source: <cover-v8-0.9-00000000000-20230328T140126Z-avarab@gmail.com>
817
818
804 -* cb/checkout-same-branch-twice (2023-01-20) 1 commit
819 +* cb/checkout-same-branch-twice (2023-03-22) 2 commits
820 + - SQUASH??? the test marked to expect failure passes from day one
821 - checkout/switch: disallow checking out same branch in multiple worktrees
822
823 "git checkout -B $branch" failed to protect against checking out