What's cooking (2021/08 #04)
Junio C Hamano committed
Aug 10, 2021 at 16:01 UTC
05ed4626637ce7f32636dce56234cb7f15fed7fe
1 file changed
+167
-158
whats-cooking.txt
+167
-158
@@ -1,9 +1,9 @@
1
To: git@vger.kernel.org
2
-Subject: What's cooking in git.git (Aug 2021, #03; Fri, 6)
2
+Subject: What's cooking in git.git (Aug 2021, #04; Tue, 10)
3
X-master-at: 2d755dfac9aadab25c3e025b849252b8c0a61465
4
-X-next-at: 0d66db33f37daf054bbe20901c0ccadbc4558854
4
+X-next-at: d937d09924f20c2ef76e4ae1cc20f566d2ecf953
5
6
-What's cooking in git.git (Aug 2021, #03; Fri, 6)
6
+What's cooking in git.git (Aug 2021, #04; Tue, 10)
7
--------------------------------------------------
8
9
Here are the topics that have been cooking in my tree. Commits
@@ -17,11 +17,8 @@ useful"). Do not read too much into a topic being in (or not in)
17
'seen'. The ones marked with '.' do not appear in any of the
18
integration branches, but I am still holding onto them.
19
20
-Git 2.33-rc1 has been tagged. The much less invasive "shopt -u
21
-checkwinsize" approach will be used to address the COLUMNS issue at
22
-least for the final release. I do not know what we want to do with
23
-the "log -m" means "log -m -p" issue yet (we haven't heard from the
24
-other camp), so it is in a "broken" state in -rc1.
20
+Git 2.33-rc2 will be tagged tomorrow, with a few build and
21
+regression fixes (not in 'master' yet as of this writing).
22
23
Copies of the source code to Git live in many repositories, and the
24
following is a list of the ones I push into or their mirrors. Some
@@ -52,188 +49,141 @@ Release tarballs are available at:
49
https://www.kernel.org/pub/software/scm/git/
50
51
--------------------------------------------------
55
-[Graduated to 'master']
56
-
57
-* ab/getcwd-test (2021-07-30) 1 commit
58
- (merged to 'next' on 2021-08-02 at 22ecd02929)
59
- + t0001: fix broken not-quite getcwd(3) test in bed67874e2
60
-
61
- Portability test update.
62
-
63
-
64
-* ab/pickaxe-pcre2 (2021-08-04) 1 commit
65
- (merged to 'next' on 2021-08-05 at 2c90b51f76)
66
- + diff: --pickaxe-all typofix
67
-
68
- Documentation update.
69
-
52
+[New Topics]
53
71
-* ab/update-submitting-patches (2021-07-22) 2 commits
72
- (merged to 'next' on 2021-07-30 at 9ae2de7f7a)
73
- + SubmittingPatches: replace discussion of Travis with GitHub Actions
74
- + SubmittingPatches: move discussion of Signed-off-by above "send"
54
+* cb/builtin-merge-format-string-fix (2021-08-09) 1 commit
55
+ - builtin/merge: avoid -Wformat-extra-args from ancient Xcode
56
76
- Reorganize and update the SubmitingPatches document.
57
+ Code clean-up.
58
59
+ Will merge to 'next'.
60
79
-* ah/plugleaks (2021-07-26) 12 commits
80
- (merged to 'next' on 2021-07-28 at fa15f6d1f4)
81
- + reset: clear_unpack_trees_porcelain to plug leak
82
- + builtin/rebase: fix options.strategy memory lifecycle
83
- + builtin/merge: free found_ref when done
84
- + builtin/mv: free or UNLEAK multiple pointers at end of cmd_mv
85
- + convert: release strbuf to avoid leak
86
- + read-cache: call diff_setup_done to avoid leak
87
- + ref-filter: also free head for ATOM_HEAD to avoid leak
88
- + diffcore-rename: move old_dir/new_dir definition to plug leak
89
- + builtin/for-each-repo: remove unnecessary argv copy to plug leak
90
- + builtin/submodule--helper: release unused strbuf to avoid leak
91
- + environment: move strbuf into block to plug leak
92
- + fmt-merge-msg: free newly allocated temporary strings when done
61
94
- Leak plugging.
62
+* cb/many-alternate-optim-fixup (2021-08-09) 2 commits
63
+ (merged to 'next' on 2021-08-09 at 3572bef349)
64
+ + object-store: avoid extra ';' from KHASH_INIT
65
+ + oidtree: avoid nested struct oidtree_node
66
+ (this branch is used by cb/ci-build-pedantic.)
67
68
+ Build fix.
69
97
-* ar/doc-markup-fix (2021-07-30) 1 commit
98
- (merged to 'next' on 2021-08-02 at b99073fa75)
99
- + Documentation: render special characters correctly
70
+ Will merge to 'master'.
71
101
- Doc mark-up fix.
72
73
+* ka/want-ref-in-namespace (2021-08-09) 3 commits
74
+ - docs: clarify the interaction of transfer.hideRefs and namespaces
75
+ - upload-pack.c: treat want-ref relative to namespace
76
+ - t5730: introduce fetch command helper
77
104
-* ar/submodule-add (2021-07-26) 5 commits
105
- (merged to 'next' on 2021-07-28 at 7d315a0f67)
106
- + submodule: drop unused sm_name parameter from show_fetch_remotes()
107
- (merged to 'next' on 2021-07-22 at b8b636c9a1)
108
- + submodule--helper: introduce add-clone subcommand
109
- + submodule--helper: refactor module_clone()
110
- + submodule: prefix die messages with 'fatal'
111
- + t7400: test failure to add submodule in tracked path
112
- (this branch is used by ar/submodule-add-config.)
78
+ "git upload-pack" which runs on the other side of "git fetch"
79
+ forgot to take the ref namespaces into account when handling
80
+ want-ref requests.
81
114
- Rewrite of "git submodule" in C continues.
82
83
+* np/blame-ignore-revs-file-may-be-optional (2021-08-09) 1 commit
84
+ - blame: add config `blame.ignoreRevsFileIsOptional`
85
117
-* cb/t7508-regexp-fix (2021-08-02) 1 commit
118
- (merged to 'next' on 2021-08-04 at 87e2b70ba1)
119
- + t7508: avoid non POSIX BRE
86
+ When the file named by blame.ignoreRevsFile configuration variable
87
+ does not exist, it causes "git blame" to die. Sometimes, it is
88
+ useful if the files named by configuration variables can be made
89
+ optional (it would allow ~/.gitconfig to give a filename, and make
90
+ it effective only in repositories that have a file with that name).
91
121
- Test fix.
92
+ This uses an extra variable that marks that the variable is
93
+ optional. Yet another alternative is being discussed to define
94
+ syntax for "optional" filename values, so that the same mechanism
95
+ can be used for not just blame.ignoreRevsFile but other filenames.
96
97
+ Queued just as a reminder of the theme.
98
124
-* ds/commit-and-checkout-with-sparse-index (2021-07-20) 7 commits
125
- (merged to 'next' on 2021-07-30 at 52ed1b0091)
126
- + unpack-trees: resolve sparse-directory/file conflicts
127
- + t1092: document bad 'git checkout' behavior
128
- + checkout: stop expanding sparse indexes
129
- + sparse-index: recompute cache-tree
130
- + commit: integrate with sparse-index
131
- + p2000: compress repo names
132
- + p2000: add 'git checkout -' test and decrease depth
133
- (this branch is used by ds/add-with-sparse-index.)
99
135
- "git checkout" and "git commit" learn to work without unnecessarily
136
- expanding sparse indexes.
100
+* cb/ci-build-pedantic (2021-08-09) 1 commit
101
+ - ci: run a pedantic build as part of the GitHub workflow
102
+ (this branch uses cb/many-alternate-optim-fixup.)
103
104
+ CI update.
105
139
-* en/ort-perf-batch-14 (2021-07-20) 7 commits
140
- (merged to 'next' on 2021-07-30 at 89cfdc4513)
141
- + merge-ort: restart merge with cached renames to reduce process entry cost
142
- + merge-ort: avoid recursing into directories when we don't need to
143
- + merge-ort: defer recursing into directories when merge base is matched
144
- + merge-ort: add a handle_deferred_entries() helper function
145
- + merge-ort: add data structures for allowable trivial directory resolves
146
- + merge-ort: add some more explanations in collect_merge_info_callback()
147
- + merge-ort: resolve paths early when we have sufficient information
148
- (this branch is used by en/ort-perf-batch-15.)
106
+ Will merge to 'next'.
107
150
- Further optimization on "merge -sort" backend.
108
109
+* jn/log-m-does-not-imply-p (2021-08-09) 1 commit
110
+ (merged to 'next' on 2021-08-09 at d937d09924)
111
+ + Revert 'diff-merges: let "-m" imply "-p"'
112
153
-* pb/merge-autostash-more (2021-07-23) 4 commits
154
- (merged to 'next' on 2021-07-30 at bfc8b41932)
155
- + merge: apply autostash if merge strategy fails
156
- + merge: apply autostash if fast-forward fails
157
- + Documentation: define 'MERGE_AUTOSTASH'
158
- + merge: add missing word "strategy" to a message
113
+ Earlier "git log -m" was changed to always produce patch output,
114
+ which would break existing scripts, which has been reverted.
115
160
- The local changes stashed by "git merge --autostash" were lost when
161
- the merge failed in certain ways, which has been corrected.
116
+ Will merge to 'master'.
117
118
164
-* rs/use-fspathhash (2021-07-30) 1 commit
165
- (merged to 'next' on 2021-08-02 at 72c388e867)
166
- + use fspathhash() everywhere
119
+* ds/sparse-index-ignored-files (2021-08-10) 9 commits
120
+ - sparse-checkout: clear tracked sparse dirs
121
+ - sparse-index: add SPARSE_INDEX_IGNORE_CONFIG flag
122
+ - attr: be careful about sparse directories
123
+ - sparse-checkout: create helper methods
124
+ - unpack-trees: fix nested sparse-dir search
125
+ - sparse-index: silently return when cache tree fails
126
+ - sparse-index: silently return when not using cone-mode patterns
127
+ - t7519: rewrite sparse index test
128
+ - Merge branch 'ds/add-with-sparse-index' into ds/sparse-index-ignored-files
129
+ (this branch uses ds/add-with-sparse-index.)
130
168
- Code simplification.
131
+ In cone mode, the sparse-index codepath learned to remove ignored
132
+ files (like build artifacts) outside the sparse cone, allowing the
133
+ entire directory outside the sparse cone to be removed, which is
134
+ especially useful when the sparse patterns change.
135
136
171
-* tb/mingw-rmdir-symlink-to-directory (2021-08-02) 1 commit
172
- (merged to 'next' on 2021-08-03 at a027d43cca)
173
- + mingw: align symlinks-related rmdir() behavior with Linux
137
+* jc/userdiff-pattern-hint (2021-08-10) 1 commit
138
+ - userdiff: comment on the builtin patterns
139
175
- Windows rmdir() equivalent behaves differently from POSIX ones in
176
- that when used on a symbolic link that points at a directory, the
177
- target directory gets removed, which has been corrected.
140
+ Remind developers that the userdiff patterns should be kept simple
141
+ and permissive, assuming that the contents they apply are always
142
+ syntactically correct.
143
179
---------------------------------------------------
180
-[New Topics]
144
182
-* ps/fetch-pack-load-refs-optim (2021-08-04) 1 commit
183
- - fetch-pack: speed up loading of refs via commit graph
145
+* jk/apply-binary-hunk-parsing-fix (2021-08-10) 1 commit
146
+ - apply: keep buffer/size pair in sync when parsing binary hunks
147
185
- Loading of ref tips to prepare for common ancestry negotiation in
186
- "git fetch-pack" has been optimized by taking advantage of the
187
- commit graph when available.
148
+ "git apply" miscounted the bytes and failed to read to the end of
149
+ binary hunks.
150
151
Will merge to 'next'.
152
153
192
-* ps/connectivity-optim (2021-08-05) 6 commits
193
- - revision: avoid hitting packfiles when commits are in commit-graph
194
- - commit-graph: split out function to search commit position
195
- - revision: avoid loading object headers multiple times
196
- - revision: stop retrieving reference twice
197
- - connected: do not sort input revisions
198
- - revision: separate walk and unsorted flags
199
-
200
- The revision traversal API has been optimized by taking advanrage
201
- of the commit-graph, when available, to determine if a commit is
202
- reachable from any of the existing refs.
203
-
204
- Looking good.
205
-
206
-
207
-* ar/submodule-add-more (2021-08-06) 9 commits
208
- - submodule--helper: remove resolve-relative-url subcommand
209
- - submodule--helper: remove add-config subcommand
210
- - submodule--helper: remove add-clone subcommand
211
- - submodule--helper: convert the bulk of cmd_add() to C
212
- - dir: libify and export helper functions from clone.c
213
- - submodule--helper: remove repeated code in sync_submodule()
214
- - submodule--helper: refactor resolve_relative_url() helper
215
- - submodule--helper: add options for compute_submodule_clone_url()
216
- - Merge branch 'ar/submodule-add-config' into ar/submodule-add
217
- (this branch uses ar/submodule-add-config.)
154
+* jk/range-diff-fixes (2021-08-10) 3 commits
155
+ - range-diff: use ssize_t for parsed "len" in read_patches()
156
+ - range-diff: handle unterminated lines in read_patches()
157
+ - range-diff: drop useless "offset" variable from read_patches()
158
219
- More parts of "git submoudle add" has been rewritten in C.
159
+ "git range-diff" code clean-up.
160
161
+ Will merge to 'next'.
162
222
-* cb/makefile-apple-clang (2021-08-06) 3 commits
223
- - build: catch clang that identifies itself as "$VENDOR clang"
224
- - build: clang version may not be followed by extra words
225
- - build: update detect-compiler for newer Xcode version
163
227
- Build update.
164
+* js/advise-when-skipping-cherry-picked (2021-08-10) 2 commits
165
+ - SQUASH???
166
+ - sequencer: advise if skipping cherry-picked commit
167
168
+ "git rebase" by default skips changes that are equivalent to
169
+ commits that are already in the history the branch is rebased onto;
170
+ give messages when this happens to let the users be aware of
171
+ skipped commits, and also teach them how to tell "rebase" to keep
172
+ duplicated changes.
173
230
-* jk/refs-files-cleanup-cleanup (2021-08-06) 1 commit
231
- - refs: drop unused "flags" parameter to lock_ref_oid_basic()
232
- (this branch uses ab/refs-files-cleanup.)
174
234
- Code cleanup.
175
+* jt/grep-wo-submodule-odb-as-alternate (2021-08-10) 7 commits
176
+ - t7814: show lack of alternate ODB-adding
177
+ - grep: add repository to OID grep sources
178
+ - grep: allocate subrepos on heap
179
+ - grep: read submodule entry with explicit repo
180
+ - grep: typesafe versions of grep_source_init
181
+ - grep: use submodule-ODB-as-alternate lazy-addition
182
+ - submodule: lazily add submodule ODBs as alternates
183
236
- Will merge to 'next'.
184
+ The code to make "git grep" recurse into submodules has been
185
+ updated to migrate away from the "add submodule's object store as
186
+ an alternate object store" mechanism (which is suboptimal).
187
188
--------------------------------------------------
189
[Stalled]
@@ -316,6 +266,65 @@ Release tarballs are available at:
266
--------------------------------------------------
267
[Cooking]
268
269
+* ps/fetch-pack-load-refs-optim (2021-08-04) 1 commit
270
+ (merged to 'next' on 2021-08-09 at 4744a01fd5)
271
+ + fetch-pack: speed up loading of refs via commit graph
272
+
273
+ Loading of ref tips to prepare for common ancestry negotiation in
274
+ "git fetch-pack" has been optimized by taking advantage of the
275
+ commit graph when available.
276
+
277
+ Will cook in 'next'.
278
+
279
+
280
+* ps/connectivity-optim (2021-08-09) 5 commits
281
+ - revision: avoid hitting packfiles when commits are in commit-graph
282
+ - commit-graph: split out function to search commit position
283
+ - revision: stop retrieving reference twice
284
+ - connected: do not sort input revisions
285
+ - revision: separate walk and unsorted flags
286
+
287
+ The revision traversal API has been optimized by taking advanrage
288
+ of the commit-graph, when available, to determine if a commit is
289
+ reachable from any of the existing refs.
290
+
291
+ Will merge to 'next'.
292
+
293
+
294
+* ar/submodule-add-more (2021-08-10) 10 commits
295
+ - submodule--helper: rename compute_submodule_clone_url()
296
+ - submodule--helper: remove resolve-relative-url subcommand
297
+ - submodule--helper: remove add-config subcommand
298
+ - submodule--helper: remove add-clone subcommand
299
+ - submodule--helper: convert the bulk of cmd_add() to C
300
+ - dir: libify and export helper functions from clone.c
301
+ - submodule--helper: remove repeated code in sync_submodule()
302
+ - submodule--helper: refactor resolve_relative_url() helper
303
+ - submodule--helper: add options for compute_submodule_clone_url()
304
+ - Merge branch 'ar/submodule-add-config' into ar/submodule-add
305
+ (this branch uses ar/submodule-add-config.)
306
+
307
+ More parts of "git submoudle add" has been rewritten in C.
308
+
309
+
310
+* cb/makefile-apple-clang (2021-08-06) 3 commits
311
+ - build: catch clang that identifies itself as "$VENDOR clang"
312
+ - build: clang version may not be followed by extra words
313
+ - build: update detect-compiler for newer Xcode version
314
+
315
+ Build update.
316
+
317
+
318
+* jk/refs-files-cleanup-cleanup (2021-08-06) 1 commit
319
+ (merged to 'next' on 2021-08-09 at 37b0b8c910)
320
+ + refs: drop unused "flags" parameter to lock_ref_oid_basic()
321
+ (this branch uses ab/refs-files-cleanup.)
322
+
323
+ Code cleanup.
324
+
325
+ Will cook in 'next'.
326
+
327
+
328
* cb/reftable-fixup (2021-08-02) 3 commits
329
- openbsd: allow reftable building with zlib 1.2.3
330
- reftable: clarify zlib version dependency
@@ -342,7 +351,7 @@ Release tarballs are available at:
351
352
Documentation updates.
353
345
- Expecting a (hopefully final) reroll.
354
+ Will merge to 'next'.
355
356
357
* en/ort-becomes-the-default (2021-08-05) 2 commits
@@ -352,15 +361,15 @@ Release tarballs are available at:
361
362
Use `ort` instead of `recursive` as the default merge strategy.
363
355
- Waiting for the base topic to settle.
364
+ Will merge to 'next'.
365
366
358
-* js/log-protocol-version (2021-08-03) 1 commit
367
+* js/log-protocol-version (2021-08-10) 1 commit
368
- connect, protocol: log negotiated protocol version
369
370
Debugging aid.
371
363
- Expecting a reroll.
372
+ Will merge to 'next'.
373
374
375
* ow/clone-bare-origin (2021-08-03) 1 commit
@@ -434,6 +443,7 @@ Release tarballs are available at:
443
+ pathspec: stop calling ensure_full_index
444
+ add: allow operating on a sparse-only index
445
+ t1092: test merge conflicts outside cone
446
+ (this branch is used by ds/sparse-index-ignored-files.)
447
448
"git add" can work better with the sparse index.
449
@@ -462,7 +472,7 @@ Release tarballs are available at:
472
cover between 0-100%, which has been corrected.
473
474
465
-* ar/submodule-add-config (2021-08-05) 1 commit
475
+* ar/submodule-add-config (2021-08-10) 1 commit
476
- submodule--helper: introduce add-config subcommand
477
(this branch is used by ar/submodule-add-more.)
478
@@ -631,7 +641,7 @@ Release tarballs are available at:
641
but went ahead and rebased when the history on other side is not a
642
descendant of our history. The series tries to fix them up.
643
634
- Comments?
644
+ Will merge to 'next'.
645
646
647
* bc/inactive-submodules (2021-07-02) 1 commit
@@ -678,14 +688,15 @@ Release tarballs are available at:
688
689
690
* jt/push-negotiation-fixes (2021-07-15) 3 commits
681
- - fetch: die on invalid --negotiation-tip hash
682
- - send-pack: fix push nego. when remote has refs
683
- - send-pack: fix push.negotiate with remote helper
691
+ (merged to 'next' on 2021-08-09 at ea7da8239c)
692
+ + fetch: die on invalid --negotiation-tip hash
693
+ + send-pack: fix push nego. when remote has refs
694
+ + send-pack: fix push.negotiate with remote helper
695
696
Bugfix for common ancestor negotiation recently introduced in "git
697
push" codepath.
698
688
- Needs review.
699
+ Will cook in 'next'.
700
701
702
* ab/make-tags-cleanup (2021-08-05) 5 commits
@@ -973,5 +984,3 @@ Release tarballs are available at:
984
985
Seems too involved for a last-minute fix.
986
cf. <20210804212825.GH23408@szeder.dev>
976
-
977
-