What's cooking (2019/09 #01)
Junio C Hamano committed
Sep 7, 2019 at 10:26 UTC
1163f0da0e6fb6c659dffed204ed362ac656eb20
1 file changed
+514
-276
whats-cooking.txt
+514
-276
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Aug 2019, #06; Fri, 23)
3
+Subject: What's cooking in git.git (Sep 2019, #01; Sat, 7)
4
X-master-at: 745f6812895b31c02b29bdfe4ae8e5498f776c26
5
-X-next-at: 0a3290393f27b805eda46be3998bd9e32518815d
5
+X-next-at: c6a4ce50a0d24c7b512b564eacb00d0bf92b22e4
6
7
-What's cooking in git.git (Aug 2019, #06; Fri, 23)
7
+What's cooking in git.git (Sep 2019, #01; Sat, 7)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -24,153 +24,425 @@ of the repositories listed at
24
http://git-blame.blogspot.com/p/git-public-repositories.html
25
26
--------------------------------------------------
27
-[Graduated to "master"]
27
+[New Topics]
28
+
29
+* ar/mingw-run-external-with-non-ascii-path (2019-08-26) 1 commit
30
+ - mingw: fix launching of externals from Unicode paths
31
+
32
+ Windows update.
33
+
34
+ Will merge to 'next'.
35
+
36
+
37
+* cb/pcre1-cleanup (2019-08-26) 2 commits
38
+ - grep: refactor and simplify PCRE1 support
39
+ - grep: make sure NO_LIBPCRE1_JIT disable JIT in PCRE1
40
+ (this branch uses ab/pcre-jit-fixes.)
41
+
42
+ PCRE fixes.
43
+
44
+
45
+* dl/complete-cherry-pick-revert-skip (2019-08-27) 3 commits
46
+ - status: mention --skip for revert and cherry-pick
47
+ - completion: add --skip for cherry-pick and revert
48
+ - completion: merge options for cherry-pick and revert
49
+
50
+ The command line completion support (in contrib/) learned about the
51
+ "--skip" option of "git revert" and "git cherry-pick".
52
+
53
+ Will merge to 'next'.
54
+
55
+
56
+* ew/hashmap (2019-08-26) 11 commits
57
+ - hashmap_get_next returns "struct hashmap_entry *"
58
+ - introduce container_of macro
59
+ - hashmap_put takes "struct hashmap_entry *"
60
+ - hashmap_remove takes "const struct hashmap_entry *"
61
+ - hashmap_get takes "const struct hashmap_entry *"
62
+ - hashmap_add takes "struct hashmap_entry *"
63
+ - hashmap_get_next takes "const struct hashmap_entry *"
64
+ - hashmap_entry: detect improper initialization
65
+ - hashmap_entry_init takes "struct hashmap_entry *"
66
+ - packfile: use hashmap_entry in delta_base_cache_entry
67
+ - diff: use hashmap_entry_init on moved_entry.ent
68
+
69
+ Code clean-up of the hashmap API, both users and implementation.
70
+
71
+ Will merge to 'next'.
72
+
73
+
74
+* jk/fast-import-history-bugfix (2019-08-27) 2 commits
75
+ - fast-import: duplicate into history rather than passing ownership
76
+ - fast-import: duplicate parsed encoding string
77
+
78
+ The memory ownership model of the "git fast-import" got
79
+ straightened out.
80
+
81
+ Will merge to 'next'.
82
+
83
+
84
+* js/gitdir-at-unc-root (2019-08-26) 3 commits
85
+ - setup_git_directory(): handle UNC root paths correctly
86
+ - Fix .git/ discovery at the root of UNC shares
87
+ - setup_git_directory(): handle UNC paths correctly
88
+
89
+ On Windows, the root level of UNC share is now allowed to be used
90
+ just like any other directory.
91
+
92
+ Will merge to 'next'.
93
+
94
+
95
+* js/honor-cflags-in-hdr-check (2019-08-26) 1 commit
96
+ - hdr-check: make it work on Windows
97
+
98
+ Build fix to make sure hdr-check is run with the same preprocessor
99
+ macros predefined by the $(MAKE) procedure.
100
+
101
+ Will merge to 'next'.
102
+
103
+
104
+* mh/http-urlmatch-cleanup (2019-08-26) 1 commit
105
+ - http: don't leak urlmatch_config.vars
106
+
107
+ Leakfix.
108
+
109
+ Will merge to 'next'.
110
+
111
+
112
+* mh/notes-duplicate-entries (2019-08-26) 2 commits
113
+ - notes: avoid potential use-after-free during insertion
114
+ - notes: avoid leaking duplicate entries
115
+
116
+ A few implementation fixes in the notes API.
117
+
118
+ Will merge to 'next'.
119
+
120
+
121
+* mh/release-commit-memory-fix (2019-08-26) 1 commit
122
+ - commit: free the right buffer in release_commit_memory
123
29
-* en/fast-import-merge-doc (2019-08-12) 1 commit
30
- (merged to 'next' on 2019-08-14 at 65efc63345)
31
- + git-fast-import.txt: clarify that multiple merge commits are allowed
124
+ Leakfix.
125
+
126
+ Will merge to 'next'.
127
+
128
+
129
+* rs/strbuf-detach (2019-08-26) 2 commits
130
+ - grep: use return value of strbuf_detach()
131
+ - log-tree: always use return value of strbuf_detach()
132
+
133
+ Straighten out the use of strbuf_detach() API function.
134
+
135
+ Will merge to 'next'.
136
+
137
+
138
+* rs/trace2-dst-warning (2019-08-26) 1 commit
139
+ - trace2: use warning() directly in tr2_dst_malformed_warning()
140
+
141
+ Code cleanup.
142
+
143
+ Will merge to 'next'.
144
+
145
+
146
+* sg/clean-nested-repo-with-ignored (2019-08-26) 1 commit
147
+ - t7300-clean: demonstrate deleting nested repo with an ignored file breakage
148
+
149
+ A bug documentation.
150
+
151
+ Will merge to 'next'.
152
+
153
+
154
+* tb/banned-vsprintf-namefix (2019-08-26) 1 commit
155
+ - banned.h: fix vsprintf()'s ban message
156
+
157
+ Error message fix.
158
+
159
+ Will merge to 'next'.
160
+
161
+
162
+* tb/file-url-to-unc-path (2019-08-26) 1 commit
163
+ - mingw: support UNC in git clone file://server/share/repo
164
+
165
+ Windows update.
166
+
167
+ Will merge to 'next'.
168
+
169
+
170
+* dl/compat-cleanup (2019-09-05) 2 commits
171
+ - compat/*.[ch]: remove extern from function declarations using spatch
172
+ - mingw: apply array.cocci rule
173
+
174
+ Code cleanup.
175
+
176
+ Will merge to 'next'.
177
+
178
+
179
+* dl/use-sq-from-test-lib (2019-09-06) 1 commit
180
+ - t: use common $SQ variable
181
+
182
+ Code cleanup.
183
+
184
+ Will merge to 'next'.
185
+
186
+
187
+* ds/commit-graph-on-fetch (2019-09-03) 1 commit
188
+ - fetch: add fetch.writeCommitGraph config setting
189
+ (this branch uses ds/feature-macros.)
190
+
191
+ A configuration variable tells "git fetch" to write the commit
192
+ graph after finishing.
193
+
194
+ Will merge to 'next'.
195
+
196
+
197
+* ds/include-exclude (2019-09-05) 5 commits
198
+ - unpack-trees: rename 'is_excluded_from_list()'
199
+ - treewide: rename 'exclude' methods to 'pattern'
200
+ - treewide: rename 'EXCL_FLAG_' to 'PATTERN_FLAG_'
201
+ - treewide: rename 'struct exclude_list' to 'struct pattern_list'
202
+ - treewide: rename 'struct exclude' to 'struct path_pattern'
203
+ (this branch uses md/list-objects-filter-combo.)
204
+
205
+ The internal code originally invented for ".gitignore" processing
206
+ got reshuffled and renamed to make it less tied to "excluding" and
207
+ stress more that it is about "matching", as it has been reused for
208
+ things like sparse checkout specification that want to check if a
209
+ path is "included".
210
+
211
+ Will merge to 'next'.
212
+
213
+
214
+* dt/remote-helper-doc-re-lock-option (2019-08-30) 1 commit
215
+ - clarify documentation for remote helpers
216
217
Doc update.
218
219
+ Will merge to 'next'.
220
36
-* jk/perf-no-dups (2019-08-12) 1 commit
37
- (merged to 'next' on 2019-08-14 at 3010a7d19f)
38
- + t/perf: rename duplicate-numbered test script
221
40
- Test & perf scripts must use unique numeric prefix, but a pair
41
- shared the same number, which is fixed here.
222
+* en/filter-branch-deprecation (2019-09-05) 3 commits
223
+ - t9902: use a non-deprecated command for testing
224
+ - Recommend git-filter-repo instead of git-filter-branch
225
+ - t6006: simplify, fix, and optimize empty message test
226
227
+ Start discouraging the use of "git filter-branch".
228
44
-* jk/tree-walk-overflow (2019-08-01) 6 commits
45
- (merged to 'next' on 2019-08-02 at 116467c77a)
46
- + tree-walk: harden make_traverse_path() length computations
47
- + tree-walk: add a strbuf wrapper for make_traverse_path()
48
- + tree-walk: accept a raw length for traverse_path_len()
49
- + tree-walk: use size_t consistently
50
- + tree-walk: drop oid from traverse_info
51
- + setup_traverse_info(): stop copying oid
229
+ Will merge to 'next'.
230
53
- Codepaths to walk tree objects have been audited for integer
54
- overflows and hardened.
231
232
+* en/merge-options-ff-and-friends (2019-09-01) 1 commit
233
+ - merge-options.txt: clarify meaning of various ff-related options
234
57
-* mt/grep-submodules-working-tree (2019-07-30) 1 commit
58
- (merged to 'next' on 2019-08-02 at e1a46a195f)
59
- + grep: fix worktree case in submodules
235
+ Doc update.
236
61
- "git grep --recurse-submodules" that looks at the working tree
62
- files looked at the contents in the index in submodules, instead of
63
- files in the working tree.
237
+ Will merge to 'next'.
238
239
66
-* rs/nedalloc-fixlets (2019-08-07) 2 commits
67
- (merged to 'next' on 2019-08-09 at 0e9286fb70)
68
- + nedmalloc: avoid compiler warning about unused value
69
- + nedmalloc: do assignments only after the declaration section
240
+* jc/test-cleanup (2019-09-05) 2 commits
241
+ - t3005: remove unused variable
242
+ - t: use LF variable defined in the test harness
243
71
- Compilation fix.
244
+ Code cleanup.
245
246
+ Will merge to 'next'.
247
74
-* sc/pack-refs-deletion-racefix (2019-08-02) 1 commit
75
- (merged to 'next' on 2019-08-09 at 6bd6c85fbb)
76
- + pack-refs: always refresh after taking the lock file
248
78
- "git pack-refs" can lose refs that are created while running, which
79
- is getting corrected.
80
- Performance impact unclear but let's let correctness take priority
81
- for now.
82
- cf. <20190816204906.GA29853@sigill.intra.peff.net>
249
+* jk/misc-uninitialized-fixes (2019-09-06) 6 commits
250
+ - pack-objects: drop packlist index_pos optimization
251
+ - test-read-cache: drop namelen variable
252
+ - diff-delta: set size out-parameter to 0 for NULL delta
253
+ - bulk-checkin: zero-initialize hashfile_checkpoint
254
+ - pack-objects: use object_id in packlist_alloc()
255
+ - git-am: handle missing "author" when parsing commit
256
257
+ Various fixes to codepaths gcc 9 had trouble following dataflow.
258
85
-* sg/commit-graph-validate (2019-08-05) 3 commits
86
- (merged to 'next' on 2019-08-09 at 87f61abb73)
87
- + commit-graph: error out on invalid commit oids in 'write --stdin-commits'
88
- + commit-graph: turn a group of write-related macro flags into an enum
89
- + t5318-commit-graph: use 'test_expect_code'
259
+ Will merge to 'next'.
260
91
- The code to write commit-graph over given commit object names has
92
- been made a bit more robust.
261
262
+* js/partial-clone-sparse-blob (2019-08-30) 2 commits
263
+ - list-objects-filter: handle unresolved sparse filter OID
264
+ - list-objects-filter: only parse sparse OID when 'have_git_dir'
265
95
-* sg/do-not-skip-non-httpd-tests (2019-08-02) 3 commits
96
- (merged to 'next' on 2019-08-02 at e700df0693)
97
- + t: warn against adding non-httpd-specific tests after sourcing 'lib-httpd'
98
- + t5703: run all non-httpd-specific tests before sourcing 'lib-httpd.sh'
99
- + t5510-fetch: run non-httpd-specific test before sourcing 'lib-httpd.sh'
100
- (this branch uses sg/t5510-test-i18ngrep-fix.)
266
+ Band-aid on "git clone --sparse:oid=X" that would hit BUG().
267
102
- Test fix.
268
+ Will merge to 'next'.
269
270
105
-* sg/show-failed-test-names (2019-08-05) 2 commits
106
- (merged to 'next' on 2019-08-09 at c49ece8a0d)
107
- + tests: show the test name and number at the start of verbose output
108
- + t0000-basic: use realistic test script names in the verbose tests
271
+* js/visual-studio (2019-09-05) 1 commit
272
+ - .gitignore: stop ignoring `.manifest` files
273
110
- The first line of verbose output from each test piece now carries
111
- the test name and number to help scanning with eyeballs.
274
+ Adjust .gitignore to unignore a path that we started to track.
275
276
+ Will merge to 'next'.
277
114
-* sg/t5510-test-i18ngrep-fix (2019-07-31) 1 commit
115
- (merged to 'next' on 2019-08-02 at 678564fda2)
116
- + t5510-fetch: fix negated 'test_i18ngrep' invocation
117
- (this branch is used by sg/do-not-skip-non-httpd-tests.)
278
119
- Test fix.
279
+* jt/cache-tree-avoid-lazy-fetch-during-merge (2019-09-03) 1 commit
280
+ - cache-tree: do not lazy-fetch merge tree
281
282
+ The cache-tree code has been taught to be less aggressive in
283
+ attempting to see if a tree object it computed already exists in
284
+ the repository.
285
122
-* sg/worktree-remove-errormsg (2019-08-13) 1 commit
123
- (merged to 'next' on 2019-08-14 at e5444969c9)
124
- + worktree remove: clarify error message on dirty worktree
286
+ Expecting a clearified log message.
287
126
- Error message update/clarification.
288
289
+* ma/asciidoctor-refmiscinfo (2019-09-03) 2 commits
290
+ - doc-diff: replace --cut-header-footer with --cut-footer
291
+ - asciidoctor-extensions: provide `<refmiscinfo/>`
292
129
-* vn/restore-empty-ita-corner-case-fix (2019-08-02) 2 commits
130
- (merged to 'next' on 2019-08-09 at ad2d7630d1)
131
- + restore: add test for deleted ita files
132
- + checkout.c: unstage empty deleted ita files
293
+ Update support for Asciidoctor documentation toolchain.
294
134
- "git checkout" and "git restore" to re-populate the index from a
135
- tree-ish (typically HEAD) did not work correctly for a path that
136
- was removed and then added again with the intent-to-add bit, when
137
- the corresponding working tree file was empty. This has been
138
- corrected.
295
+ Will merge to 'next'.
296
140
---------------------------------------------------
141
-[New Topics]
297
143
-* jt/avoid-ls-refs-with-http (2019-08-22) 2 commits
144
- - transport: teach all vtables to allow fetch first
145
- - transport-helper: skip ls-refs if unnecessary
298
+* nd/switch-and-restore (2019-08-30) 1 commit
299
+ - checkout: add simple check for 'git checkout -b'
300
+
301
+ Resurrect a performance hack.
302
+
303
+ Will merge to 'next'.
304
+
305
+
306
+* rs/get-tagged-oid (2019-09-05) 2 commits
307
+ - use get_tagged_oid()
308
+ - tag: factor out get_tagged_oid()
309
+
310
+ Code cleanup.
311
+
312
+ Will merge to 'next'.
313
147
- The http transport lacked some optimization the native transports
148
- learned to avoid unnecessary ref advertisement, which has been
149
- corrected.
314
+
315
+* rs/help-unknown-ref-does-not-return (2019-08-30) 1 commit
316
+ - help: make help_unknown_ref() NORETURN
317
+
318
+ Code cleanup.
319
320
Will merge to 'next'.
321
322
+
323
+* rs/parse-tree-indirect (2019-09-03) 1 commit
324
+ - tree: simplify parse_tree_indirect()
325
+
326
+ Code cleanup.
327
+
328
+ Will merge to 'next'.
329
+
330
+
331
+* sg/git-test-boolean (2019-09-06) 2 commits
332
+ - ci: restore running httpd tests
333
+ - t/lib-git-svn.sh: check GIT_TEST_SVN_HTTPD when running SVN HTTP tests
334
+
335
+ Fix an earlier regression in the test suite, which mistakenly
336
+ stopped running HTTPD tests.
337
+
338
+ Will merge to 'next'.
339
+
340
+
341
+* tg/push-all-in-mirror-forbidden (2019-09-03) 1 commit
342
+ - push: disallow --all and refspecs when remote.<name>.mirror is set
343
+
344
+ Fix an earlier regression to "git push --all" which should have
345
+ been forbidden when the target remote repository is set to be a
346
+ mirror.
347
+
348
+ Will merge to 'next'.
349
+
350
+
351
+* tg/stash-refresh-index (2019-09-05) 3 commits
352
+ - stash: make sure to write refreshed cache
353
+ - merge: use refresh_and_write_cache
354
+ - factor out refresh_and_write_cache function
355
+
356
+ "git stash" learned to write refreshed index back to disk.
357
+
358
+ Needs coordination with js/builtin-add-i topic, as they both wants
359
+ the same kind of enhancement to the same API function.
360
+
361
--------------------------------------------------
362
[Stalled]
363
156
-* js/builtin-add-i (2019-07-18) 11 commits
157
- - built-in add -i: implement the `help` command
158
- - built-in add -i: use color in the main loop
159
- - built-in add -i: support `?` (prompt help)
160
- - built-in add -i: show unique prefixes of the commands
161
- - Add a function to determine unique prefixes for a list of strings
162
- - built-in add -i: implement the main loop
163
- - built-in add -i: color the header in the `status` command
164
- - built-in add -i: refresh the index before running `status`
165
- - built-in add -i: implement the `status` command
166
- - diff: export diffstat interface
167
- - Start to implement a built-in version of `git add --interactive`
364
+* es/walken-tutorial (2019-08-07) 1 commit
365
+ - documentation: add tutorial for revision walking
366
+
367
+ A tutorial on object enumeration.
368
169
- The beginning of rewriting "git add -i" in C.
369
+ Perhaps take the thing with as little tweaks as possible, retitling
370
+ it to "my first object enumeration" or something?
371
+ cf. <20190814183328.GA40797@google.com>
372
+
373
+
374
+* dl/format-patch-cover-letter-subject (2019-09-05) 1 commit
375
+ - format-patch: learn --infer-cover-subject option
376
+ (this branch uses dl/format-patch-doc-test-cleanup.)
377
+
378
+ "git format-patch --cover-letter" learned to optionally use the
379
+ first paragraph (typically a single-liner) of branch.*.description
380
+ as the subject of the cover letter.
381
171
- Expecting a response and possibly a reroll.
172
- cf. <xmqqwofyozka.fsf@gitster-ct.c.googlers.com>
173
- cf. <xmqqsgqmoyz1.fsf@gitster-ct.c.googlers.com>
382
+ Reroll with a redesign with less emphasis on "subject" coming?
383
+
384
+
385
+* bc/object-id-part17 (2019-08-19) 26 commits
386
+ - midx: switch to using the_hash_algo
387
+ - builtin/show-index: replace sha1_to_hex
388
+ - rerere: replace sha1_to_hex
389
+ - builtin/receive-pack: replace sha1_to_hex
390
+ - builtin/index-pack: replace sha1_to_hex
391
+ - packfile: replace sha1_to_hex
392
+ - wt-status: convert struct wt_status to object_id
393
+ - cache: remove null_sha1
394
+ - builtin/worktree: switch null_sha1 to null_oid
395
+ - builtin/repack: write object IDs of the proper length
396
+ - pack-write: use hash_to_hex when writing checksums
397
+ - sequencer: convert to use the_hash_algo
398
+ - bisect: switch to using the_hash_algo
399
+ - sha1-lookup: switch hard-coded constants to the_hash_algo
400
+ - config: use the_hash_algo in abbrev comparison
401
+ - combine-diff: replace GIT_SHA1_HEXSZ with the_hash_algo
402
+ - bundle: switch to use the_hash_algo
403
+ - connected: switch GIT_SHA1_HEXSZ to the_hash_algo
404
+ - show-index: switch hard-coded constants to the_hash_algo
405
+ - blame: remove needless comparison with GIT_SHA1_HEXSZ
406
+ - builtin/rev-parse: switch to use the_hash_algo
407
+ - builtin/blame: switch uses of GIT_SHA1_HEXSZ to the_hash_algo
408
+ - builtin/receive-pack: switch to use the_hash_algo
409
+ - fetch-pack: use parse_oid_hex
410
+ - patch-id: convert to use the_hash_algo
411
+ - builtin/replace: make hash size independent
412
+
413
+ Preparation for SHA-256 upgrade continues.
414
+
415
+ Looked mostly OK, with a possible update.
416
+ cf. <20190820223606.GJ365197@genre.crustytoothpaste.net>
417
+
418
+
419
+* mt/threaded-grep-in-object-store (2019-08-13) 4 commits
420
+ - grep: re-enable threads in some non-worktree cases
421
+ - grep: disable grep_read_mutex when possible
422
+ - grep: allow locks to be enabled individually
423
+ - object-store: add lock to read_object_file_extended()
424
+
425
+ Traditionally, we avoided threaded grep while searching in objects
426
+ (as opposed to files in the working tree) as accesses to the object
427
+ layer is not thread-safe. This limitation is getting lifted.
428
+
429
+ Comments?
430
+ cf. <cover.1565468806.git.matheus.bernardino@usp.br>
431
+
432
+
433
+
434
+
435
+* pd/fetch-jobs (2019-08-13) 5 commits
436
+ . fetch: make --jobs control submodules and remotes
437
+ . fetch: add the --submodule-fetch-jobs option
438
+ . fetch: add the fetch.jobs config key
439
+ . fetch: add the "--fetch-jobs" option
440
+ . fetch: rename max_children to max_children_for_submodules
441
+
442
+ "git fetch --jobs" is getting taught to also run fetch jobs in
443
+ parallel when fetching from multiple remote repositories.
444
+
445
+ Comments?
446
447
448
* js/trace2-json-schema (2019-07-25) 3 commits
@@ -254,14 +526,45 @@ of the repositories listed at
526
--------------------------------------------------
527
[Cooking]
528
529
+* js/builtin-add-i (2019-08-30) 11 commits
530
+ . built-in add -i: implement the `help` command
531
+ . built-in add -i: use color in the main loop
532
+ . built-in add -i: support `?` (prompt help)
533
+ . built-in add -i: show unique prefixes of the commands
534
+ . Add a function to determine unique prefixes for a list of strings
535
+ . built-in add -i: implement the main loop
536
+ . built-in add -i: color the header in the `status` command
537
+ . built-in add -i: refresh the index before running `status`
538
+ . built-in add -i: implement the `status` command
539
+ . diff: export diffstat interface
540
+ . Start to implement a built-in version of `git add --interactive`
541
+
542
+ The beginning of rewriting "git add -i" in C.
543
+
544
+ On hold, waiting for tg/stash-refresh-index to work well with this.
545
+
546
+
547
+* jt/avoid-ls-refs-with-http (2019-08-22) 2 commits
548
+ (merged to 'next' on 2019-09-07 at c6a4ce50a0)
549
+ + transport: teach all vtables to allow fetch first
550
+ + transport-helper: skip ls-refs if unnecessary
551
+
552
+ The http transport lacked some optimization the native transports
553
+ learned to avoid unnecessary ref advertisement, which has been
554
+ corrected.
555
+
556
+ Will merge to 'master'.
557
+
558
+
559
* cb/curl-use-xmalloc (2019-08-15) 1 commit
258
- - http: use xmalloc with cURL
560
+ (merged to 'next' on 2019-09-07 at 07da24f51c)
561
+ + http: use xmalloc with cURL
562
(this branch uses jk/drop-release-pack-memory.)
563
564
Tell cURL library to use the same malloc() implementation, with the
565
xmalloc() wrapper, as the rest of the system, for consistency.
566
264
- Will merge to 'next'.
567
+ Will merge to 'master'.
568
569
570
* sg/diff-indent-heuristic-non-experimental (2019-08-15) 1 commit
@@ -318,7 +621,7 @@ of the repositories listed at
621
Will merge to 'next'.
622
623
321
-* bc/hash-independent-tests-part-5 (2019-08-20) 14 commits
624
+* bc/hash-independent-tests-part-5 (2019-08-26) 14 commits
625
- t4009: make hash size independent
626
- t4002: make hash independent
627
- t4000: make hash size independent
@@ -336,42 +639,7 @@ of the repositories listed at
639
640
Preparation for SHA-256 upgrade continues in the test department.
641
339
- Expecting a reroll.
340
- cf. <20190818203417.GG365197@genre.crustytoothpaste.net>
341
-
342
-
343
-* bc/object-id-part17 (2019-08-19) 26 commits
344
- - midx: switch to using the_hash_algo
345
- - builtin/show-index: replace sha1_to_hex
346
- - rerere: replace sha1_to_hex
347
- - builtin/receive-pack: replace sha1_to_hex
348
- - builtin/index-pack: replace sha1_to_hex
349
- - packfile: replace sha1_to_hex
350
- - wt-status: convert struct wt_status to object_id
351
- - cache: remove null_sha1
352
- - builtin/worktree: switch null_sha1 to null_oid
353
- - builtin/repack: write object IDs of the proper length
354
- - pack-write: use hash_to_hex when writing checksums
355
- - sequencer: convert to use the_hash_algo
356
- - bisect: switch to using the_hash_algo
357
- - sha1-lookup: switch hard-coded constants to the_hash_algo
358
- - config: use the_hash_algo in abbrev comparison
359
- - combine-diff: replace GIT_SHA1_HEXSZ with the_hash_algo
360
- - bundle: switch to use the_hash_algo
361
- - connected: switch GIT_SHA1_HEXSZ to the_hash_algo
362
- - show-index: switch hard-coded constants to the_hash_algo
363
- - blame: remove needless comparison with GIT_SHA1_HEXSZ
364
- - builtin/rev-parse: switch to use the_hash_algo
365
- - builtin/blame: switch uses of GIT_SHA1_HEXSZ to the_hash_algo
366
- - builtin/receive-pack: switch to use the_hash_algo
367
- - fetch-pack: use parse_oid_hex
368
- - patch-id: convert to use the_hash_algo
369
- - builtin/replace: make hash size independent
370
-
371
- Preparation for SHA-256 upgrade continues.
372
-
373
- Looked mostly OK, with a possible update.
374
- cf. <20190820223606.GJ365197@genre.crustytoothpaste.net>
642
+ Will merge to 'next'.
643
644
645
* bm/repository-layout-typofix (2019-08-19) 1 commit
@@ -383,34 +651,24 @@ of the repositories listed at
651
Will merge to 'master'.
652
653
386
-* bw/rebase-autostash-keep-current-branch (2019-08-21) 1 commit
387
- - rebase.c: make sure the active branch isn't moved when autostashing
654
+* bw/rebase-autostash-keep-current-branch (2019-09-07) 2 commits
655
+ - builtin/rebase.c: Remove pointless message
656
+ - builtin/rebase.c: make sure the active branch isn't moved when autostashing
657
658
"git rebase --autostash <upstream> <branch>", when <branch> is
659
different from the current branch, incorrectly moved the tip of the
660
current branch, which has been corrected.
661
393
- Getting there.
394
- cf. <nycvar.QRO.7.76.6.1908221418540.46@tvgsbejvaqbjf.bet>
395
-
396
-
397
-* dl/format-patch-cover-letter-subject (2019-08-21) 1 commit
398
- - format-patch: learn --infer-cover-subject option
399
- (this branch uses dl/format-patch-doc-test-cleanup.)
400
-
401
- "git format-patch --cover-letter" learned to optionally use the
402
- first paragraph (typically a single-liner) of branch.*.description
403
- as the subject of the cover letter.
662
+ Will merge to 'next'.
663
664
406
-* dl/format-patch-doc-test-cleanup (2019-08-21) 14 commits
665
+* dl/format-patch-doc-test-cleanup (2019-09-05) 13 commits
666
- config/format.txt: specify default value of format.coverLetter
408
- - SQUASH???
667
- Doc: add more detail for git-format-patch
410
- - SQUASH???
668
- t4014: stop losing return codes of git commands
669
- t4014: remove confusing pipe in check_threading()
670
- t4014: use test_line_count() where possible
671
+ - t4014: let sed open its own files
672
- t4014: drop redirections to /dev/null
673
- t4014: use indentable here-docs
674
- t4014: remove spaces after redirect operators
@@ -423,7 +681,7 @@ of the repositories listed at
681
The documentation and tests for "git format-patch" have been
682
cleaned up.
683
426
- Excpecting a reroll.
684
+ Will merge to 'next'.
685
686
687
* ds/midx-expire-repack (2019-08-20) 1 commit
@@ -509,12 +767,13 @@ of the repositories listed at
767
768
769
* sg/line-log-tree-diff-optim (2019-08-21) 2 commits
512
- - line-log: avoid unnecessary full tree diffs
513
- - line-log: extract pathspec parsing from line ranges into a helper function
770
+ (merged to 'next' on 2019-09-07 at 8d5b7053fd)
771
+ + line-log: avoid unnecessary full tree diffs
772
+ + line-log: extract pathspec parsing from line ranges into a helper function
773
774
Optimize unnecessary full-tree diff away from "git log -L" machinery.
775
517
- Will merge to 'next'.
776
+ Will merge to 'master'.
777
778
779
* tg/t0021-racefix (2019-08-22) 1 commit
@@ -536,9 +795,9 @@ of the repositories listed at
795
Will merge to 'master'.
796
797
539
-* bc/reread-attributes-during-rebase (2019-08-19) 2 commits
540
- (merged to 'next' on 2019-08-23 at 14aaf533d6)
541
- + apply: reload .gitattributes after patching it
798
+* bc/reread-attributes-during-rebase (2019-09-03) 2 commits
799
+ (merged to 'next' on 2019-09-07 at 9f5e5db0b0)
800
+ + am: reload .gitattributes after patching it
801
+ path: add a function to check for path suffix
802
803
The "git am" based backend of "git rebase" ignored the result of
@@ -549,7 +808,8 @@ of the repositories listed at
808
809
810
* jk/drop-release-pack-memory (2019-08-13) 1 commit
552
- - packfile: drop release_pack_memory()
811
+ (merged to 'next' on 2019-09-07 at 30f841c42d)
812
+ + packfile: drop release_pack_memory()
813
(this branch is used by cb/curl-use-xmalloc.)
814
815
xmalloc() used to have a mechanism to ditch memory and address
@@ -559,49 +819,26 @@ of the repositories listed at
819
users already do limit their uses with various other mechanisms.
820
It has been simplified away.
821
562
- Will merge to 'next'.
822
+ Will merge to 'master'.
823
824
825
* sg/complete-configuration-variables (2019-08-13) 11 commits
566
- - completion: complete config variables and values for 'git clone --config='
567
- - completion: complete config variables names and values for 'git clone -c'
568
- - completion: complete values of configuration variables after 'git -c var='
569
- - completion: complete configuration sections and variable names for 'git -c'
570
- - completion: split _git_config()
571
- - completion: simplify inner 'case' pattern in __gitcomp()
572
- - completion: use 'sort -u' to deduplicate config variable names
573
- - completion: deduplicate configuration sections
574
- - completion: add tests for 'git config' completion
575
- - completion: complete more values of more 'color.*' configuration variables
576
- - completion: fix a typo in a comment
826
+ (merged to 'next' on 2019-09-07 at 9921f0e536)
827
+ + completion: complete config variables and values for 'git clone --config='
828
+ + completion: complete config variables names and values for 'git clone -c'
829
+ + completion: complete values of configuration variables after 'git -c var='
830
+ + completion: complete configuration sections and variable names for 'git -c'
831
+ + completion: split _git_config()
832
+ + completion: simplify inner 'case' pattern in __gitcomp()
833
+ + completion: use 'sort -u' to deduplicate config variable names
834
+ + completion: deduplicate configuration sections
835
+ + completion: add tests for 'git config' completion
836
+ + completion: complete more values of more 'color.*' configuration variables
837
+ + completion: fix a typo in a comment
838
839
Command line completion updates for "git -c var.name=val"
840
580
- Will merge to 'next'.
581
-
582
-
583
-* mt/threaded-grep-in-object-store (2019-08-13) 4 commits
584
- - grep: re-enable threads in some non-worktree cases
585
- - grep: disable grep_read_mutex when possible
586
- - grep: allow locks to be enabled individually
587
- - object-store: add lock to read_object_file_extended()
588
-
589
- Traditionally, we avoided threaded grep while searching in objects
590
- (as opposed to files in the working tree) as accesses to the object
591
- layer is not thread-safe. This limitation is getting lifted.
592
-
593
- cf. <cover.1565468806.git.matheus.bernardino@usp.br>
594
-
595
-
596
-* pd/fetch-jobs (2019-08-13) 5 commits
597
- . fetch: make --jobs control submodules and remotes
598
- . fetch: add the --submodule-fetch-jobs option
599
- . fetch: add the fetch.jobs config key
600
- . fetch: add the "--fetch-jobs" option
601
- . fetch: rename max_children to max_children_for_submodules
602
-
603
- "git fetch --jobs" is getting taught to also run fetch jobs in
604
- parallel when fetching from multiple remote repositories.
841
+ Will merge to 'master'.
842
843
844
* cb/fetch-set-upstream (2019-08-19) 1 commit
@@ -616,14 +853,15 @@ of the repositories listed at
853
854
855
* js/pre-merge-commit-hook (2019-08-07) 4 commits
619
- - merge: --no-verify to bypass pre-merge-commit hook
620
- - git-merge: honor pre-merge-commit hook
621
- - merge: do no-verify like commit
622
- - t7503: verify proper hook execution
856
+ (merged to 'next' on 2019-09-07 at 0c9f25399c)
857
+ + merge: --no-verify to bypass pre-merge-commit hook
858
+ + git-merge: honor pre-merge-commit hook
859
+ + merge: do no-verify like commit
860
+ + t7503: verify proper hook execution
861
862
A new "pre-merge-commit" hook has been introduced.
863
626
- Will merge to 'next'.
864
+ Will merge to 'master'.
865
866
867
* jk/eoo (2019-08-06) 3 commits
@@ -683,6 +921,7 @@ of the repositories listed at
921
+ commit-graph: turn on commit-graph by default
922
+ t6501: use 'git gc' in quiet mode
923
+ repo-settings: consolidate some config settings
924
+ (this branch is used by ds/commit-graph-on-fetch.)
925
926
A mechanism to affect the default setting for a (related) group of
927
configuration variables is introduced.
@@ -713,38 +952,30 @@ of the repositories listed at
952
Looking good.
953
954
716
-* js/rebase-r-strategy (2019-07-31) 16 commits
717
- - rebase -r: do not (re-)generate root commits with `--root` *and* `--onto`
718
- - t3418: test `rebase -r` with merge strategies
719
- - t/lib-rebase: prepare for testing `git rebase --rebase-merges`
720
- - rebase -r: support merge strategies other than `recursive`
721
- - t3427: fix another incorrect assumption
722
- - t3427: accommodate for the `rebase --merge` backend having been replaced
723
- - t3427: fix erroneous assumption
724
- - t3427: condense the unnecessarily repetitive test cases into three
725
- - t3427: move the `filter-branch` invocation into the `setup` case
726
- - t3427: simplify the `setup` test case significantly
727
- - t3427: add a clarifying comment
728
- - rebase: fold git-rebase--common into the -p backend
729
- - sequencer: the `am` and `rebase--interactive` scripts are gone
730
- - .gitignore: there is no longer a built-in `git-rebase--interactive`
731
- - t3400: stop referring to the scripted rebase
732
- - Drop unused git-rebase--am.sh
955
+* js/rebase-r-strategy (2019-09-05) 17 commits
956
+ (merged to 'next' on 2019-09-07 at 71e2451f6c)
957
+ + t3427: accelerate this test by using fast-export and fast-import
958
+ + rebase -r: do not (re-)generate root commits with `--root` *and* `--onto`
959
+ + t3418: test `rebase -r` with merge strategies
960
+ + t/lib-rebase: prepare for testing `git rebase --rebase-merges`
961
+ + rebase -r: support merge strategies other than `recursive`
962
+ + t3427: fix another incorrect assumption
963
+ + t3427: accommodate for the `rebase --merge` backend having been replaced
964
+ + t3427: fix erroneous assumption
965
+ + t3427: condense the unnecessarily repetitive test cases into three
966
+ + t3427: move the `filter-branch` invocation into the `setup` case
967
+ + t3427: simplify the `setup` test case significantly
968
+ + t3427: add a clarifying comment
969
+ + rebase: fold git-rebase--common into the -p backend
970
+ + sequencer: the `am` and `rebase--interactive` scripts are gone
971
+ + .gitignore: there is no longer a built-in `git-rebase--interactive`
972
+ + t3400: stop referring to the scripted rebase
973
+ + Drop unused git-rebase--am.sh
974
975
"git rebase --rebase-merges" learned to drive different merge
976
strategies and pass strategy specific options to them.
977
737
- Will merge to 'next'.
738
-
739
-
740
-* es/walken-tutorial (2019-08-07) 1 commit
741
- - documentation: add tutorial for revision walking
742
-
743
- A tutorial on object enumeration.
744
-
745
- Perhaps take the thing with as little tweaks as possible, retitling
746
- it to "my first object enumeration" or something?
747
- cf. <20190814183328.GA40797@google.com>
978
+ Will merge to 'master'.
979
980
981
* ab/pcre-jit-fixes (2019-08-19) 18 commits
@@ -766,66 +997,64 @@ of the repositories listed at
997
- t4210: skip more command-line encoding tests on MinGW
998
- grep: don't use PCRE2?_UTF8 with "log --encoding=<non-utf8>"
999
- log tests: test regex backends in "--encode=<enc>" tests
1000
+ (this branch is used by cb/pcre1-cleanup.)
1001
1002
A few simplification and bugfixes to PCRE interface.
1003
1004
1005
* md/list-objects-filter-combo (2019-06-28) 10 commits
774
- - list-objects-filter-options: make parser void
775
- - list-objects-filter-options: clean up use of ALLOC_GROW
776
- - list-objects-filter-options: allow mult. --filter
777
- - strbuf: give URL-encoding API a char predicate fn
778
- - list-objects-filter-options: make filter_spec a string_list
779
- - list-objects-filter-options: move error check up
780
- - list-objects-filter: implement composite filters
781
- - list-objects-filter-options: always supply *errbuf
782
- - list-objects-filter: put omits set in filter struct
783
- - list-objects-filter: encapsulate filter components
1006
+ (merged to 'next' on 2019-09-07 at 076a48aa57)
1007
+ + list-objects-filter-options: make parser void
1008
+ + list-objects-filter-options: clean up use of ALLOC_GROW
1009
+ + list-objects-filter-options: allow mult. --filter
1010
+ + strbuf: give URL-encoding API a char predicate fn
1011
+ + list-objects-filter-options: make filter_spec a string_list
1012
+ + list-objects-filter-options: move error check up
1013
+ + list-objects-filter: implement composite filters
1014
+ + list-objects-filter-options: always supply *errbuf
1015
+ + list-objects-filter: put omits set in filter struct
1016
+ + list-objects-filter: encapsulate filter components
1017
+ (this branch is used by ds/include-exclude.)
1018
1019
The list-objects-filter API (used to create a sparse/lazy clone)
1020
learned to take a combined filter specification.
1021
788
- Will merge to 'next'.
1022
+ Will merge to 'master'.
1023
1024
1025
* cc/multi-promisor (2019-06-25) 15 commits
792
- - Move core_partial_clone_filter_default to promisor-remote.c
793
- - Move repository_format_partial_clone to promisor-remote.c
794
- - Remove fetch-object.{c,h} in favor of promisor-remote.{c,h}
795
- - remote: add promisor and partial clone config to the doc
796
- - partial-clone: add multiple remotes in the doc
797
- - t0410: test fetching from many promisor remotes
798
- - builtin/fetch: remove unique promisor remote limitation
799
- - promisor-remote: parse remote.*.partialclonefilter
800
- - Use promisor_remote_get_direct() and has_promisor_remote()
801
- - promisor-remote: use repository_format_partial_clone
802
- - promisor-remote: add promisor_remote_reinit()
803
- - promisor-remote: implement promisor_remote_get_direct()
804
- - Add initial support for many promisor remotes
805
- - fetch-object: make functions return an error code
806
- - t0410: remove pipes after git commands
1026
+ (merged to 'next' on 2019-09-07 at 46faa86955)
1027
+ + Move core_partial_clone_filter_default to promisor-remote.c
1028
+ + Move repository_format_partial_clone to promisor-remote.c
1029
+ + Remove fetch-object.{c,h} in favor of promisor-remote.{c,h}
1030
+ + remote: add promisor and partial clone config to the doc
1031
+ + partial-clone: add multiple remotes in the doc
1032
+ + t0410: test fetching from many promisor remotes
1033
+ + builtin/fetch: remove unique promisor remote limitation
1034
+ + promisor-remote: parse remote.*.partialclonefilter
1035
+ + Use promisor_remote_get_direct() and has_promisor_remote()
1036
+ + promisor-remote: use repository_format_partial_clone
1037
+ + promisor-remote: add promisor_remote_reinit()
1038
+ + promisor-remote: implement promisor_remote_get_direct()
1039
+ + Add initial support for many promisor remotes
1040
+ + fetch-object: make functions return an error code
1041
+ + t0410: remove pipes after git commands
1042
1043
Teach the lazy clone machinery that there can be more than one
1044
promisor remote and consult them in order when downloading missing
1045
objects on demand.
1046
812
- Will merge to 'next'.
813
-
814
-
815
-* jc/format-patch-noclobber (2019-02-22) 1 commit
816
- - format-patch: --no-clobber refrains from overwriting output files
817
-
818
- "git format-patch" used to overwrite an existing patch/cover-letter
819
- file. A new "--no-clobber" option stops it.
820
-
821
- Will discard.
1047
+ Will merge to 'master'.
1048
1049
824
-* dl/rebase-i-keep-base (2019-04-25) 6 commits
1050
+* dl/rebase-i-keep-base (2019-08-27) 9 commits
1051
- rebase: teach rebase --keep-base
1052
+ - rebase tests: test linear branch topology
1053
- rebase: fast-forward --fork-point in more cases
1054
- rebase: fast-forward --onto in more cases
1055
- rebase: refactor can_fast_forward into goto tower
1056
+ - t3432: test for --no-ff's interaction with fast-forward
1057
+ - t3432: distinguish "noop-same" v.s. "work-same" in "same head" tests
1058
- t3432: test rebase fast-forward behavior
1059
- t3431: add rebase --fork-point tests
1060
@@ -837,6 +1066,15 @@ of the repositories listed at
1066
The command also has learned to fast-forward in more cases where it
1067
can instead of replaying to recreate identical commits.
1068
840
- On hold.
841
- cf. <20190508001252.15752-1-avarab@gmail.com>
842
- cf. <20190719210156.GA9688@archbookpro.localdomain>
1069
+ Will merge to 'next'.
1070
+
1071
+
1072
+* jc/format-patch-noclobber (2019-02-22) 1 commit
1073
+ - format-patch: --no-clobber refrains from overwriting output files
1074
+
1075
+ "git format-patch" used to overwrite an existing patch/cover-letter
1076
+ file. A new "--no-clobber" option stops it.
1077
+
1078
+ Will discard.
1079
+
1080
+