What's cooking (2020/07 #01)
Junio C Hamano committed
Jul 6, 2020 at 22:48 UTC
06ad1f9e0537c94751ab4955dc316f4749ecad80
1 file changed
+335
-330
whats-cooking.txt
+335
-330
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Jun 2020, #06; Mon, 29)
4
-X-master-at: a08a83db2bf27f015bec9a435f6d73e223c21c5e
5
-X-next-at: 050319c2ae82f2fac00eac9d80a1d91394d99aec
3
+Subject: What's cooking in git.git (Jul 2020, #01; Mon, 6)
4
+X-master-at: 4a0fcf9f760c9774be77f51e1e88a7499b53d2e2
5
+X-next-at: b3809f4674cea6e2f5db8a478a39b85851690c7d
6
7
-What's cooking in git.git (Jun 2020, #06; Mon, 29)
7
+What's cooking in git.git (Jul 2020, #01; Mon, 6)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with '-' are
@@ -12,11 +12,10 @@ only in 'seen' (formerly 'pu'---proposed updates) while commits prefixed
12
with '+' are in 'next'. The ones marked with '.' do not appear in any of
13
the integration branches, but I am still holding onto them.
14
15
-More topics graduate to the 'master' and to the 'next' branches. I
16
-expect that this week would be slower than usual due to US holidays
17
-but hopefully we'd be able to merge most of the impactful topics by
18
-the -rc0. Some large-ish topics may have to be left for the next
19
-cycle, as usual.
15
+We are about to tag the -rc0 "preview" and enter pre-release freeze
16
+period. The change to let users name the initial branch that gets
17
+prepared in a newly created repository has now been merged to be
18
+included in the upcoming release.
19
20
You can find the changes described here in the integration branches of the
21
repositories listed at
@@ -24,139 +23,139 @@ repositories listed at
23
http://git-blame.blogspot.com/p/git-public-repositories.html
24
25
--------------------------------------------------
27
-[Graduated to "master"]
26
+[Graduated to 'master']
27
29
-* dl/diff-usage-comment-update (2020-06-23) 2 commits
30
- (merged to 'next' on 2020-06-23 at 48d685cd45)
31
- + builtin/diff: fix botched update of usage comment
32
- (merged to 'next' on 2020-06-19 at b53a12bb66)
33
- + builtin/diff: update usage comment
34
-
35
- An in-code comment in "git diff" has been updated.
36
-
37
-
38
-* rs/commit-reach-leakfix (2020-06-19) 1 commit
39
- (merged to 'next' on 2020-06-22 at fcc1e385f0)
40
- + commit-reach: plug minor memory leak after using is_descendant_of()
41
-
42
- Leakfix.
43
-
44
-
45
-* rs/pull-leakfix (2020-06-19) 1 commit
46
- (merged to 'next' on 2020-06-22 at d80a6b9ca3)
47
- + pull: plug minor memory leak after using is_descendant_of()
48
-
49
- Leakfix.
50
-
51
-
52
-* rs/retire-strbuf-write-fd (2020-06-19) 2 commits
53
- (merged to 'next' on 2020-06-22 at c175b54f2a)
54
- + strbuf: remove unreferenced strbuf_write_fd method.
55
- + bugreport.c: replace strbuf_write_fd with write_in_full
56
-
57
- A misdesigned strbuf_write_fd() function has been retired.
58
-
59
-
60
-* sk/diff-files-show-i-t-a-as-new (2020-06-22) 1 commit
61
- (merged to 'next' on 2020-06-22 at 825a823416)
62
- + diff-files: treat "i-t-a" files as "not-in-index"
63
- (this branch is used by js/diff-files-i-t-a-fix-for-difftool.)
64
-
65
- "git diff-files" has been taught to say paths that are marked as
66
- intent-to-add are new files, not modified from an empty blob.
67
-
68
-
69
-* xl/upgrade-repo-format (2020-06-05) 4 commits
70
- (merged to 'next' on 2020-06-19 at 02bf7a9d8c)
71
- + check_repository_format_gently(): refuse extensions for old repositories
72
- + sparse-checkout: upgrade repository to version 1 when enabling extension
73
- + fetch: allow adding a filter after initial clone
74
- + repository: add a helper function to perform repository format upgrade
28
+* ak/commit-graph-to-slab (2020-06-17) 4 commits
29
+ (merged to 'next' on 2020-06-25 at 9a10ae18d3)
30
+ + commit-graph: minimize commit_graph_data_slab access
31
+ + commit: move members graph_pos, generation to a slab
32
+ + commit-graph: introduce commit_graph_data_slab
33
+ + object: drop parsed_object_pool->commit_count
34
76
- Allow runtime upgrade of the repository format version, which needs
77
- to be done carefully.
35
+ A few fields in "struct commit" that do not have to always be
36
+ present have been moved to commit slabs.
37
79
- There is a rather unpleasant backward compatibility worry with the
80
- last step of this series, but it is the right thing to do in the
81
- longer term.
38
83
---------------------------------------------------
84
-[New Topics]
39
+* bc/http-push-flagsfix (2020-06-23) 1 commit
40
+ (merged to 'next' on 2020-06-25 at 1dabb1f61b)
41
+ + http-push: ensure unforced pushes fail when data would be lost
42
86
-* mt/hash-to-hex-thread-safety (2020-06-26) 2 commits
87
- - hex: make hash_to_hex_algop() and friends thread-safe
88
- - compat/win32/pthread: add pthread_once()
43
+ The code to push changes over "dumb" HTTP had a bad interaction
44
+ with the commit reachability code due to incorrect allocation of
45
+ object flag bits, which has been corrected.
46
90
- hash_to_hex() used a set of rotating static buffers, which was not
91
- safe to use in a threaded environment. This has been made safer by
92
- using thread-local storage.
47
94
- Will merge to 'next'.
48
+* bc/sha-256-cvs-svn-updates (2020-06-22) 14 commits
49
+ (merged to 'next' on 2020-06-25 at e0d1c87fcf)
50
+ + git-cvsexportcommit: port to SHA-256
51
+ + git-cvsimport: port to SHA-256
52
+ + git-cvsserver: port to SHA-256
53
+ + git-svn: set the OID length based on hash algorithm
54
+ + perl: make SVN code hash independent
55
+ + perl: make Git::IndexInfo work with SHA-256
56
+ + perl: create and switch variables for hash constants
57
+ + t/lib-git-svn: make hash size independent
58
+ + t9101: make hash independent
59
+ + t9104: make hash size independent
60
+ + t9100: make test work with SHA-256
61
+ + t9108: make test hash independent
62
+ + t9168: make test hash independent
63
+ + t9109: make test hash independent
64
+ (this branch uses bc/sha-256-part-2.)
65
96
---------------------------------------------------
97
-[Stalled]
66
+ CVS/SVN interface have been prepared for SHA-256 transition
67
99
-* dr/push-remoteref-fix (2020-04-23) 1 commit
100
- - remote.c: fix handling of %(push:remoteref)
68
102
- The "%(push:remoteref)" placeholder in the "--format=" argument of
103
- "git format-patch" (and friends) only showed what got explicitly
104
- configured, not what ref at the receiving end would be updated when
105
- "git push" was used, as it ignored the default behaviour (e.g. update
106
- the same ref as the source).
69
+* bc/sha-256-part-2 (2020-06-19) 44 commits
70
+ (merged to 'next' on 2020-06-22 at dc153f366d)
71
+ + remote-testgit: adapt for object-format
72
+ + bundle: detect hash algorithm when reading refs
73
+ + t5300: pass --object-format to git index-pack
74
+ + t5704: send object-format capability with SHA-256
75
+ + t5703: use object-format serve option
76
+ + t5702: offer an object-format capability in the test
77
+ + t/helper: initialize the repository for test-sha1-array
78
+ + remote-curl: avoid truncating refs with ls-remote
79
+ + t1050: pass algorithm to index-pack when outside repo
80
+ + builtin/index-pack: add option to specify hash algorithm
81
+ + remote-curl: detect algorithm for dumb HTTP by size
82
+ + builtin/ls-remote: initialize repository based on fetch
83
+ + t5500: make hash independent
84
+ + serve: advertise object-format capability for protocol v2
85
+ + connect: parse v2 refs with correct hash algorithm
86
+ + connect: pass full packet reader when parsing v2 refs
87
+ + Documentation/technical: document object-format for protocol v2
88
+ + t1302: expect repo format version 1 for SHA-256
89
+ + builtin/show-index: provide options to determine hash algo
90
+ + t5302: modernize test formatting
91
+ + packfile: compute and use the index CRC offset
92
+ + t3200: mark assertion with SHA1 prerequisite
93
+ + setup: set the_repository's hash algo when checking format
94
+ + fetch-pack: parse and advertise the object-format capability
95
+ + t5562: pass object-format in synthesized test data
96
+ + builtin/clone: initialize hash algorithm properly
97
+ + remote-curl: implement object-format extensions
98
+ + transport-helper: implement object-format extensions
99
+ + docs: update remote helper docs for object-format extensions
100
+ + builtin/receive-pack: detect when the server doesn't support our hash
101
+ + connect: detect algorithm when fetching refs
102
+ + fetch-pack: detect when the server doesn't support our hash
103
+ + connect: make parse_feature_value extern
104
+ + send-pack: detect when the server doesn't support our hash
105
+ + connect: add function to detect supported v1 hash functions
106
+ + transport: add a hash algorithm member
107
+ + pkt-line: add a member for hash algorithm
108
+ + connect: add function to fetch value of a v2 server capability
109
+ + connect: add function to parse multiple v1 capability values
110
+ + remote: advertise the object-format capability on the server side
111
+ + wrapper: add function to compare strings with different NUL termination
112
+ + connect: have ref processing code take struct packet_reader
113
+ + Documentation: document v1 protocol object-format capability
114
+ + t1050: match object ID paths in a hash-insensitive way
115
+ (this branch is used by bc/sha-256-cvs-svn-updates.)
116
108
- Expecting a reroll.
109
- cf. <20200416152145.wp2zeibxmuyas6y6@feanor>
117
+ SHA-256 migration work continues.
118
119
112
-* mr/bisect-in-c-2 (2020-04-23) 12 commits
113
- - bisect--helper: retire `--bisect-autostart` subcommand
114
- - bisect--helper: retire `--write-terms` subcommand
115
- - bisect--helper: retire `--check-expected-revs` subcommand
116
- - bisect--helper: reimplement `bisect_state` & `bisect_head` shell functions in C
117
- - bisect--helper: retire `--next-all` subcommand
118
- - bisect--helper: retire `--bisect-clean-state` subcommand
119
- - bisect--helper: finish porting `bisect_start()` to C
120
- - bisect--helper: reimplement `bisect_next` and `bisect_auto_next` shell functions in C
121
- - bisect--helper: reimplement `bisect_autostart` shell function in C
122
- - bisect--helper: introduce new `write_in_file()` function
123
- - bisect--helper: use '-res' in 'cmd_bisect__helper' return
124
- - bisect--helper: fix `cmd_*()` function switch default return
120
+* cb/is-descendant-of (2020-06-23) 1 commit
121
+ (merged to 'next' on 2020-06-25 at ca0eaddf5e)
122
+ + commit-reach: avoid is_descendant_of() shim
123
126
- Rewrite of the remainder of "git bisect" script in C continues.
124
+ Code clean-up.
125
128
- Expecting a response to reviews.
129
- cf. <nycvar.QRO.7.76.6.2005230007260.56@tvgsbejvaqbjf.bet>
126
127
+* dl/test-must-fail-fixes-5 (2020-06-24) 4 commits
128
+ (merged to 'next' on 2020-06-29 at efe53a7588)
129
+ + lib-submodule-update: pass 'test_must_fail' as an argument
130
+ + lib-submodule-update: prepend "git" to $command
131
+ + lib-submodule-update: consolidate --recurse-submodules
132
+ + lib-submodule-update: add space after function name
133
132
-* mk/use-size-t-in-zlib (2018-10-15) 1 commit
133
- - zlib.c: use size_t for size
134
+ The effort to avoid using test_must_fail on non-git command continues.
135
135
- The wrapper to call into zlib followed our long tradition to use
136
- "unsigned long" for sizes of regions in memory, which have been
137
- updated to use "size_t".
136
139
---------------------------------------------------
140
-[Cooking]
137
+* en/sparse-status (2020-06-22) 3 commits
138
+ (merged to 'next' on 2020-06-25 at 404403a075)
139
+ + git-prompt: include sparsity state as well
140
+ + git-prompt: document how in-progress operations affect the prompt
141
+ + wt-status: show sparse checkout status as well
142
142
-* bc/http-push-flagsfix (2020-06-23) 1 commit
143
- (merged to 'next' on 2020-06-25 at 1dabb1f61b)
144
- + http-push: ensure unforced pushes fail when data would be lost
143
+ "git status" learned to report the status of sparse checkout.
144
146
- The code to push changes over "dumb" HTTP had a bad interaction
147
- with the commit reachability code due to incorrect allocation of
148
- object flag bits, which has been corrected.
145
150
- Will merge to 'master'.
146
+* es/get-worktrees-unsort (2020-06-22) 2 commits
147
+ (merged to 'next' on 2020-06-25 at 732d93a36d)
148
+ + worktree: drop get_worktrees() unused 'flags' argument
149
+ + worktree: drop get_worktrees() special-purpose sorting option
150
151
+ API cleanup for get_worktrees()
152
153
-* cb/is-descendant-of (2020-06-23) 1 commit
154
- (merged to 'next' on 2020-06-25 at ca0eaddf5e)
155
- + commit-reach: avoid is_descendant_of() shim
153
157
- Code clean-up.
154
+* es/worktree-code-cleanup (2020-06-24) 1 commit
155
+ (merged to 'next' on 2020-06-29 at 91ffd85a31)
156
+ + worktree: avoid dead-code in conditional
157
159
- Will merge to 'master'.
158
+ Code cleanup.
159
160
161
* jk/fast-export-anonym-alt (2020-06-25) 11 commits
@@ -176,19 +175,43 @@ repositories listed at
175
"git fast-export --anonymize" learned to take customized mapping to
176
allow its users to tweak its output more usable for debugging.
177
179
- Will merge to 'master'.
178
+
179
+* jl/complete-git-prune (2020-06-22) 1 commit
180
+ (merged to 'next' on 2020-06-25 at 64f30b8b41)
181
+ + bash-completion: add git-prune into bash completion
182
+
183
+ Add "git prune" to the completion (in contrib/), which could be
184
+ typed by end-users from the command line.
185
+
186
+
187
+* js/default-branch-name (2020-06-30) 10 commits
188
+ (merged to 'next' on 2020-07-01 at c38d766581)
189
+ + contrib: subtree: adjust test to change in fmt-merge-msg
190
+ (merged to 'next' on 2020-06-25 at 8f962f9219)
191
+ + testsvn: respect `init.defaultBranch`
192
+ + remote: use the configured default branch name when appropriate
193
+ + clone: use configured default branch name when appropriate
194
+ + init: allow setting the default for the initial branch name via the config
195
+ + init: allow specifying the initial branch name for the new repository
196
+ + docs: add missing diamond brackets
197
+ + submodule: fall back to remote's HEAD for missing remote.<name>.branch
198
+ + send-pack/transport-helper: avoid mentioning a particular branch
199
+ + fmt-merge-msg: stop treating `master` specially
200
+
201
+ The name of the primary branch in existing repositories, and the
202
+ default name used for the first branch in newly created
203
+ repositories, is made configurable, so that we can eventually wean
204
+ ourselves off of the hardcoded 'master'.
205
206
182
-* js/diff-files-i-t-a-fix-for-difftool (2020-06-25) 2 commits
183
- (merged to 'next' on 2020-06-29 at a9fcdabb3b)
207
+* js/diff-files-i-t-a-fix-for-difftool (2020-07-01) 2 commits
208
+ (merged to 'next' on 2020-07-01 at cf5d18635c)
209
+ difftool -d: ensure that intent-to-add files are handled correctly
210
+ diff-files --raw: show correct post-image of intent-to-add files
211
212
"git difftool" has trouble dealing with paths added to the index
213
with the intent-to-add bit.
214
190
- Will merge to 'master'.
191
-
215
216
* js/pu-to-seen (2020-06-25) 3 commits
217
(merged to 'next' on 2020-06-25 at 06c9e5a885)
@@ -199,8 +222,6 @@ repositories listed at
222
The documentation and some tests have been adjusted for the recent
223
renaming of "pu" branch to "seen".
224
202
- Will merge to 'master'.
203
-
225
226
* mk/pb-pretty-email-without-domain-part-fix (2020-06-23) 1 commit
227
(merged to 'next' on 2020-06-25 at 81a3aca46b)
@@ -208,18 +229,12 @@ repositories listed at
229
230
Docfix.
231
211
- Will merge to 'master'.
212
-
232
214
-* mf/submodule-summary-with-correct-repository (2020-06-24) 2 commits
215
- - submodule: use submodule repository when preparing summary
216
- - revision: use repository from rev_info when parsing commits
217
-
218
- "git diff/show" on a change that involves a submodule used to read
219
- the information on commits in the submodule from a wrong repository
220
- and gave a wrong information when the commit-graph is involved.
233
+* ps/ref-transaction-hook (2020-06-19) 1 commit
234
+ (merged to 'next' on 2020-06-22 at 3a23dcdbdc)
235
+ + refs: implement reference transaction hook
236
222
- Needs tests.
237
+ A new hook.
238
239
240
* rs/pack-bits-in-object-better (2020-06-24) 1 commit
@@ -229,128 +244,212 @@ repositories listed at
244
By renumbering object flag bits, "struct object" managed to lose
245
bloated inter-field padding.
246
232
- Will merge to 'master'.
247
+--------------------------------------------------
248
+[New Topics]
249
250
+* bw/fail-cloning-into-non-empty (2020-07-06) 1 commit
251
+ - git clone: don't clone into non-empty directory
252
235
-* es/worktree-code-cleanup (2020-06-24) 1 commit
236
- (merged to 'next' on 2020-06-29 at 91ffd85a31)
237
- + worktree: avoid dead-code in conditional
253
+ "git clone --separate-git-dir=$elsewhere" used to stomp on the
254
+ contents of the existing directory $elsewhere, which has been
255
+ taught to fail when $elsewhere is not an empty directory.
256
239
- Code cleanup.
257
+ Expecting a reroll.
258
+ with improved commit log message.
259
+ cf. <xmqqv9j08dxo.fsf@gitster.c.googlers.com>
260
+
261
+
262
+* cc/cat-file-usage-update (2020-07-01) 1 commit
263
+ (merged to 'next' on 2020-07-06 at 270769a009)
264
+ + cat-file: add missing [=<format>] to usage/synopsis
265
+
266
+ Doc/usage update.
267
268
Will merge to 'master'.
269
270
244
-* ra/send-email-in-reply-to-from-command-line-wins (2020-06-29) 1 commit
245
- - send-email: restore --in-reply-to superseding behavior
271
+* cc/pretty-contents-size (2020-07-06) 2 commits
272
+ - ref-filter: add support for %(contents:size)
273
+ - Documentation: clarify %(contents:XXXX) doc
274
247
- "git send-email --in-reply-to=<msg>" did not use the In-Reply-To:
248
- header with the value given from the command line, and let it be
249
- overridden by the value on In-Reply-To: header in the messages
250
- being sent out (if exists).
275
+ "git for-each-ref --format=<>" learned %(contents:size).
276
252
- Expecting a reroll/redesign.
253
- Does not behave sensibly for a multi-patch series.
277
+ Expecting a reroll.
278
+ with clarified semantics and tests with various object types
279
+ cf. <xmqq5zb09v4e.fsf@gitster.c.googlers.com>
280
281
256
-* en/sparse-status (2020-06-22) 3 commits
257
- (merged to 'next' on 2020-06-25 at 404403a075)
258
- + git-prompt: include sparsity state as well
259
- + git-prompt: document how in-progress operations affect the prompt
260
- + wt-status: show sparse checkout status as well
282
+* ls/mergetool-meld-auto-merge (2020-07-06) 1 commit
283
+ - Support auto-merge for meld to follow the vim-diff behavior
284
262
- "git status" learned to report the status of sparse checkout.
285
+ The 'meld' backend of the "git mergetool" learned to give the
286
+ underlying 'meld' the '--auto-merge' option, which would help
287
+ reduce the amount of text that requires manual merging.
288
264
- Will merge to 'master'.
289
+ Expecting a reroll.
290
+ with final fixes and readability improvements.
291
+ cf. <xmqqzh8c8eda.fsf@gitster.c.googlers.com>
292
293
267
-* ps/ref-transaction-hook (2020-06-19) 1 commit
268
- (merged to 'next' on 2020-06-22 at 3a23dcdbdc)
269
- + refs: implement reference transaction hook
294
+* pb/log-rev-list-doc (2020-07-06) 4 commits
295
+ - rev-list-description.txt: fix Asciidoc syntax
296
+ - git-log.txt: include rev-list-description.txt
297
+ - git-rev-list.txt: move description to separate file
298
+ - git-log.txt: add links to 'rev-list' and 'diff' docs
299
271
- A new hook.
300
+ "git help log" has been enhanced by sharing more material from the
301
+ documentation for the underlying "git rev-list" command.
302
273
- Will merge to 'master'.
303
+ Expecting a reroll.
304
+ with reordering the last one to make it preparatory clean-up.
305
+ cf. <xmqqimf087pq.fsf@gitster.c.googlers.com>
306
+ cf. <xmqqeepo87hz.fsf@gitster.c.googlers.com>
307
308
276
-* bc/sha-256-cvs-svn-updates (2020-06-22) 14 commits
277
- (merged to 'next' on 2020-06-25 at e0d1c87fcf)
278
- + git-cvsexportcommit: port to SHA-256
279
- + git-cvsimport: port to SHA-256
280
- + git-cvsserver: port to SHA-256
281
- + git-svn: set the OID length based on hash algorithm
282
- + perl: make SVN code hash independent
283
- + perl: make Git::IndexInfo work with SHA-256
284
- + perl: create and switch variables for hash constants
285
- + t/lib-git-svn: make hash size independent
286
- + t9101: make hash independent
287
- + t9104: make hash size independent
288
- + t9100: make test work with SHA-256
289
- + t9108: make test hash independent
290
- + t9168: make test hash independent
291
- + t9109: make test hash independent
292
- (this branch uses bc/sha-256-part-2; is tangled with hn/reftable.)
309
+* rs/line-log-until (2020-07-06) 1 commit
310
+ (merged to 'next' on 2020-07-06 at 84d6bc67fa)
311
+ + revision: disable min_age optimization with line-log
312
294
- CVS/SVN interface have been prepared for SHA-256 transition
313
+ "git log -Lx,y:path --before=date" lost track of where the range
314
+ should be because it didn't take the changes made by the youngest
315
+ commits that are omitted from the output into account.
316
317
Will merge to 'master'.
318
319
299
-* ds/commit-graph-bloom-updates (2020-06-26) 10 commits
300
- - commit-graph: check all leading directories in changed path Bloom filters
301
- - revision: empty pathspecs should not use Bloom filters
302
- - revision.c: fix whitespace
303
- - commit-graph: check chunk sizes after writing
304
- - commit-graph: simplify chunk writes into loop
305
- - commit-graph: unify the signatures of all write_graph_chunk_*() functions
306
- - commit-graph: persist existence of changed-paths
307
- - bloom: fix logic in get_bloom_filter()
308
- - commit-graph: change test to die on parse, not load
309
- - commit-graph: place bloom_settings in context
310
- (this branch uses sg/commit-graph-cleanups.)
320
+* ta/wait-on-aliased-commands-upon-signal (2020-07-06) 2 commits
321
+ - Wait for child on signal death for aliases to externals
322
+ - Wait for child on signal death for aliases to builtins
323
312
- Updates to the changed-paths bloom filter.
324
+ When an aliased command, whose output is piped to a pager by git,
325
+ gets killed by a signal, the pager got into a funny state, which
326
+ has been corrected (again).
327
+
328
+ Expecting a reroll.
329
+ with improved log messages.
330
+ cf. <20200706211403.GB85133@coredump.intra.peff.net>
331
314
- Will merge to 'next'.
332
333
+* tb/upload-pack-filters (2020-07-06) 4 commits
334
+ - upload-pack.c: introduce 'uploadpack.filter.tree.maxDepth'
335
+ - upload-pack.c: pass 'struct list_objects_filter_options *'
336
+ - upload-pack.c: allow banning certain object filter(s)
337
+ - list_objects_filter_options: introduce 'list_object_filter_config_name'
338
317
-* es/get-worktrees-unsort (2020-06-22) 2 commits
318
- (merged to 'next' on 2020-06-25 at 732d93a36d)
319
- + worktree: drop get_worktrees() unused 'flags' argument
320
- + worktree: drop get_worktrees() special-purpose sorting option
339
+ The component to respond to "git fetch" request is made more
340
+ configurable to selectively allow or reject object filtering
341
+ specification used for partial cloning.
342
+
343
+ Waiting for reviews.
344
+ cf. <cover.1593720075.git.me@ttaylorr.com>
345
322
- API cleanup for get_worktrees()
346
+
347
+* vs/completion-with-set-u (2020-07-01) 1 commit
348
+ (merged to 'next' on 2020-07-06 at 72b1eca511)
349
+ + completion: nounset mode fixes
350
+
351
+ The command line completion support (in contrib/) used to be
352
+ prepared to work with "set -u" but recent changes got a bit more
353
+ sloppy. This has been corrected.
354
355
Will merge to 'master'.
356
357
+--------------------------------------------------
358
+[Stalled]
359
327
-* jl/complete-git-prune (2020-06-22) 1 commit
328
- (merged to 'next' on 2020-06-25 at 64f30b8b41)
329
- + bash-completion: add git-prune into bash completion
360
+* dr/push-remoteref-fix (2020-04-23) 1 commit
361
+ - remote.c: fix handling of %(push:remoteref)
362
331
- Add "git prune" to the completion (in contrib/), which could be
332
- typed by end-users from the command line.
363
+ The "%(push:remoteref)" placeholder in the "--format=" argument of
364
+ "git format-patch" (and friends) only showed what got explicitly
365
+ configured, not what ref at the receiving end would be updated when
366
+ "git push" was used, as it ignored the default behaviour (e.g. update
367
+ the same ref as the source).
368
+
369
+ Expecting a reroll.
370
+ cf. <20200416152145.wp2zeibxmuyas6y6@feanor>
371
+
372
+
373
+* mr/bisect-in-c-2 (2020-04-23) 12 commits
374
+ - bisect--helper: retire `--bisect-autostart` subcommand
375
+ - bisect--helper: retire `--write-terms` subcommand
376
+ - bisect--helper: retire `--check-expected-revs` subcommand
377
+ - bisect--helper: reimplement `bisect_state` & `bisect_head` shell functions in C
378
+ - bisect--helper: retire `--next-all` subcommand
379
+ - bisect--helper: retire `--bisect-clean-state` subcommand
380
+ - bisect--helper: finish porting `bisect_start()` to C
381
+ - bisect--helper: reimplement `bisect_next` and `bisect_auto_next` shell functions in C
382
+ - bisect--helper: reimplement `bisect_autostart` shell function in C
383
+ - bisect--helper: introduce new `write_in_file()` function
384
+ - bisect--helper: use '-res' in 'cmd_bisect__helper' return
385
+ - bisect--helper: fix `cmd_*()` function switch default return
386
+
387
+ Rewrite of the remainder of "git bisect" script in C continues.
388
+
389
+ Expecting a response to reviews.
390
+ cf. <nycvar.QRO.7.76.6.2005230007260.56@tvgsbejvaqbjf.bet>
391
+
392
+
393
+* mk/use-size-t-in-zlib (2018-10-15) 1 commit
394
+ - zlib.c: use size_t for size
395
+
396
+ The wrapper to call into zlib followed our long tradition to use
397
+ "unsigned long" for sizes of regions in memory, which have been
398
+ updated to use "size_t".
399
+
400
+--------------------------------------------------
401
+[Cooking]
402
+
403
+* mt/hash-to-hex-thread-safety (2020-06-26) 2 commits
404
+ - hex: make hash_to_hex_algop() and friends thread-safe
405
+ - compat/win32/pthread: add pthread_once()
406
+
407
+ hash_to_hex() used a set of rotating static buffers, which was not
408
+ safe to use in a threaded environment. This has been made safer by
409
+ using thread-local storage.
410
+
411
+ Expecting a reroll.
412
+ cf. <CAHd-oW6A2aBHg80R9kyifvF7thwzam5EYYoN9d2TaBcHJrcKWw@mail.gmail.com>
413
+
414
+
415
+* mf/submodule-summary-with-correct-repository (2020-06-24) 2 commits
416
+ - submodule: use submodule repository when preparing summary
417
+ - revision: use repository from rev_info when parsing commits
418
+
419
+ "git diff/show" on a change that involves a submodule used to read
420
+ the information on commits in the submodule from a wrong repository
421
+ and gave a wrong information when the commit-graph is involved.
422
+
423
+ Needs tests.
424
+
425
+
426
+* ra/send-email-in-reply-to-from-command-line-wins (2020-07-01) 1 commit
427
+ (merged to 'next' on 2020-07-06 at 3892a1ab88)
428
+ + send-email: restore --in-reply-to superseding behavior
429
+
430
+ "git send-email --in-reply-to=<msg>" did not use the In-Reply-To:
431
+ header with the value given from the command line, and let it be
432
+ overridden by the value on In-Reply-To: header in the messages
433
+ being sent out (if exists).
434
435
Will merge to 'master'.
436
437
337
-* js/default-branch-name (2020-06-24) 9 commits
338
- (merged to 'next' on 2020-06-25 at 8f962f9219)
339
- + testsvn: respect `init.defaultBranch`
340
- + remote: use the configured default branch name when appropriate
341
- + clone: use configured default branch name when appropriate
342
- + init: allow setting the default for the initial branch name via the config
343
- + init: allow specifying the initial branch name for the new repository
344
- + docs: add missing diamond brackets
345
- + submodule: fall back to remote's HEAD for missing remote.<name>.branch
346
- + send-pack/transport-helper: avoid mentioning a particular branch
347
- + fmt-merge-msg: stop treating `master` specially
348
- (this branch is used by hn/reftable.)
438
+* ds/commit-graph-bloom-updates (2020-07-01) 10 commits
439
+ (merged to 'next' on 2020-07-06 at 177e6b362e)
440
+ + commit-graph: check all leading directories in changed path Bloom filters
441
+ + revision: empty pathspecs should not use Bloom filters
442
+ + revision.c: fix whitespace
443
+ + commit-graph: check chunk sizes after writing
444
+ + commit-graph: simplify chunk writes into loop
445
+ + commit-graph: unify the signatures of all write_graph_chunk_*() functions
446
+ + commit-graph: persist existence of changed-paths
447
+ + bloom: fix logic in get_bloom_filter()
448
+ + commit-graph: change test to die on parse, not load
449
+ + commit-graph: place bloom_settings in context
450
+ (this branch uses sg/commit-graph-cleanups.)
451
350
- The name of the primary branch in existing repositories, and the
351
- default name used for the first branch in newly created
352
- repositories, is made configurable, so that we can eventually wean
353
- ourselves off of the hardcoded 'master'.
452
+ Updates to the changed-paths bloom filter.
453
454
Will merge to 'master'.
455
@@ -370,42 +469,17 @@ repositories listed at
469
Waiting for a (hopefully final) review.
470
471
373
-* ak/commit-graph-to-slab (2020-06-17) 4 commits
374
- (merged to 'next' on 2020-06-25 at 9a10ae18d3)
375
- + commit-graph: minimize commit_graph_data_slab access
376
- + commit: move members graph_pos, generation to a slab
377
- + commit-graph: introduce commit_graph_data_slab
378
- + object: drop parsed_object_pool->commit_count
379
-
380
- A few fields in "struct commit" that do not have to always be
381
- present have been moved to commit slabs.
382
-
383
- Will merge to 'master'.
384
-
385
-
386
-* dl/test-must-fail-fixes-5 (2020-06-24) 4 commits
387
- (merged to 'next' on 2020-06-29 at efe53a7588)
388
- + lib-submodule-update: pass 'test_must_fail' as an argument
389
- + lib-submodule-update: prepend "git" to $command
390
- + lib-submodule-update: consolidate --recurse-submodules
391
- + lib-submodule-update: add space after function name
392
-
393
- The effort to avoid using test_must_fail on non-git command continues.
394
-
395
- Will merge to 'master'.
396
-
397
-
472
* sg/commit-graph-cleanups (2020-06-08) 10 commits
399
- - commit-graph: simplify write_commit_graph_file() #2
400
- - commit-graph: simplify write_commit_graph_file() #1
401
- - commit-graph: simplify parse_commit_graph() #2
402
- - commit-graph: simplify parse_commit_graph() #1
403
- - commit-graph: clean up #includes
404
- - diff.h: drop diff_tree_oid() & friends' return value
405
- - commit-slab: add a function to deep free entries on the slab
406
- - commit-graph-format.txt: all multi-byte numbers are in network byte order
407
- - commit-graph: fix parsing the Chunk Lookup table
408
- - tree-walk.c: don't match submodule entries for 'submod/anything'
473
+ + commit-graph: simplify write_commit_graph_file() #2
474
+ + commit-graph: simplify write_commit_graph_file() #1
475
+ + commit-graph: simplify parse_commit_graph() #2
476
+ + commit-graph: simplify parse_commit_graph() #1
477
+ + commit-graph: clean up #includes
478
+ + diff.h: drop diff_tree_oid() & friends' return value
479
+ + commit-slab: add a function to deep free entries on the slab
480
+ + commit-graph-format.txt: all multi-byte numbers are in network byte order
481
+ + commit-graph: fix parsing the Chunk Lookup table
482
+ + tree-walk.c: don't match submodule entries for 'submod/anything'
483
(this branch is used by ds/commit-graph-bloom-updates.)
484
485
The changed-path Bloom filter is improved using ideas from an
@@ -455,59 +529,6 @@ repositories listed at
529
cf. <CABPp-BGdEyEeajYZj_rdxp=MyEQdszuyjVTax=hhYj3fOtRQUQ@mail.gmail.com>
530
531
458
-* bc/sha-256-part-2 (2020-06-19) 44 commits
459
- (merged to 'next' on 2020-06-22 at dc153f366d)
460
- + remote-testgit: adapt for object-format
461
- + bundle: detect hash algorithm when reading refs
462
- + t5300: pass --object-format to git index-pack
463
- + t5704: send object-format capability with SHA-256
464
- + t5703: use object-format serve option
465
- + t5702: offer an object-format capability in the test
466
- + t/helper: initialize the repository for test-sha1-array
467
- + remote-curl: avoid truncating refs with ls-remote
468
- + t1050: pass algorithm to index-pack when outside repo
469
- + builtin/index-pack: add option to specify hash algorithm
470
- + remote-curl: detect algorithm for dumb HTTP by size
471
- + builtin/ls-remote: initialize repository based on fetch
472
- + t5500: make hash independent
473
- + serve: advertise object-format capability for protocol v2
474
- + connect: parse v2 refs with correct hash algorithm
475
- + connect: pass full packet reader when parsing v2 refs
476
- + Documentation/technical: document object-format for protocol v2
477
- + t1302: expect repo format version 1 for SHA-256
478
- + builtin/show-index: provide options to determine hash algo
479
- + t5302: modernize test formatting
480
- + packfile: compute and use the index CRC offset
481
- + t3200: mark assertion with SHA1 prerequisite
482
- + setup: set the_repository's hash algo when checking format
483
- + fetch-pack: parse and advertise the object-format capability
484
- + t5562: pass object-format in synthesized test data
485
- + builtin/clone: initialize hash algorithm properly
486
- + remote-curl: implement object-format extensions
487
- + transport-helper: implement object-format extensions
488
- + docs: update remote helper docs for object-format extensions
489
- + builtin/receive-pack: detect when the server doesn't support our hash
490
- + connect: detect algorithm when fetching refs
491
- + fetch-pack: detect when the server doesn't support our hash
492
- + connect: make parse_feature_value extern
493
- + send-pack: detect when the server doesn't support our hash
494
- + connect: add function to detect supported v1 hash functions
495
- + transport: add a hash algorithm member
496
- + pkt-line: add a member for hash algorithm
497
- + connect: add function to fetch value of a v2 server capability
498
- + connect: add function to parse multiple v1 capability values
499
- + remote: advertise the object-format capability on the server side
500
- + wrapper: add function to compare strings with different NUL termination
501
- + connect: have ref processing code take struct packet_reader
502
- + Documentation: document v1 protocol object-format capability
503
- + t1050: match object ID paths in a hash-insensitive way
504
- (this branch is used by bc/sha-256-cvs-svn-updates and hn/reftable.)
505
-
506
- SHA-256 migration work continues.
507
-
508
- Will merge to 'master'.
509
-
510
-
532
* jx/proc-receive-hook (2020-05-18) 11 commits
533
- doc: add documentation for the proc-receive hook
534
- transport: parse report options for tracking refs
@@ -527,36 +548,20 @@ repositories listed at
548
Needs review.
549
550
530
-* hn/reftable (2020-06-29) 23 commits
531
- - fixup! Reftable support for git-core
532
- - Add "test-tool dump-reftable" command.
533
- - Add reftable testing infrastructure
534
- - git-prompt: prepare for reftable refs backend
535
- - vcxproj: adjust for the reftable changes
536
- - Add GIT_DEBUG_REFS debugging mechanism
537
- - Hookup unittests for the reftable library.
538
- - Reftable support for git-core
539
- - Add standalone build infrastructure for reftable
540
- - Add reftable library
541
- - Add .gitattributes for the reftable/ directory
542
- - Iterate over the "refs/" namespace in for_each_[raw]ref
543
- - Move REF_LOG_ONLY to refs-internal.h
544
- - Treat REVERT_HEAD as a pseudo ref
545
- - Treat CHERRY_PICK_HEAD as a pseudo ref
551
+* hn/reftable (2020-07-06) 4 commits
552
- Treat BISECT_HEAD as a pseudo ref
547
- - Make refs_ref_exists public
548
- - Write pseudorefs through ref backends.
553
- checkout: add '\n' to reflog message
554
- t3432: use git-reflog to inspect the reflog for HEAD
555
- lib-t6000.sh: write tag using git-update-ref
552
- - Merge branch 'bc/sha-256-part-2' into HEAD
553
- - Merge branch 'js/default-branch-name' into HEAD
554
- (this branch uses bc/sha-256-part-2 and js/default-branch-name; is tangled with bc/sha-256-cvs-svn-updates.)
555
-
556
- A new refs backend "reftable" to replace the traditional
557
- combination of packed-refs files and one-file-per-ref loose refs
558
- has been implemented and integrated for improved performance and
559
- atomicity.
556
+
557
+ Preliminary clean-up of the refs API in preparation for adding a
558
+ new refs backend "reftable".
559
+
560
+ Expecting a reroll.
561
+ The second one should be dropped, and possibly replaced with a
562
+ patch that moves message normalization from backends to the more
563
+ generic layer.
564
+ cf. <xmqqmu4ca31g.fsf@gitster.c.googlers.com>
565
566
--------------------------------------------------
567
[Discarded]