What's cooking (2022/09 #02)
Junio C Hamano committed
Sep 9, 2022 at 15:08 UTC
a0597dcb96f9ee4af0b1c34965f0b3fea3ba0a90
1 file changed
+322
-330
whats-cooking.txt
+322
-330
@@ -1,9 +1,9 @@
1
To: git@vger.kernel.org
2
-Subject: What's cooking in git.git (Sep 2022, #01; Mon, 5)
3
-X-master-at: 79f2338b3746d23454308648b2491e5beba4beff
4
-X-next-at: 6a6ce2da067c0f93245427725e5f14352452ea04
2
+Subject: What's cooking in git.git (Sep 2022, #02; Fri, 9)
3
+X-master-at: dd3f6c4cae7e3b15ce984dce8593ff7569650e24
4
+X-next-at: 50f0e44ec40b5fab5d618dd26ebd776c47e9af13
5
6
-What's cooking in git.git (Sep 2022, #01; Mon, 5)
6
+What's cooking in git.git (Sep 2022, #02; Fri, 9)
7
--------------------------------------------------
8
9
Here are the topics that have been cooking in my tree. Commits
@@ -13,10 +13,11 @@ release). Commits prefixed with '-' are only in 'seen', and aren't
13
considered "accepted" at all. A topic without enough support may be
14
discarded after a long period of no activity.
15
16
-We just started week #9 in a 12-week cycle toward Git 2.38
17
-(tinyurl.com/gitCal), but since Monday was a holiday in US, we may
18
-see only four days worth of new patches, which is less work for our
19
-reviewers pool ;-)
16
+We are at the end of week #9 in a 12-week cycle toward Git 2.38
17
+(tinyurl.com/gitCal). I plan to tag -rc0 (i.e. preview) on the 15th
18
+or so, but I expect that many folks are busy in Chicago for Git Merge
19
+so let's not make a big fuss about it and instead treat it as just one
20
+of the regular updates to the 'master' branch.
21
22
Copies of the source code to Git live in many repositories, and the
23
following is a list of the ones I push into or their mirrors. Some
@@ -49,175 +50,216 @@ Release tarballs are available at:
50
--------------------------------------------------
51
[Graduated to 'master']
52
52
-* ac/bitmap-lookup-table (2022-08-28) 7 commits
53
- (merged to 'next' on 2022-08-29 at 05d2d2c8bd)
54
- + pack-bitmap-write: drop unused pack_idx_entry parameters
55
- (merged to 'next' on 2022-08-26 at 7914c141eb)
56
- + bitmap-lookup-table: add performance tests for lookup table
57
- + pack-bitmap: prepare to read lookup table extension
58
- + pack-bitmap-write: learn pack.writeBitmapLookupTable and add tests
59
- + pack-bitmap-write.c: write lookup table extension
60
- + bitmap: move `get commit positions` code to `bitmap_writer_finish`
61
- + Documentation/technical: describe bitmap lookup table extension
53
+* ab/retire-ppc-sha1 (2022-08-31) 2 commits
54
+ (merged to 'next' on 2022-09-05 at 480da6ef06)
55
+ + Makefile: use $(OBJECTS) instead of $(C_OBJ)
56
+ + Makefile + hash.h: remove PPC_SHA1 implementation
57
+
58
+ Remove the assembly version of SHA-1 implementation for PPC.
59
+ source: <cover-v3-0.2-00000000000-20220831T090744Z-avarab@gmail.com>
60
63
- The pack bitmap file gained a bitmap-lookup table to speed up
64
- locating the necessary bitmap for a given commit.
65
- source: <pull.1266.v6.git.1660496112.gitgitgadget@gmail.com>
61
62
+* cc/doc-trailer-whitespace-rules (2022-08-30) 1 commit
63
+ (merged to 'next' on 2022-09-05 at 4c018a3ab7)
64
+ + Documentation: clarify whitespace rules for trailers
65
+
66
+ Doc update.
67
+ source: <20220830105046.324041-1-christian.couder@gmail.com>
68
68
-* bc/gc-crontab-fix (2022-08-28) 1 commit
69
- (merged to 'next' on 2022-08-30 at a7a240a4da)
70
- + gc: use temporary file for editing crontab
71
- (this branch is used by jk/test-crontab-fixes.)
69
73
- FreeBSD portability fix for "git maintenance" that spawns "crontab"
74
- to schedule tasks.
75
- source: <20220828214143.754759-1-sandals@crustytoothpaste.net>
70
+* jc/format-patch-force-in-body-from (2022-08-29) 3 commits
71
+ (merged to 'next' on 2022-09-05 at cecaaad60e)
72
+ + format-patch: learn format.forceInBodyFrom configuration variable
73
+ + format-patch: allow forcing the use of in-body From: header
74
+ + pretty: separate out the logic to decide the use of in-body from
75
+
76
+ "git format-patch --from=<ident>" can be told to add an in-body
77
+ "From:" line even for commits that are authored by the given
78
+ <ident> with "--force-in-body-from"option.
79
+ source: <20220829213837.13849-1-gitster@pobox.com>
80
+
81
+
82
+* jk/tempfile-active-flag-cleanup (2022-08-30) 3 commits
83
+ (merged to 'next' on 2022-09-05 at 43ed4656b3)
84
+ + tempfile: update comment describing state transitions
85
+ + tempfile: drop active flag
86
+ + Merge branch 'rs/tempfile-cleanup-race-fix' into jk/tempfile-active-flag-cleanup
87
88
+ Code clean-up.
89
+ source: <Yw5nmNJSm9uzLOKL@coredump.intra.peff.net>
90
78
-* ds/bundle-uri-clone (2022-08-24) 6 commits
79
- (merged to 'next' on 2022-08-25 at 14754922fa)
80
- + clone: warn on failure to repo_init()
81
- (merged to 'next' on 2022-08-18 at 5e8a3ec71e)
82
- + clone: --bundle-uri cannot be combined with --depth
83
- + bundle-uri: add support for http(s):// and file://
84
- + clone: add --bundle-uri option
85
- + bundle-uri: create basic file-copy logic
86
- + remote-curl: add 'get' capability
87
- (this branch is used by ds/bundle-uri-3.)
91
89
- Implement "git clone --bundle-uri".
90
- source: <pull.1300.v3.git.1660050703.gitgitgadget@gmail.com>
91
- source: <5229519b-3af2-a023-8996-43343b130722@github.com>
92
-
93
-
94
-* en/merge-multi-strategies (2022-08-24) 2 commits
95
- (merged to 'next' on 2022-08-25 at 420e2eae66)
96
- + merge: small code readability improvement
97
- + merge: cleanup confusing logic for handling successful merges
98
-
99
- The code that implements multi-strategy support in "git merge" has
100
- been clean-up a bit.
101
- source: <pull.1331.v2.git.1661222541.gitgitgadget@gmail.com>
102
-
103
-
104
-* en/merge-unstash-only-on-clean-merge (2022-08-24) 1 commit
105
- (merged to 'next' on 2022-08-25 at a144bdf6cb)
106
- + merge: only apply autostash when appropriate
107
-
108
- The auto-stashed local changes created by "git merge --autostash"
109
- was mixed into a conflicted state left in the working tree, which
110
- has been corrected.
111
- source: <610b8d089db97bf1a37dbf230f51ecafe3086254.1661222541.git.gitgitgadget@gmail.com>
112
-
113
-
114
-* en/t4301-more-merge-tree-tests (2022-08-24) 1 commit
115
- (merged to 'next' on 2022-08-25 at c7abf60ff4)
116
- + t4301: add more interesting merge-tree testcases
117
- (this branch is used by es/t4301-sed-portability-fix.)
118
-
119
- More tests to protect the current behaviour of "merge-tree" before
120
- it gets further updated.
121
- source: <pull.1332.git.1661237316150.gitgitgadget@gmail.com>
122
-
123
-
124
-* en/test-without-test-create-repo (2022-08-26) 1 commit
125
- (merged to 'next' on 2022-08-30 at 4f80f48e27)
126
- + t64xx: convert 'test_create_repo' to 'git init'
127
-
128
- Test clean-up.
129
- source: <pull.1303.v2.git.git.1661485759789.gitgitgadget@gmail.com>
130
-
131
-
132
-* es/t4301-sed-portability-fix (2022-08-29) 4 commits
133
- (merged to 'next' on 2022-08-30 at eec0ceef0a)
134
- + t4301: emit blank line in more idiomatic fashion
135
- + t4301: fix broken &&-chains and add missing loop termination
136
- + t4301: account for behavior differences between sed implementations
137
- + Merge branch 'en/t4301-more-merge-tree-tests' into es/t4301-sed-portability-fix
138
-
139
- Test clean-up.
140
- source: <pull.1339.git.1661663879.gitgitgadget@gmail.com>
141
-
142
-
143
-* jk/test-crontab-fixes (2022-08-30) 1 commit
144
- (merged to 'next' on 2022-09-02 at d5113b5be3)
145
- + test-crontab: minor memory and error handling fixes
146
- (this branch uses bc/gc-crontab-fix.)
147
-
148
- Test helper fix.
149
- source: <20220823010120.25388-1-sandals@crustytoothpaste.net>
150
-
151
-
152
-* rs/tempfile-cleanup-race-fix (2022-08-27) 1 commit
153
- (merged to 'next' on 2022-08-30 at 158dd1c910)
154
- + tempfile: avoid directory cleanup race
155
- (this branch is used by jk/tempfile-active-flag-cleanup.)
156
-
157
- The clean-up of temporary files created via mks_tempfile_dt() was
158
- racy and attempted to unlink() the leading directory when signals
159
- are involved, which has been corrected.
160
- source: <526a174e-b179-c284-a21c-7afe0a0b4df2@web.de>
92
+* js/add-p-diff-parsing-fix (2022-09-01) 3 commits
93
+ (merged to 'next' on 2022-09-02 at 1545e0898d)
94
+ + add -p: ignore dirty submodules
95
+ + add -p: gracefully handle unparseable hunk headers in colored diffs
96
+ + add -p: detect more mismatches between plain vs colored diffs
97
98
+ Those who use diff-so-fancy as the diff-filter noticed a regression
99
+ or two in the code that parses the diff output in the built-in
100
+ version of "add -p", which has been corrected.
101
+ source: <pull.1336.v5.git.1662046939.gitgitgadget@gmail.com>
102
163
-* rs/test-mergesort (2022-08-28) 2 commits
164
- (merged to 'next' on 2022-08-30 at 4905149886)
165
- + test-mergesort: use mem_pool for sort input
166
- + test-mergesort: read sort input all at once
167
-
168
- Optimization of a test-helper command.
169
- source: <128f0fb8-d29b-8622-0cfe-2ecadc999db5@web.de>
103
104
+* js/range-diff-with-pathspec (2022-08-26) 3 commits
105
+ (merged to 'next' on 2022-09-05 at c027222552)
106
+ + range-diff: optionally accept pathspecs
107
+ + range-diff: consistently validate the arguments
108
+ + range-diff: reorder argument handling
109
172
-* sg/parse-options-subcommand (2022-08-25) 23 commits
173
- (merged to 'next' on 2022-08-25 at dab6bf1439)
174
- + remote: run "remote rm" argv through parse_options()
175
- + maintenance: add parse-options boilerplate for subcommands
176
- + pass subcommand "prefix" arguments to parse_options()
177
- (merged to 'next' on 2022-08-22 at 09d07c2271)
178
- + builtin/worktree.c: let parse-options parse subcommands
179
- + builtin/stash.c: let parse-options parse subcommands
180
- + builtin/sparse-checkout.c: let parse-options parse subcommands
181
- + builtin/remote.c: let parse-options parse subcommands
182
- + builtin/reflog.c: let parse-options parse subcommands
183
- + builtin/notes.c: let parse-options parse subcommands
184
- + builtin/multi-pack-index.c: let parse-options parse subcommands
185
- + builtin/hook.c: let parse-options parse subcommands
186
- + builtin/gc.c: let parse-options parse 'git maintenance's subcommands
187
- + builtin/commit-graph.c: let parse-options parse subcommands
188
- + builtin/bundle.c: let parse-options parse subcommands
189
- + parse-options: add support for parsing subcommands
190
- + parse-options: drop leading space from '--git-completion-helper' output
191
- + parse-options: clarify the limitations of PARSE_OPT_NODASH
192
- + parse-options: PARSE_OPT_KEEP_UNKNOWN only applies to --options
193
- + api-parse-options.txt: fix description of OPT_CMDMODE
194
- + t0040-parse-options: test parse_options() with various 'parse_opt_flags'
195
- + t5505-remote.sh: check the behavior without a subcommand
196
- + t3301-notes.sh: check that default operation mode doesn't take arguments
197
- + git.c: update NO_PARSEOPT markings
198
- (this branch is used by js/bisect-in-c.)
110
+ Allow passing a pathspec to "git range-diff".
111
+ source: <pull.1335.v2.git.1661506770.gitgitgadget@gmail.com>
112
200
- Introduce the "subcommand" mode to parse-options API and update the
201
- command line parser of Git commands with subcommands.
202
- source: <20220819160411.1791200-1-szeder.dev@gmail.com>
203
- source: <YwdSzrF3xaHvLsI+@coredump.intra.peff.net>
204
-
205
-
206
-* tb/midx-with-changing-preferred-pack-fix (2022-08-22) 7 commits
207
- (merged to 'next' on 2022-08-26 at 305a9d3323)
208
- + midx.c: avoid adding preferred objects twice
209
- + midx.c: include preferred pack correctly with existing MIDX
210
- + midx.c: extract `midx_fanout_add_pack_fanout()`
211
- + midx.c: extract `midx_fanout_add_midx_fanout()`
212
- + midx.c: extract `struct midx_fanout`
213
- + t/lib-bitmap.sh: avoid silencing stderr
214
- + t5326: demonstrate potential bitmap corruption
215
-
216
- Multi-pack index got corrupted when preferred pack changed from one
217
- pack to another in a certain way, which has been corrected.
218
- source: <cover.1661197803.git.me@ttaylorr.com>
113
114
+* vd/sparse-reset-checkout-fixes (2022-09-02) 1 commit
115
+ (merged to 'next' on 2022-09-05 at 8c59ace003)
116
+ + unpack-trees: fix sparse directory recursion check
117
118
+ Segfault fix-up to an earlier fix to the topic to teach "git reset"
119
+ and "git checkout" work better in a sparse checkout.
120
+ source: <pull.1344.git.1662066153644.gitgitgadget@gmail.com>
121
+
122
+--------------------------------------------------
123
+[New Topics]
124
+
125
+* ab/doc-synopsis-and-cmd-usage (2022-09-07) 34 commits
126
+ - tests: start asserting that *.txt SYNOPSIS matches -h output
127
+ - doc txt & -h consistency: make "worktree" consistent
128
+ - worktree: define subcommand -h in terms of command -h
129
+ - reflog doc: list real subcommands up-front
130
+ - doc txt & -h consistency: make "commit" consistent
131
+ - doc txt & -h consistency: make "diff-tree" consistent
132
+ - doc txt & -h consistency: use "[<label>...]" for "zero or more"
133
+ - doc txt & -h consistency: make "annotate" consistent
134
+ - doc txt & -h consistency: make "stash" consistent
135
+ - doc txt & -h consistency: add missing options
136
+ - doc txt & -h consistency: use "git foo" form, not "git-foo"
137
+ - doc txt & -h consistency: make "bundle" consistent
138
+ - doc txt & -h consistency: make "read-tree" consistent
139
+ - doc txt & -h consistency: make "rerere" consistent
140
+ - doc txt & -h consistency: add missing options and labels
141
+ - doc txt & -h consistency: make output order consistent
142
+ - doc txt & -h consistency: add or fix optional "--" syntax
143
+ - doc txt & -h consistency: fix mismatching labels
144
+ - t/helper/test-proc-receive.c: use "<options>", not "<options>..."
145
+ - doc txt & -h consistency: use "<options>", not "<options>..."
146
+ - stash doc SYNOPSIS & -h: correct padding around "[]()"
147
+ - doc txt & -h consistency: correct padding around "[]()"
148
+ - doc txt & -h consistency: add missing "]" to bugreport "-h"
149
+ - doc txt & -h consistency: add "-z" to cat-file "-h"
150
+ - doc txt & -h consistency: fix incorrect alternates syntax
151
+ - doc txt & -h consistency: word-wrap
152
+ - built-ins: consistently add "\n" between "usage" and options
153
+ - doc SYNOPSIS & -h: fix incorrect alternates syntax
154
+ - doc SYNOPSIS: consistently use ' for commands
155
+ - doc SYNOPSIS: don't use ' for subcommands
156
+ - blame: use a more detailed usage_msg_optf() error on bad -L
157
+ - bundle: define subcommand -h in terms of command -h
158
+ - builtin/bundle.c: use \t, not fix indentation 2-SP indentation
159
+ - CodingGuidelines: update and clarify command-line conventions
160
+
161
+ The short-help text shown by "git cmd -h" and the synopsis text
162
+ shown at the beginning of "git help cmd" have been made more
163
+ consistent.
164
+
165
+ Needs review.
166
+ source: <cover-00.34-00000000000-20220902T092734Z-avarab@gmail.com>
167
+
168
+
169
+* jk/rev-list-verify-objects-fix (2022-09-07) 2 commits
170
+ (merged to 'next' on 2022-09-07 at 5da58e2145)
171
+ + rev-list: disable commit graph with --verify-objects
172
+ + lookup_commit_in_graph(): use prepare_commit_graph() to check for graph
173
+
174
+ "git rev-list --verify-objects" ought to inspect the contents of
175
+ objects and notice corrupted ones, but it didn't when the commit
176
+ graph is in use, which has been corrected.
177
+
178
+ Will merge to 'master'.
179
+ source: <Yxe0k++LA/UfFLF/@coredump.intra.peff.net>
180
+
181
+
182
+* jk/upload-pack-skip-hash-check (2022-09-07) 4 commits
183
+ (merged to 'next' on 2022-09-07 at f638a5a7c9)
184
+ + t1060: check partial clone of misnamed blob
185
+ + parse_object(): check commit-graph when skip_hash set
186
+ + upload-pack: skip parse-object re-hashing of "want" objects
187
+ + parse_object(): allow skipping hash check
188
+
189
+ The server side that responds to "git fetch" and "git clone"
190
+ request has been optimized by allowing it to send objects in its
191
+ object store without recomputing and validating the object names.
192
+
193
+ Will merge to 'master'.
194
+ source: <YxfQi4qg8uJHs7Gp@coredump.intra.peff.net>
195
+ source: <YxkAxutS+B8//0WF@coredump.intra.peff.net>
196
+
197
+
198
+* rs/diff-no-index-cleanup (2022-09-07) 3 commits
199
+ (merged to 'next' on 2022-09-07 at a305340e6f)
200
+ + diff-no-index: simplify argv index calculation
201
+ + diff-no-index: release prefixed filenames
202
+ + diff-no-index: release strbuf on queue error
203
+ (this branch is used by jc/diff-no-index-two-stdin.)
204
+
205
+ "git diff --no-index A B" managed its the pathnames of its two
206
+ input files rather haphazardly, sometimes leaking them. The
207
+ command line argument processing has been straightened out to clean
208
+ it up.
209
+
210
+ Will merge to 'master'.
211
+ source: <xmqq8rmx1saz.fsf@gitster.g>
212
+
213
+
214
+* sg/parse-options-subcommand (2022-09-07) 5 commits
215
+ (merged to 'next' on 2022-09-07 at e71f9b1de6)
216
+ + notes, remote: show unknown subcommands between `'
217
+ + notes: simplify default operation mode arguments check
218
+ + test-parse-options.c: fix style of comparison with zero
219
+ + test-parse-options.c: don't use for loop initial declaration
220
+ + t0040-parse-options: remove leftover debugging
221
+
222
+ The codepath for the OPT_SUBCOMMAND facility has been cleaned up.
223
+
224
+ Will merge to 'master'.
225
+ source: <20220905185007.9042-1-szeder.dev@gmail.com>
226
+
227
+
228
+* jk/plug-list-object-filter-leaks (2022-09-08) 5 commits
229
+ (merged to 'next' on 2022-09-08 at a6b4b080e4)
230
+ + prepare_repo_settings(): plug leak of config values
231
+ + list_objects_filter_options: plug leak of filter_spec strings
232
+ + transport: free filter options in disconnect_git()
233
+ + transport: deep-copy object-filter struct for fetch-pack
234
+ + list_objects_filter_copy(): deep-copy sparse_oid_name field
235
+
236
+ The code that manages list-object-filter structure, used in partial
237
+ clones, leaked the instances, which has been plugged.
238
+
239
+ Will merge to 'master'.
240
+ source: <Yxl1BNQoy6Drf0Oe@coredump.intra.peff.net>
241
+
242
+
243
+* jk/proto-v2-ref-prefix-fix (2022-09-08) 2 commits
244
+ - fetch: add branch.*.merge to default ref-prefix extension
245
+ - fetch: stop checking for NULL transport->remote in do_fetch()
246
+
247
+ "git fetch" over protocol v2 sent an incorrect ref prefix request
248
+ to the server and made "git pull" with configured fetch refspec
249
+ that does not cover the remote branch to merge with fail, which has
250
+ been corrected.
251
+
252
+ Will merge to 'next'.
253
+ source: <YxpBMaIckimFJYEi@coredump.intra.peff.net>
254
+
255
+
256
+* vd/doc-reviewing-guidelines (2022-09-09) 1 commit
257
+ - Documentation: add ReviewingGuidelines
258
+
259
+ Just like we have coding guidelines, we now have guidelines for
260
+ reviewers.
261
+
262
+ source: <pull.1348.git.1662747205235.gitgitgadget@gmail.com>
263
264
--------------------------------------------------
265
[Stalled]
@@ -260,21 +302,19 @@ Release tarballs are available at:
302
cf. <CAFySSZDvgwbbHCHfyuaqX3tKsr-GjJ9iihygg6rNNe46Ys7_EA@mail.gmail.com>
303
source: <20220728230210.2952731-1-calvinwan@google.com>
304
263
-
264
-
265
-
305
--------------------------------------------------
267
-[New Topics]
306
+[Cooking]
307
308
* ab/unused-annotation (2022-09-01) 2 commits
270
- - git-compat-util.h: use "deprecated" for UNUSED variables
271
- - git-compat-util.h: use "UNUSED", not "UNUSED(var)"
309
+ (merged to 'next' on 2022-09-08 at dfc6123c6b)
310
+ + git-compat-util.h: use "deprecated" for UNUSED variables
311
+ + git-compat-util.h: use "UNUSED", not "UNUSED(var)"
312
(this branch uses jk/unused-annotation.)
313
314
Undoes 'jk/unused-annotation' topic and redoes it to work around
315
Coccinelle rules misfiring false positives in unrelated codepaths.
316
277
- Will merge to 'next'?
317
+ Will merge to 'master'.
318
source: <cover-0.2-00000000000-20220825T170709Z-avarab@gmail.com>
319
320
@@ -289,18 +329,11 @@ Release tarballs are available at:
329
- Makefile: add ability to TAB-complete cocci *.patch rules
330
- cocci rules: remove unused "F" metavariable from pending rule
331
292
- source: <cover-v2-0.9-00000000000-20220831T205130Z-avarab@gmail.com>
293
-
332
+ "make coccicheck" is time consuming. It has been made to run more
333
+ incrementally.
334
295
-* ab/retire-ppc-sha1 (2022-08-31) 2 commits
296
- (merged to 'next' on 2022-09-05 at 480da6ef06)
297
- + Makefile: use $(OBJECTS) instead of $(C_OBJ)
298
- + Makefile + hash.h: remove PPC_SHA1 implementation
299
-
300
- Remove the assembly version of SHA-1 implementation for PPC.
301
-
302
- Will merge to 'master'.
303
- source: <cover-v3-0.2-00000000000-20220831T090744Z-avarab@gmail.com>
335
+ Needs review.
336
+ source: <cover-v2-0.9-00000000000-20220831T205130Z-avarab@gmail.com>
337
338
339
* en/remerge-diff-fixes (2022-09-02) 3 commits
@@ -315,39 +348,30 @@ Release tarballs are available at:
348
349
350
* es/chainlint (2022-09-01) 18 commits
318
- - t: retire unused chainlint.sed
319
- - t/Makefile: teach `make test` and `make prove` to run chainlint.pl
320
- - test-lib: replace chainlint.sed with chainlint.pl
321
- - test-lib: retire "lint harder" optimization hack
322
- - t/chainlint: add more chainlint.pl self-tests
323
- - chainlint.pl: allow `|| echo` to signal failure upstream of a pipe
324
- - chainlint.pl: complain about loops lacking explicit failure handling
325
- - chainlint.pl: don't flag broken &&-chain if failure indicated explicitly
326
- - chainlint.pl: don't flag broken &&-chain if `$?` handled explicitly
327
- - chainlint.pl: don't require `&` background command to end with `&&`
328
- - t/Makefile: apply chainlint.pl to existing self-tests
329
- - chainlint.pl: don't require `return|exit|continue` to end with `&&`
330
- - chainlint.pl: validate test scripts in parallel
331
- - chainlint.pl: add parser to identify test definitions
332
- - chainlint.pl: add parser to validate tests
333
- - chainlint.pl: add POSIX shell parser
334
- - chainlint.pl: add POSIX shell lexical analyzer
335
- - t: add skeleton chainlint.pl
351
+ (merged to 'next' on 2022-09-08 at eab3357b05)
352
+ + t: retire unused chainlint.sed
353
+ + t/Makefile: teach `make test` and `make prove` to run chainlint.pl
354
+ + test-lib: replace chainlint.sed with chainlint.pl
355
+ + test-lib: retire "lint harder" optimization hack
356
+ + t/chainlint: add more chainlint.pl self-tests
357
+ + chainlint.pl: allow `|| echo` to signal failure upstream of a pipe
358
+ + chainlint.pl: complain about loops lacking explicit failure handling
359
+ + chainlint.pl: don't flag broken &&-chain if failure indicated explicitly
360
+ + chainlint.pl: don't flag broken &&-chain if `$?` handled explicitly
361
+ + chainlint.pl: don't require `&` background command to end with `&&`
362
+ + t/Makefile: apply chainlint.pl to existing self-tests
363
+ + chainlint.pl: don't require `return|exit|continue` to end with `&&`
364
+ + chainlint.pl: validate test scripts in parallel
365
+ + chainlint.pl: add parser to identify test definitions
366
+ + chainlint.pl: add parser to validate tests
367
+ + chainlint.pl: add POSIX shell parser
368
+ + chainlint.pl: add POSIX shell lexical analyzer
369
+ + t: add skeleton chainlint.pl
370
371
Revamp chainlint script for our tests.
338
- source: <pull.1322.git.git.1661992197.gitgitgadget@gmail.com>
339
-
340
-
341
-* jk/tempfile-active-flag-cleanup (2022-08-30) 3 commits
342
- (merged to 'next' on 2022-09-05 at 43ed4656b3)
343
- + tempfile: update comment describing state transitions
344
- + tempfile: drop active flag
345
- + Merge branch 'rs/tempfile-cleanup-race-fix' into jk/tempfile-active-flag-cleanup
346
-
347
- Code clean-up.
372
373
Will merge to 'master'.
350
- source: <Yw5nmNJSm9uzLOKL@coredump.intra.peff.net>
374
+ source: <pull.1322.git.git.1661992197.gitgitgadget@gmail.com>
375
376
377
* vd/scalar-to-main (2022-09-02) 9 commits
@@ -363,6 +387,8 @@ Release tarballs are available at:
387
388
Hoist the remainder of "scalar" out of contrib/ to the main part of
389
the codebase.
390
+
391
+ Needs review.
392
source: <pull.1341.v2.git.1662134210.gitgitgadget@gmail.com>
393
394
@@ -376,35 +402,16 @@ Release tarballs are available at:
402
source: <20220901173942.abolcr4aa5gixncm@lucy.dinwoodie.org>
403
404
379
-* jc/diff-no-index-unleak (2022-09-02) 1 commit
380
- - diff --no-index: unleak paths[] elements
381
-
382
- Plug a leak or two in "git diff --no-index".
383
- source: <xmqqilm579hc.fsf@gitster.g>
384
-
385
-
386
-* ow/rev-parse-parseopt-fix (2022-09-02) 1 commit
387
- - rev-parse --parseopt: detect missing opt-spec
405
+* ow/rev-parse-parseopt-fix (2022-09-08) 1 commit
406
+ (merged to 'next' on 2022-09-08 at a15efb3478)
407
+ + rev-parse --parseopt: detect missing opt-spec
408
409
The parser in the script interface to parse-options in "git
410
rev-parse" has been updated to diagnose a bogus input correctly.
411
392
- Will merge to 'next'?
393
- source: <20220902175902.22346-1-oystwa@gmail.com>
394
-
395
-
396
-* vd/sparse-reset-checkout-fixes (2022-09-02) 1 commit
397
- (merged to 'next' on 2022-09-05 at 8c59ace003)
398
- + unpack-trees: fix sparse directory recursion check
399
-
400
- Segfault fix-up to an earlier fix to the topic to teach "git reset"
401
- and "git checkout" work better in a sparse checkout.
402
-
412
Will merge to 'master'.
404
- source: <pull.1344.git.1662066153644.gitgitgadget@gmail.com>
413
+ source: <20220902175902.22346-1-oystwa@gmail.com>
414
406
---------------------------------------------------
407
-[Cooking]
415
416
* tb/diffstat-with-utf8-strwidth (2022-08-27) 1 commit
417
- diff.c: use utf8_strwidth() when appropriate
@@ -415,7 +422,7 @@ Release tarballs are available at:
422
source: <20220827085007.20030-1-tboegi@web.de>
423
424
418
-* gc/submodule-propagate-branches (2022-08-29) 6 commits
425
+* gc/submodule-clone-update-with-branches (2022-08-29) 6 commits
426
- clone, submodule update: check out branches
427
- submodule--helper: refactor up-to-date criterion
428
- submodule: return target of submodule symref
@@ -430,46 +437,26 @@ Release tarballs are available at:
437
source: <pull.1321.git.git.1661806456.gitgitgadget@gmail.com>
438
439
433
-* jc/format-patch-force-in-body-from (2022-08-29) 3 commits
434
- (merged to 'next' on 2022-09-05 at cecaaad60e)
435
- + format-patch: learn format.forceInBodyFrom configuration variable
436
- + format-patch: allow forcing the use of in-body From: header
437
- + pretty: separate out the logic to decide the use of in-body from
438
-
439
- "git format-patch --from=<ident>" can be told to add an in-body
440
- "From:" line even for commits that are authored by the given
441
- <ident> with "--force-in-body-from"option.
442
-
443
- Will merge to 'master'.
444
- source: <20220829213837.13849-1-gitster@pobox.com>
445
-
446
-
447
-* sy/sparse-grep (2022-09-02) 3 commits
440
+* sy/sparse-grep (2022-09-08) 3 commits
441
- builtin/grep.c: walking tree instead of expanding index with --sparse
442
- builtin/grep.c: integrate with sparse index
443
- builtin/grep.c: add --sparse option
444
452
- source: <20220903003623.64750-1-shaoxuan.yuan02@gmail.com>
445
+ "git grep" learned to work better in a sparse checkout.
446
454
-
455
-* cc/doc-trailer-whitespace-rules (2022-08-30) 1 commit
456
- (merged to 'next' on 2022-09-05 at 4c018a3ab7)
457
- + Documentation: clarify whitespace rules for trailers
458
-
459
- Doc update.
460
-
461
- Will merge to 'master'.
462
- source: <20220830105046.324041-1-christian.couder@gmail.com>
447
+ Needs review.
448
+ source: <20220908001854.206789-1-shaoxuan.yuan02@gmail.com>
449
450
451
* js/builtin-add-p-portability-fix (2022-08-30) 3 commits
466
- - t6132(NO_PERL): do not run the scripted `add -p`
467
- - t3701: test the built-in `add -i` regardless of NO_PERL
468
- - add -p: avoid ambiguous signed/unsigned comparison
452
+ (merged to 'next' on 2022-09-08 at 8d3e72e890)
453
+ + t6132(NO_PERL): do not run the scripted `add -p`
454
+ + t3701: test the built-in `add -i` regardless of NO_PERL
455
+ + add -p: avoid ambiguous signed/unsigned comparison
456
457
More fixes to "add -p"
458
472
- Will merge to 'next'?
459
+ Will merge to 'master'.
460
source: <pull.1340.git.1661867664.gitgitgadget@gmail.com>
461
462
@@ -483,7 +470,7 @@ Release tarballs are available at:
470
source: <20220826085815.2771102-1-dds@aueb.gr>
471
472
486
-* ds/bundle-uri-3 (2022-08-24) 8 commits
473
+* ds/bundle-uri-3 (2022-09-09) 10 commits
474
- bundle-uri: fetch a list of bundles
475
- bundle-uri: limit recursion depth for bundle lists
476
- bundle-uri: parse bundle list in config format
@@ -491,6 +478,8 @@ Release tarballs are available at:
478
- bundle-uri: create "key=value" line parsing
479
- bundle-uri: create base key-value pair parsing
480
- bundle-uri: create bundle_list struct and helpers
481
+ - bundle-uri: use plain string in find_temp_filename()
482
+ - bundle-uri: short-circuit capability parsing
483
- Merge branch 'ds/bundle-uri-clone' into ds/bundle-uri-3
484
485
Define the logical elements of a "bundle list", data structure to
@@ -498,21 +487,7 @@ Release tarballs are available at:
487
them.
488
489
Needs review.
501
- source: <pull.1333.git.1661181174.gitgitgadget@gmail.com>
502
-
503
-
504
-* js/add-p-diff-parsing-fix (2022-09-01) 3 commits
505
- (merged to 'next' on 2022-09-02 at 1545e0898d)
506
- + add -p: ignore dirty submodules
507
- + add -p: gracefully handle unparseable hunk headers in colored diffs
508
- + add -p: detect more mismatches between plain vs colored diffs
509
-
510
- Those who use diff-so-fancy as the diff-filter noticed a regression
511
- or two in the code that parses the diff output in the built-in
512
- version of "add -p", which has been corrected.
513
-
514
- Will merge to 'master'.
515
- source: <pull.1336.v5.git.1662046939.gitgitgadget@gmail.com>
490
+ source: <pull.1333.v2.git.1662734015.gitgitgadget@gmail.com>
491
492
493
* js/cmake-updates (2022-08-24) 5 commits
@@ -525,21 +500,10 @@ Release tarballs are available at:
500
Update to build procedure with VS using CMake/CTest.
501
502
Needs review.
503
+ cf. <3df77ffd-85a2-3a54-9005-34a24ec6e82d@github.com>
504
source: <pull.1320.v2.git.1661243463.gitgitgadget@gmail.com>
505
506
531
-* js/range-diff-with-pathspec (2022-08-26) 3 commits
532
- (merged to 'next' on 2022-09-05 at c027222552)
533
- + range-diff: optionally accept pathspecs
534
- + range-diff: consistently validate the arguments
535
- + range-diff: reorder argument handling
536
-
537
- Allow passing a pathspec to "git range-diff".
538
-
539
- Will merge to 'master'.
540
- source: <pull.1335.v2.git.1661506770.gitgitgadget@gmail.com>
541
-
542
-
507
* jk/unused-annotation (2022-08-19) 11 commits
508
(merged to 'next' on 2022-08-24 at 2174b8c75d)
509
+ is_path_owned_by_current_uid(): mark "report" parameter as unused
@@ -559,7 +523,7 @@ Release tarballs are available at:
523
removed for structural reasons), to prepare us to later compile
524
with -Wunused warning turned on.
525
562
- Will keep but 'ab/unused-annotation' will undo/redo the whole thing.
526
+ Will merge to 'master' along with 'ab/unused-annotation' that undoes the whole thing.
527
cf. <Ywh7ppVFk6VK1Ybs@coredump.intra.peff.net>
528
cf. <xmqqy1v7r3so.fsf@gitster.g>
529
source: <Yv9gxqH6nK2KYnNj@coredump.intra.peff.net>
@@ -582,12 +546,14 @@ Release tarballs are available at:
546
source: <pull.1326.v4.git.1661962145.gitgitgadget@gmail.com>
547
548
585
-* pw/rebase-keep-base-fixes (2022-08-18) 5 commits
549
+* pw/rebase-keep-base-fixes (2022-09-07) 7 commits
550
- rebase --keep-base: imply --no-fork-point
551
- rebase --keep-base: imply --reapply-cherry-picks
588
- - rebase: factor out merge_base calculation
552
+ - rebase: factor out branch_base calculation
553
+ - rebase: rename merge_base to branch_base
554
- rebase: store orig_head as a commit
555
- t3416: set $EDITOR in subshell
556
+ - t3416: tighten two tests
557
558
"git rebase --keep-base" used to discard the commits that are
559
already cherry-picked to the upstream, even when "keep-base" meant
@@ -596,9 +562,9 @@ Release tarballs are available at:
562
option now implies --reapply-cherry-picks and --no-fork-point
563
options.
564
599
- Expecting a reroll.
600
- cf. <eab55cef-62bd-af2b-c295-1e76beca032f@gmail.com>
601
- source: <pull.1323.git.1660576283.gitgitgadget@gmail.com>
565
+ Overall looking good, with some iffy bits.
566
+ cf. <xmqqzgfbuk95.fsf@gitster.g>
567
+ source: <pull.1323.v2.git.1662561470.gitgitgadget@gmail.com>
568
569
570
* ag/merge-strategies-in-c (2022-08-10) 14 commits
@@ -625,7 +591,8 @@ Release tarballs are available at:
591
source: <20220809185429.20098-1-alban.gruin@gmail.com>
592
593
628
-* sy/mv-out-of-cone (2022-08-10) 9 commits
594
+* sy/mv-out-of-cone (2022-09-08) 10 commits
595
+ - builtin/mv.c: fix possible segfault in add_slash()
596
(merged to 'next' on 2022-08-17 at 2316d9ce4d)
597
+ mv: check overwrite for in-to-out move
598
+ advice.h: add advise_on_moving_dirty_path()
@@ -641,9 +608,9 @@ Release tarballs are available at:
608
move a path from a directory that is "in cone" to another directory
609
that is "out of cone". Handling of such a case has been improved.
610
644
- An oob read access makes sanitizer build segfault.
645
- cf.<YwdJRRuST2SP8ZT7@coredump.intra.peff.net>
611
+ Will merge to 'next'.
612
source: <20220809120910.2021413-1-shaoxuan.yuan02@gmail.com>
613
+ source: <20220908230223.239970-1-shaoxuan.yuan02@gmail.com>
614
615
616
* ab/submodule-helper-prep (2022-09-02) 33 commits
@@ -689,46 +656,51 @@ Release tarballs are available at:
656
source: <cover-v4-00.33-00000000000-20220831T230519Z-avarab@gmail.com>
657
658
692
-* ab/dedup-config-and-command-docs (2022-08-31) 9 commits
693
- - docs: add CONFIGURATION sections that fuzzy map to built-ins
694
- - docs: add CONFIGURATION sections that map to a built-in
695
- - log docs: de-duplicate configuration sections
696
- - difftool docs: de-duplicate configuration sections
697
- - notes docs: de-duplicate and combine configuration sections
698
- - apply docs: de-duplicate configuration sections
699
- - send-email docs: de-duplicate configuration sections
700
- - grep docs: de-duplicate configuration sections
701
- - docs: add and use include template for config/* includes
659
+* ab/dedup-config-and-command-docs (2022-09-07) 9 commits
660
+ (merged to 'next' on 2022-09-08 at cd5b217110)
661
+ + docs: add CONFIGURATION sections that fuzzy map to built-ins
662
+ + docs: add CONFIGURATION sections that map to a built-in
663
+ + log docs: de-duplicate configuration sections
664
+ + difftool docs: de-duplicate configuration sections
665
+ + notes docs: de-duplicate and combine configuration sections
666
+ + apply docs: de-duplicate configuration sections
667
+ + send-email docs: de-duplicate configuration sections
668
+ + grep docs: de-duplicate configuration sections
669
+ + docs: add and use include template for config/* includes
670
671
Share the text used to explain configuration variables used by "git
672
<subcmd>" in "git help <subcmd>" with the text from "git help config".
705
- source: <cover-v3-0.9-00000000000-20220831T083759Z-avarab@gmail.com>
673
+
674
+ Will merge to 'master'.
675
+ cf. <CAHd-oW71qvhG16YtMweA26SDCLKn+LHZe13njn18CD==9Ewbnw@mail.gmail.com>
676
+ source: <cover-v4-0.9-00000000000-20220907T082419Z-avarab@gmail.com>
677
678
679
* ab/submodule-helper-leakfix (2022-09-02) 18 commits
709
- - submodule--helper: fix a configure_added_submodule() leak
710
- - submodule--helper: free rest of "displaypath" in "struct update_data"
711
- - submodule--helper: free some "displaypath" in "struct update_data"
712
- - submodule--helper: fix a memory leak in print_status()
713
- - submodule--helper: fix a leak in module_add()
714
- - submodule--helper: fix obscure leak in module_add()
715
- - submodule--helper: fix "reference" leak
716
- - submodule--helper: fix a memory leak in get_default_remote_submodule()
717
- - submodule--helper: fix a leak with repo_clear()
718
- - submodule--helper: fix "sm_path" and other "module_cb_list" leaks
719
- - submodule--helper: fix "errmsg_str" memory leak
720
- - submodule--helper: add and use *_release() functions
721
- - submodule--helper: don't leak {run,capture}_command() cp.dir argument
722
- - submodule--helper: "struct pathspec" memory leak in module_update()
723
- - submodule--helper: fix most "struct pathspec" memory leaks
724
- - submodule--helper: fix trivial get_default_remote_submodule() leak
725
- - submodule--helper: fix a leak in "clone_submodule"
726
- - Merge branch 'ab/submodule-helper-prep' into ab/submodule-helper-leakfix
680
+ (merged to 'next' on 2022-09-08 at bf21cfed4b)
681
+ + submodule--helper: fix a configure_added_submodule() leak
682
+ + submodule--helper: free rest of "displaypath" in "struct update_data"
683
+ + submodule--helper: free some "displaypath" in "struct update_data"
684
+ + submodule--helper: fix a memory leak in print_status()
685
+ + submodule--helper: fix a leak in module_add()
686
+ + submodule--helper: fix obscure leak in module_add()
687
+ + submodule--helper: fix "reference" leak
688
+ + submodule--helper: fix a memory leak in get_default_remote_submodule()
689
+ + submodule--helper: fix a leak with repo_clear()
690
+ + submodule--helper: fix "sm_path" and other "module_cb_list" leaks
691
+ + submodule--helper: fix "errmsg_str" memory leak
692
+ + submodule--helper: add and use *_release() functions
693
+ + submodule--helper: don't leak {run,capture}_command() cp.dir argument
694
+ + submodule--helper: "struct pathspec" memory leak in module_update()
695
+ + submodule--helper: fix most "struct pathspec" memory leaks
696
+ + submodule--helper: fix trivial get_default_remote_submodule() leak
697
+ + submodule--helper: fix a leak in "clone_submodule"
698
+ + Merge branch 'ab/submodule-helper-prep' into ab/submodule-helper-leakfix
699
(this branch uses ab/submodule-helper-prep.)
700
701
Plugging leaks in submodule--helper.
702
731
- Will merge to 'next'?
703
+ Will merge to 'master'.
704
source: <cover-v7-00.17-00000000000-20220831T231003Z-avarab@gmail.com>
705
706
@@ -766,3 +738,23 @@ Release tarballs are available at:
738
739
Final bits of "git bisect.sh" have been rewritten in C.
740
source: <pull.1132.v6.git.1661885419.gitgitgadget@gmail.com>
741
+
742
+--------------------------------------------------
743
+[Discarded]
744
+
745
+* jc/diff-no-index-unleak (2022-09-02) 1 commit
746
+ . diff --no-index: unleak paths[] elements
747
+
748
+ Plug a leak or two in "git diff --no-index".
749
+
750
+ Superseded by the rs/diff-no-index-cleanup topic.
751
+ source: <xmqqilm579hc.fsf@gitster.g>
752
+
753
+
754
+* jc/diff-no-index-two-stdin (2022-09-07) 1 commit
755
+ . diff: "--no-index - -" compares the same standard input
756
+ (this branch uses rs/diff-no-index-cleanup.)
757
+
758
+ "git diff --no-index - -" learned to optimize the comparison of the
759
+ same thing obtained from the standard input.
760
+ source: <xmqqlequsvt4.fsf_-_@gitster.g>