What's cooking (2018/09 #04)
Junio C Hamano committed
Sep 20, 2018 at 22:19 UTC
722746685bce03f223ed75febe312495e6c139da
1 file changed
+817
-699
whats-cooking.txt
+817
-699
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Sep 2018, #03; Fri, 14)
4
-X-master-at: 1d4361b0f344188ab5eec6dcea01f61a3a3a1670
5
-X-next-at: 18242da7ef2827fb2713d17d95e46d20630f67d2
3
+Subject: What's cooking in git.git (Sep 2018, #04; Thu, 20)
4
+X-master-at: 150f307afc13961b0322ad0e7205a7b193368586
5
+X-next-at: 22e244bd67aa2e7d6da808dd00093b071f3ffd7c
6
7
-What's cooking in git.git (Sep 2018, #03; Fri, 14)
7
+What's cooking in git.git (Sep 2018, #04; Thu, 20)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,17 +12,12 @@ Here are the topics that have been cooking. Commits prefixed with
12
'+' 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
-The tip of 'next' hasn't been rewound yet, but the states of many
16
-topics that were marked to "Cook in 'next'" read "Will merge to
17
-'master'" now. I'll probably start merging a handful of topics that
18
-have been in 'next' down to 'master' tonight (they appear at the
19
-bottom of "log --first-parent master..pu" output).
20
-
21
-The three GSoC "rewrite in C" topics are still unclassified in this
22
-"What's cooking" report, but I am hoping that we can have them in
23
-'next' sooner rather than later. I got an impression that Dscho
24
-wanted a chance for the final clean-up on some of them, so I am not
25
-doing anything hasty yet at this moment, though.
15
+The tip of 'next' hasn't been rewound yet. The three GSoC "rewrite
16
+in C" topics are still unclassified in this "What's cooking" report,
17
+but I am hoping that we can have them in 'next' sooner rather than
18
+later. I got an impression that Dscho wanted a chance for the final
19
+clean-up on some of them, so I am not doing anything hasty yet at
20
+this moment, though.
21
22
You can find the changes described here in the integration branches
23
of the repositories listed at
@@ -30,216 +25,587 @@ of the repositories listed at
25
http://git-blame.blogspot.com/p/git-public-repositories.html
26
27
--------------------------------------------------
33
-[New Topics]
28
+[Graduated to "master"]
29
35
-* ab/fsck-skiplist (2018-09-12) 10 commits
36
- - fsck: support comments & empty lines in skipList
37
- - fsck: use oidset instead of oid_array for skipList
38
- - fsck: use strbuf_getline() to read skiplist file
39
- - fsck: add a performance test for skipList
40
- - fsck: add a performance test
41
- - fsck: document that skipList input must be unabbreviated
42
- - fsck: document and test commented & empty line skipList input
43
- - fsck: document and test sorted skipList input
44
- - fsck tests: add a test for no skipList input
45
- - fsck tests: setup of bogus commit object
30
+* ab/fetch-tags-noclobber (2018-08-31) 11 commits
31
+ (merged to 'next' on 2018-09-20 at 3e950afa0f)
32
+ + fetch doc: correct grammar in --force docs
33
+ + push doc: add spacing between two words
34
+ (merged to 'next' on 2018-09-14 at 0384a7a8b4)
35
+ + fetch: stop clobbering existing tags without --force
36
+ + fetch: document local ref updates with/without --force
37
+ + push doc: correct lies about how push refspecs work
38
+ + push doc: move mention of "tag <tag>" later in the prose
39
+ + push doc: remove confusing mention of remote merger
40
+ + fetch tests: add a test for clobbering tag behavior
41
+ + push tests: use spaces in interpolated string
42
+ + push tests: make use of unused $1 in test description
43
+ + fetch: change "branch" to "reference" in --force -h output
44
47
- Update fsck.skipList implementation and documentation.
45
+ The rules used by "git push" and "git fetch" to determine if a ref
46
+ can or cannot be updated were inconsistent; specifically, fetching
47
+ to update existing tags were allowed even though tags are supposed
48
+ to be unmoving anchoring points. "git fetch" was taught to forbid
49
+ updates to existing tags without the "--force" option.
50
+ This is a backward incompatible change but in a good way; it may
51
+ still need to be treated carefully.
52
49
- Will merge to 'next'.
53
54
+* bp/checkout-new-branch-optim (2018-08-16) 1 commit
55
+ (merged to 'next' on 2018-09-20 at 329edd4960)
56
+ + config doc: add missing list separator for checkout.optimizeNewBranch
57
+ (merged to 'next' on 2018-08-27 at e69bfd115f)
58
+ + checkout: optimize "git checkout -b <new_branch>"
59
52
-* bc/hash-independent-tests (2018-09-13) 12 commits
53
- - t5318: use test_oid for HASH_LEN
54
- - t1407: make hash size independent
55
- - t1406: make hash-size independent
56
- - t1405: make hash size independent
57
- - t1400: switch hard-coded object ID to variable
58
- - t1006: make hash size independent
59
- - t0064: make hash size independent
60
- - t0027: make hash size independent
61
- - t0002: abstract away SHA-1 specific constants
62
- - t0000: update tests for SHA-256
63
- - t0000: use hash translation table
64
- - t: add test functions to translate hash-related values
60
+ "git checkout -b newbranch [HEAD]" should not have to do as much as
61
+ checking out a commit different from HEAD. An attempt is made to
62
+ optimize this special case.
63
66
- Various tests have been updated to make it easier to swap the
67
- hash function used for object identification.
64
69
- Will merge to 'next'.
65
+* cc/delta-islands (2018-08-16) 7 commits
66
+ (merged to 'next' on 2018-08-27 at cf3d7bd93f)
67
+ + pack-objects: move 'layer' into 'struct packing_data'
68
+ + pack-objects: move tree_depth into 'struct packing_data'
69
+ + t5320: tests for delta islands
70
+ + repack: add delta-islands support
71
+ + pack-objects: add delta-islands support
72
+ + pack-objects: refactor code into compute_layer_order()
73
+ + Add delta-islands.{c,h}
74
+
75
+ Lift code from GitHub to restrict delta computation so that an
76
+ object that exists in one fork is not made into a delta against
77
+ another object that does not appear in the same forked repository.
78
+
79
+
80
+* ds/commit-graph-tests (2018-08-29) 1 commit
81
+ (merged to 'next' on 2018-09-14 at d072a0ee3e)
82
+ + commit-graph: define GIT_TEST_COMMIT_GRAPH
83
+
84
+ We can now optionally run tests with commit-graph enabled.
85
+
86
+
87
+* ds/multi-pack-index (2018-08-20) 33 commits
88
+ (merged to 'next' on 2018-08-21 at d15e8cadd4)
89
+ + pack-objects: consider packs in multi-pack-index
90
+ + midx: test a few commands that use get_all_packs
91
+ + treewide: use get_all_packs
92
+ + packfile: add all_packs list
93
+ + midx: fix bug that skips midx with alternates
94
+ + midx: stop reporting garbage
95
+ + midx: mark bad packed objects
96
+ + multi-pack-index: store local property
97
+ + multi-pack-index: provide more helpful usage info
98
+ + Sync 'ds/multi-pack-index' to v2.19.0-rc0
99
+ (merged to 'next' on 2018-08-08 at 1a56c52967)
100
+ + midx: clear midx on repack
101
+ + packfile: skip loading index if in multi-pack-index
102
+ + midx: prevent duplicate packfile loads
103
+ + midx: use midx in approximate_object_count
104
+ + midx: use existing midx when writing new one
105
+ + midx: use midx in abbreviation calculations
106
+ + midx: read objects from multi-pack-index
107
+ + config: create core.multiPackIndex setting
108
+ + midx: write object offsets
109
+ + midx: write object id fanout chunk
110
+ + midx: write object ids in a chunk
111
+ + midx: sort and deduplicate objects from packfiles
112
+ + midx: read pack names into array
113
+ + multi-pack-index: write pack names in chunk
114
+ + multi-pack-index: read packfile list
115
+ + packfile: generalize pack directory list
116
+ + t5319: expand test data
117
+ + multi-pack-index: load into memory
118
+ + midx: write header information to lockfile
119
+ + multi-pack-index: add 'write' verb
120
+ + multi-pack-index: add builtin
121
+ + multi-pack-index: add format details
122
+ + multi-pack-index: add design document
123
+ (this branch is used by ds/multi-pack-verify.)
124
+
125
+ When there are too many packfiles in a repository (which is not
126
+ recommended), looking up an object in these would require
127
+ consulting many pack .idx files; a new mechanism to have a single
128
+ file that consolidates all of these .idx files is introduced.
129
+
130
+
131
+* ds/reachable (2018-08-28) 19 commits
132
+ (merged to 'next' on 2018-08-28 at b1634b371d)
133
+ + commit-reach: correct accidental #include of C file
134
+ (merged to 'next' on 2018-08-22 at 17f3275afb)
135
+ + commit-reach: use can_all_from_reach
136
+ + commit-reach: make can_all_from_reach... linear
137
+ + commit-reach: replace ref_newer logic
138
+ + test-reach: test commit_contains
139
+ + test-reach: test can_all_from_reach_with_flags
140
+ + test-reach: test reduce_heads
141
+ + test-reach: test get_merge_bases_many
142
+ + test-reach: test is_descendant_of
143
+ + test-reach: test in_merge_bases
144
+ + test-reach: create new test tool for ref_newer
145
+ + commit-reach: move can_all_from_reach_with_flags
146
+ + upload-pack: generalize commit date cutoff
147
+ + upload-pack: refactor ok_to_give_up()
148
+ + upload-pack: make reachable() more generic
149
+ + commit-reach: move commit_contains from ref-filter
150
+ + commit-reach: move ref_newer from remote.c
151
+ + commit.h: remove method declarations
152
+ + commit-reach: move walk methods from commit.c
153
154
+ The code for computing history reachability has been shuffled,
155
+ obtained a bunch of new tests to cover them, and then being
156
+ improved.
157
+
158
+
159
+* es/format-patch-interdiff (2018-07-23) 6 commits
160
+ (merged to 'next' on 2018-08-31 at 63927e0227)
161
+ + format-patch: allow --interdiff to apply to a lone-patch
162
+ + log-tree: show_log: make commentary block delimiting reusable
163
+ + interdiff: teach show_interdiff() to indent interdiff
164
+ + format-patch: teach --interdiff to respect -v/--reroll-count
165
+ + format-patch: add --interdiff option to embed diff in cover letter
166
+ + format-patch: allow additional generated content in make_cover_letter()
167
+ (this branch is used by ds/format-patch-range-diff-test and es/format-patch-rangediff.)
168
+
169
+ "git format-patch" learned a new "--interdiff" option to explain
170
+ the difference between this version and the previous atttempt in
171
+ the cover letter (or after the tree-dashes as a comment).
172
+
173
+
174
+* es/format-patch-rangediff (2018-08-14) 10 commits
175
+ (merged to 'next' on 2018-08-31 at 65627afece)
176
+ + format-patch: allow --range-diff to apply to a lone-patch
177
+ + format-patch: add --creation-factor tweak for --range-diff
178
+ + format-patch: teach --range-diff to respect -v/--reroll-count
179
+ + format-patch: extend --range-diff to accept revision range
180
+ + format-patch: add --range-diff option to embed diff in cover letter
181
+ + range-diff: relieve callers of low-level configuration burden
182
+ + range-diff: publish default creation factor
183
+ + range-diff: respect diff_option.file rather than assuming 'stdout'
184
+ + Merge branch 'es/format-patch-interdiff' into es/format-patch-rangediff
185
+ + Merge branch 'js/range-diff' into es/format-patch-rangediff
186
+ (this branch is used by ds/format-patch-range-diff-test; uses es/format-patch-interdiff.)
187
+
188
+ "git format-patch" learned a new "--range-diff" option to explain
189
+ the difference between this version and the previous attempt in
190
+ the cover letter (or after the tree-dashes as a comment).
191
+
192
+
193
+* es/worktree-forced-ops-fix (2018-09-05) 10 commits
194
+ (merged to 'next' on 2018-09-14 at 1a0cc3204d)
195
+ + doc-diff: force worktree add
196
+ + worktree: delete .git/worktrees if empty after 'remove'
197
+ + worktree: teach 'remove' to override lock when --force given twice
198
+ + worktree: teach 'move' to override lock when --force given twice
199
+ + worktree: teach 'add' to respect --force for registered but missing path
200
+ + worktree: disallow adding same path multiple times
201
+ + worktree: prepare for more checks of whether path can become worktree
202
+ + worktree: generalize delete_git_dir() to reduce code duplication
203
+ + worktree: move delete_git_dir() earlier in file for upcoming new callers
204
+ + worktree: don't die() in library function find_worktree()
205
+
206
+ Fix a bug in which the same path could be registered under multiple
207
+ worktree entries if the path was missing (for instance, was removed
208
+ manually). Also, as a convenience, expand the number of cases in
209
+ which --force is applicable.
210
+
211
+
212
+* jk/branch-l-1-repurpose (2018-08-30) 2 commits
213
+ (merged to 'next' on 2018-08-31 at cfa73bbfcb)
214
+ + doc/git-branch: remove obsolete "-l" references
215
+ (merged to 'next' on 2018-08-08 at d2a08dd08e)
216
+ + branch: make "-l" a synonym for "--list"
217
+
218
+ Updated plan to repurpose the "-l" option to "git branch".
219
+
220
+
221
+* jk/cocci (2018-08-29) 9 commits
222
+ (merged to 'next' on 2018-08-31 at 914b4f17ce)
223
+ + show_dirstat: simplify same-content check
224
+ + read-cache: use oideq() in ce_compare functions
225
+ + convert hashmap comparison functions to oideq()
226
+ + convert "hashcmp() != 0" to "!hasheq()"
227
+ + convert "oidcmp() != 0" to "!oideq()"
228
+ + convert "hashcmp() == 0" to hasheq()
229
+ + convert "oidcmp() == 0" to oideq()
230
+ + introduce hasheq() and oideq()
231
+ + coccinelle: use <...> for function exclusion
232
+
233
+ spatch transformation to replace boolean uses of !hashcmp() to
234
+ newly introduced oideq() is added, and applied, to regain
235
+ performance lost due to support of multiple hash algorithms.
236
+
237
+
238
+* jk/diff-rendered-docs (2018-08-31) 5 commits
239
+ (merged to 'next' on 2018-09-14 at 9b43d5a568)
240
+ + doc/Makefile: drop doc-diff worktree and temporary files on "make clean"
241
+ + doc-diff: add --clean mode to remove temporary working gunk
242
+ + doc-diff: fix non-portable 'man' invocation
243
+ + doc-diff: always use oids inside worktree
244
+ (merged to 'next' on 2018-08-22 at dd7a2b71cd)
245
+ + SubmittingPatches: mention doc-diff
246
+
247
+ Dev doc update.
248
+
249
+
250
+* jk/pack-delta-reuse-with-bitmap (2018-08-21) 6 commits
251
+ (merged to 'next' on 2018-08-22 at fc50b59dab)
252
+ + pack-objects: reuse on-disk deltas for thin "have" objects
253
+ + pack-bitmap: save "have" bitmap from walk
254
+ + t/perf: add perf tests for fetches from a bitmapped server
255
+ + t/perf: add infrastructure for measuring sizes
256
+ + t/perf: factor out percent calculations
257
+ + t/perf: factor boilerplate out of test_perf
258
+ (this branch is used by jk/pack-objects-with-bitmap-fix.)
259
+
260
+ When creating a thin pack, which allows objects to be made into a
261
+ delta against another object that is not in the resulting pack but
262
+ is known to be present on the receiving end, the code learned to
263
+ take advantage of the reachability bitmap; this allows the server
264
+ to send a delta against a base beyond the "boundary" commit.
265
+
266
+
267
+* jk/pack-objects-with-bitmap-fix (2018-09-04) 4 commits
268
+ (merged to 'next' on 2018-09-14 at 392eb2abb1)
269
+ + pack-bitmap: drop "loaded" flag
270
+ + traverse_bitmap_commit_list(): don't free result
271
+ + t5310: test delta reuse with bitmaps
272
+ + bitmap_has_sha1_in_uninteresting(): drop BUG check
273
+ (this branch uses jk/pack-delta-reuse-with-bitmap.)
274
+
275
+ Hotfix of the base topic.
276
+
277
+
278
+* jk/patch-corrupted-delta-fix (2018-08-30) 6 commits
279
+ (merged to 'next' on 2018-09-14 at 7517309cb0)
280
+ + t5303: use printf to generate delta bases
281
+ + patch-delta: handle truncated copy parameters
282
+ + patch-delta: consistently report corruption
283
+ + patch-delta: fix oob read
284
+ + t5303: test some corrupt deltas
285
+ + test-delta: read input into a heap buffer
286
+
287
+ Malformed or crafted data in packstream can make our code attempt
288
+ to read or write past the allocated buffer and abort, instead of
289
+ reporting an error, which has been fixed.
290
+
291
+
292
+* jk/rev-list-stdin-noop-is-ok (2018-08-22) 1 commit
293
+ (merged to 'next' on 2018-08-27 at d5916f7bc1)
294
+ + rev-list: make empty --stdin not an error
295
+
296
+ "git rev-list --stdin </dev/null" used to be an error; it now shows
297
+ no output without an error. "git rev-list --stdin --default HEAD"
298
+ still falls back to the given default when nothing is given on the
299
+ standard input.
300
+
301
+
302
+* jk/trailer-fixes (2018-08-23) 8 commits
303
+ (merged to 'next' on 2018-08-27 at 93b671b8c6)
304
+ + append_signoff: use size_t for string offsets
305
+ + sequencer: ignore "---" divider when parsing trailers
306
+ + pretty, ref-filter: format %(trailers) with no_divider option
307
+ + interpret-trailers: allow suppressing "---" divider
308
+ + interpret-trailers: tighten check for "---" patch boundary
309
+ + trailer: pass process_trailer_opts to trailer_info_get()
310
+ + trailer: use size_t for iterating trailer list
311
+ + trailer: use size_t for string offsets
312
+
313
+ "git interpret-trailers" and its underlying machinery had a buggy
314
+ code that attempted to ignore patch text after commit log message,
315
+ which triggered in various codepaths that will always get the log
316
+ message alone and never get such an input.
317
+
318
+
319
+* mk/http-backend-content-length (2018-09-11) 1 commit
320
+ (merged to 'next' on 2018-09-11 at e8095fc635)
321
+ + http-backend test: make empty CONTENT_LENGTH test more realistic
322
+
323
+ Test update.
324
+
325
+
326
+* nd/bisect-show-list-fix (2018-09-04) 1 commit
327
+ (merged to 'next' on 2018-09-14 at 18242da7ef)
328
+ + bisect.c: make show_list() build again
329
+
330
+ Debugging aid update.
331
+
332
+
333
+* nd/clone-case-smashing-warning (2018-08-17) 1 commit
334
+ (merged to 'next' on 2018-08-22 at eedae40a8d)
335
+ + clone: report duplicate entries on case-insensitive filesystems
336
+
337
+ Running "git clone" against a project that contain two files with
338
+ pathnames that differ only in cases on a case insensitive
339
+ filesystem would result in one of the files lost because the
340
+ underlying filesystem is incapable of holding both at the same
341
+ time. An attempt is made to detect such a case and warn.
342
+
343
+
344
+* nd/unpack-trees-with-cache-tree (2018-08-27) 8 commits
345
+ (merged to 'next' on 2018-08-27 at b1d841d034)
346
+ + Document update for nd/unpack-trees-with-cache-tree
347
+ (merged to 'next' on 2018-08-22 at 138b902673)
348
+ + cache-tree: verify valid cache-tree in the test suite
349
+ + unpack-trees: add missing cache invalidation
350
+ + unpack-trees: reuse (still valid) cache-tree from src_index
351
+ + unpack-trees: reduce malloc in cache-tree walk
352
+ + unpack-trees: optimize walking same trees with cache-tree
353
+ + unpack-trees: add performance tracing
354
+ + trace.h: support nested performance tracing
355
+
356
+ The unpack_trees() API used in checking out a branch and merging
357
+ walks one or more trees along with the index. When the cache-tree
358
+ in the index tells us that we are walking a tree whose flattened
359
+ contents is known (i.e. matches a span in the index), as linearly
360
+ scanning a span in the index is much more efficient than having to
361
+ open tree objects recursively and listing their entries, the walk
362
+ can be optimized, which is done in this topic.
363
+
364
+
365
+* rs/mailinfo-format-flowed (2018-08-29) 1 commit
366
+ (merged to 'next' on 2018-08-31 at 9e8b92176c)
367
+ + mailinfo: support format=flowed
368
+
369
+ "git mailinfo" used in "git am" learned to make a best-effort
370
+ recovery of a patch corrupted by MUA that sends text/plain with
371
+ format=flawed option.
372
+
373
+
374
+* sb/range-diff-colors (2018-08-20) 11 commits
375
+ (merged to 'next' on 2018-08-22 at eb7ed4fca3)
376
+ + range-diff: indent special lines as context
377
+ + range-diff: make use of different output indicators
378
+ + diff.c: add --output-indicator-{new, old, context}
379
+ + diff.c: rewrite emit_line_0 more understandably
380
+ + diff.c: omit check for line prefix in emit_line_0
381
+ + diff: use emit_line_0 once per line
382
+ + diff.c: add set_sign to emit_line_0
383
+ + diff.c: reorder arguments for emit_line_ws_markup
384
+ + diff.c: simplify caller of emit_line_0
385
+ + t3206: add color test for range-diff --dual-color
386
+ + test_decode_color: understand FAINT and ITALIC
387
+
388
+ The color output support for recently introduced "range-diff"
389
+ command got tweaked a bit.
390
+
391
+
392
+* sb/submodule-update-in-c (2018-08-14) 7 commits
393
+ (merged to 'next' on 2018-08-17 at 23c81e5ff7)
394
+ + submodule--helper: introduce new update-module-mode helper
395
+ + submodule--helper: replace connect-gitdir-workingtree by ensure-core-worktree
396
+ + builtin/submodule--helper: factor out method to update a single submodule
397
+ + builtin/submodule--helper: store update_clone information in a struct
398
+ + builtin/submodule--helper: factor out submodule updating
399
+ + git-submodule.sh: rename unused variables
400
+ + git-submodule.sh: align error reporting for update mode to use path
401
+
402
+ "git submodule update" is getting rewritten piece-by-piece into C.
403
+
404
+
405
+* sg/doc-trace-appends (2018-09-04) 1 commit
406
+ (merged to 'next' on 2018-09-14 at 6d82abb8bf)
407
+ + Documentation/git.txt: clarify that GIT_TRACE=/path appends
408
+
409
+ Docfix.
410
+
411
+
412
+* sg/t1404-update-ref-test-timeout (2018-08-01) 1 commit
413
+ (merged to 'next' on 2018-08-22 at f3cd37b5ea)
414
+ + t1404: increase core.packedRefsTimeout to avoid occasional test failure
415
+
416
+ An attempt to unflake a test a bit.
417
+
418
+
419
+* tg/conflict-marker-size (2018-08-29) 1 commit
420
+ (merged to 'next' on 2018-08-31 at 12099161f0)
421
+ + .gitattributes: add conflict-marker-size for relevant files
422
72
-* bp/mv-submodules-with-fsmonitor (2018-09-12) 1 commit
73
- - git-mv: allow submodules and fsmonitor to work together
423
+ Developer aid.
424
75
- When fsmonitor is in use, after operation on submodules updates
76
- .gitmodules, we lost track of the fact that we did so and relied on
77
- stale fsmonitor data.
425
79
- Will merge to 'next'.
426
+* tg/rerere (2018-08-06) 11 commits
427
+ (merged to 'next' on 2018-08-17 at 919a958cdc)
428
+ + rerere: recalculate conflict ID when unresolved conflict is committed
429
+ + rerere: teach rerere to handle nested conflicts
430
+ + rerere: return strbuf from handle path
431
+ + rerere: factor out handle_conflict function
432
+ + rerere: only return whether a path has conflicts or not
433
+ + rerere: fix crash with files rerere can't handle
434
+ + rerere: add documentation for conflict normalization
435
+ + rerere: mark strings for translation
436
+ + rerere: wrap paths in output in sq
437
+ + rerere: lowercase error messages
438
+ + rerere: unify error messages when read_cache fails
439
+ (this branch is used by tg/rerere-doc-updates.)
440
441
+ Fixes to "git rerere" corner cases, especially when conflict
442
+ markers cannot be parsed in the file.
443
82
-* bp/read-cache-parallel (2018-09-13) 6 commits
83
- - SQUASH???
84
- - read-cache: clean up casting and byte decoding
85
- - read-cache.c: optimize reading index format v4
86
- - read-cache: load cache entries on worker threads
87
- - read-cache: load cache extensions on a worker thread
88
- - eoie: add End of Index Entry (EOIE) extension
444
90
- A new extension to the index file has been introduced, which allows
91
- the file to be read in parallel.
445
+* tg/rerere-doc-updates (2018-08-29) 2 commits
446
+ (merged to 'next' on 2018-08-31 at ce4fef1a97)
447
+ + rerere: add note about files with existing conflict markers
448
+ + rerere: mention caveat about unmatched conflict markers
449
+ (this branch uses tg/rerere.)
450
93
- Will merge to 'next' after squashing the fix in.
451
+ Clarify a part of technical documentation for rerere.
452
453
96
-* ds/coverage-diff (2018-09-12) 1 commit
97
- - contrib: add coverage-diff script
454
+* ts/doc-build-manpage-xsl-quietly (2018-08-29) 1 commit
455
+ (merged to 'next' on 2018-08-31 at 7527e0f8d3)
456
+ + Documentation/Makefile: make manpage-base-url.xsl generation quieter
457
99
- The result of coverage test can be combined with "git blame" to
100
- check the test coverage of code introduced recently with a new
101
- 'coverage-diff' tool (in contrib/).
458
+ Build tweak.
459
103
- Expecting a reroll.
460
+--------------------------------------------------
461
+[New Topics]
462
463
+* jn/gc-auto-prep (2018-07-17) 2 commits
464
+ - gc: exit with status 128 on failure
465
+ - gc: improve handling of errors reading gc.log
466
+ (this branch is used by jn/gc-auto.)
467
106
-* ds/format-patch-range-diff-test (2018-09-12) 1 commit
107
- - t3206-range-diff.sh: cover single-patch case
108
- (this branch uses es/format-patch-interdiff and es/format-patch-rangediff.)
468
+ Code clean-up.
469
470
Will merge to 'next'.
471
472
113
-* ds/multi-pack-verify (2018-09-13) 11 commits
114
- - fsck: verify multi-pack-index
115
- - multi-pack-index: report progress during 'verify'
116
- - multi-pack-index: verify object offsets
117
- - multi-pack-index: fix 32-bit vs 64-bit size check
118
- - multi-pack-index: verify oid lookup order
119
- - multi-pack-index: verify oid fanout order
120
- - multi-pack-index: verify missing pack
121
- - multi-pack-index: verify packname order
122
- - multi-pack-index: verify corrupt chunk lookup table
123
- - multi-pack-index: verify bad header
124
- - multi-pack-index: add 'verify' verb
125
- (this branch uses ds/multi-pack-index.)
473
+* nd/status-refresh-progress (2018-09-17) 1 commit
474
+ - status: show progress bar if refreshing the index takes too long
475
127
- "git multi-pack-index" learned to detect corruption in the .midx
128
- file it uses, and this feature has been integrated into "git fsck".
476
+ "git status" learns to show progress bar when refreshing the index
477
+ takes a long time.
478
479
Will merge to 'next'.
480
481
133
-* en/sequencer-empty-edit-result-aborts (2018-09-13) 1 commit
134
- - sequencer: fix --allow-empty-message behavior, make it smarter
135
-
136
- "git rebase" etc. in Git 2.19 fails to abort when given an empty
137
- commit log message as result of editing, which has been corrected.
482
+* nd/the-index (2018-09-17) 23 commits
483
+ - revision.c: reduce implicit dependency the_repository
484
+ - revision.c: remove implicit dependency on the_index
485
+ - ws.c: remove implicit dependency on the_index
486
+ - tree-diff.c: remove implicit dependency on the_index
487
+ - submodule.c: remove implicit dependency on the_index
488
+ - line-range.c: remove implicit dependency on the_index
489
+ - userdiff.c: remove implicit dependency on the_index
490
+ - rerere.c: remove implicit dependency on the_index
491
+ - sha1-file.c: remove implicit dependency on the_index
492
+ - patch-ids.c: remove implicit dependency on the_index
493
+ - merge.c: remove implicit dependency on the_index
494
+ - merge-blobs.c: remove implicit dependency on the_index
495
+ - ll-merge.c: remove implicit dependency on the_index
496
+ - diff-lib.c: remove implicit dependency on the_index
497
+ - read-cache.c: remove implicit dependency on the_index
498
+ - diff.c: remove implicit dependency on the_index
499
+ - grep.c: remove implicit dependency on the_index
500
+ - diff.c: remove the_index dependency in textconv() functions
501
+ - blame.c: rename "repo" argument to "r"
502
+ - combine-diff.c: remove implicit dependency on the_index
503
+ - diff.c: reduce implicit dependency on the_index
504
+ - read-cache.c: remove 'const' from index_has_changes()
505
+ - archive.c: remove implicit dependency the_repository
506
+
507
+ Various codepaths in the core-ish part learn to work on an
508
+ arbitrary in-core index structure, not necessarily the default
509
+ instance "the_index".
510
511
Will merge to 'next'.
512
513
+ As expected, this has close to irritating amount of textual conflicts
514
+ with the topics in-flight. Hopefully we can minimize the pain by
515
+ letting it pass through quickly?
516
142
-* en/update-ref-no-deref-stdin (2018-09-12) 2 commits
143
- - update-ref: allow --no-deref with --stdin
144
- - update-ref: fix type of update_flags variable to match its usage
517
146
- "git update-ref" learned to make both "--no-deref" and "--stdin"
147
- work at the same time.
518
+* tq/refs-internal-comment-fix (2018-09-17) 1 commit
519
+ - refs: docstring typo
520
+
521
+ Fix for typo in a sample code in comment.
522
523
Will merge to 'next'.
524
525
152
-* jt/lazy-object-fetch-fix (2018-09-13) 2 commits
153
- - fetch-object: set exact_oid when fetching
154
- - fetch-object: unify fetch_object[s] functions
526
+* ts/alias-of-alias (2018-09-17) 3 commits
527
+ - t0014: introduce an alias testing suite
528
+ - alias: show the call history when an alias is looping
529
+ - alias: add support for aliases of an alias
530
156
- The code to backfill objects in lazily cloned repository did not
157
- work correctly, which has been corrected.
531
+ An alias that expands to another alias has so far been forbidden,
532
+ but now it is allowed to create such an alias.
533
534
Will merge to 'next'.
535
536
162
-* ms/remote-error-message-update (2018-09-14) 1 commit
163
- - builtin/remote: quote remote name on error to display empty name
164
-
165
- Update error messages given by "git remote" and make them consistent.
537
+* ds/reachable-topo-order (2018-09-20) 8 commits
538
+ - revision.c: refactor basic topo-order logic
539
+ - commit/revisions: bookkeeping before refactoring
540
+ - revision.c: begin refactoring --topo-order logic
541
+ - fixup! test-reach: add rev-list tests
542
+ - test-reach: add rev-list tests
543
+ - fixup! test-reach: add run_three_modes method
544
+ - test-reach: add run_three_modes method
545
+ - prio-queue: add 'peek' operation
546
167
- Will merge to 'next'.
547
+ The revision walker machinery learned to take advantage of the
548
+ commit generation numbers stored in the commit-graph file.
549
550
170
-* nd/config-split (2018-09-12) 11 commits
171
- - config.txt: move submodule part out to a separate file
172
- - config.txt: move sequence.editor out of "core" part
173
- - config.txt: move sendemail part out to a separate file
174
- - config.txt: move receive part out to a separate file
175
- - config.txt: move push part out to a separate file
176
- - config.txt: move pull part out to a separate file
177
- - config.txt: move gui part out to a separate file
178
- - config.txt: move gitcvs part out to a separate file
179
- - config.txt: move format part out to a separate file
180
- - config.txt: move fetch part out to a separate file
181
- - config.txt: follow camelCase naming
551
+* en/merge-cleanup (2018-09-20) 4 commits
552
+ - merge-recursive: rename merge_file_1() and merge_content()
553
+ - merge-recursive: remove final remaining caller of merge_file_one()
554
+ - merge-recursive: avoid wrapper function when unnecessary and wasteful
555
+ - merge-recursive: set paths correctly when three-way merging content
556
183
- Split Documentation/config.txt for easier maintenance.
557
+ Code clean-up.
558
559
Will merge to 'next'.
560
561
188
-* sb/submodule-recursive-fetch-gets-the-tip (2018-09-12) 9 commits
189
- - builtin/fetch: check for submodule updates for non branch fetches
190
- - fetch: retry fetching submodules if sha1 were not fetched
191
- - submodule: fetch in submodules git directory instead of in worktree
192
- - submodule.c: do not copy around submodule list
193
- - submodule: move global changed_submodule_names into fetch submodule struct
194
- - submodule.c: sort changed_submodule_names before searching it
195
- - submodule.c: fix indentation
196
- - sha1-array: provide oid_array_filter
197
- - string-list: add string_list_{pop, last} functions
562
+* jk/delta-islands-with-bitmap-reuse-delta-fix (2018-09-19) 1 commit
563
+ - pack-objects: handle island check for "external" delta base
564
199
- "git fetch --recurse-submodules" may not fetch the necessary commit
200
- that is bound to the superproject, which is getting corrected.
565
+ Fix interactions between two recent topics.
566
202
- Expecting a reroll.
203
- cf. <CAGZ79kbavjVbTqXsmtjW6=jhkq47_p3mc6=92xOp4_mfhqDtvw@mail.gmail.com>
204
- cf. <b16af8c0-0435-0de4-ed6c-53888d6190af@ramsayjones.plus.com>
205
- cf. <CAGZ79kZKKf9N8yx9EuCRZhrZS_mA2218PouEG7aHDhK2bJGEdA@mail.gmail.com>
567
+ Will merge to 'next'.
568
569
208
-* sg/split-index-test (2018-09-12) 2 commits
209
- - t0090: disable GIT_TEST_SPLIT_INDEX for the test checking split index
210
- - t1700-split-index: drop unnecessary 'grep'
570
+* jn/mailmap-update (2018-09-19) 1 commit
571
+ - mailmap: consistently normalize brian m. carlson's name
572
212
- Test updates.
573
+ The mailmap file update.
574
575
Will merge to 'next'.
576
577
217
-* tb/void-check-attr (2018-09-12) 1 commit
218
- - Make git_check_attr() a void function
578
+* ma/config-doc-update (2018-09-20) 2 commits
579
+ - git-config.txt: fix 'see: above' note
580
+ - Doc: use `--type=bool` instead of `--bool`
581
220
- Code clean-up.
582
+ Doc update.
583
584
Will merge to 'next'.
585
586
225
-* tg/range-diff-corner-case-fix (2018-09-14) 1 commit
226
- - linear-assignment: fix potential out of bounds memory access
587
+* nd/attr-pathspec-fix (2018-09-20) 2 commits
588
+ - fixup! add: do not accept pathspec magic 'attr'
589
+ - add: do not accept pathspec magic 'attr'
590
228
- Recently added "range-diff" had a corner-case bug to cause it
229
- segfault, which has been corrected.
591
+ "git add ':(attr:foo)'" is not supported and is supposed to be
592
+ rejected while the command line arguments are parsed, but we fail
593
+ to reject such a command line upfront.
594
595
Will merge to 'next'.
596
597
234
-* bp/rename-test-env-var (2018-09-14) 5 commits
235
- - preload-index: update GIT_FORCE_PRELOAD_TEST support
236
- - read-cache: update TEST_GIT_INDEX_VERSION support
237
- - fsmonitor: update GIT_TEST_FSMONITOR support
238
- - preload-index: teach GIT_FORCE_PRELOAD_TEST to take a boolean
239
- - correct typo/spelling error in t/README
598
+* rj/header-check (2018-09-20) 8 commits
599
+ - delta-islands.h: add missing forward declarations (hdr-check)
600
+ - midx.h: add missing forward declarations (hdr-check)
601
+ - refs/refs-internal.h: add missing declarations (hdr-check)
602
+ - refs/packed-backend.h: add missing declaration (hdr-check)
603
+ - refs/ref-cache.h: add missing declarations (hdr-check)
604
+ - ewah/ewok_rlw.h: add missing include (hdr-check)
605
+ - json-writer.h: add missing include (hdr-check)
606
+ - Makefile: add a hdr-check target
607
241
- Some environment variables that control the runtime options of Git
242
- used during tests are getting renamed for consistency.
608
+ Header files clean-up.
609
610
Will merge to 'next'.
611
@@ -358,113 +724,340 @@ of the repositories listed at
724
--------------------------------------------------
725
[Cooking]
726
361
-* ab/commit-graph-progress (2018-09-11) 2 commits
362
- - commit-graph verify: add progress output
363
- - commit-graph write: add progress output
727
+* ab/fsck-skiplist (2018-09-12) 10 commits
728
+ (merged to 'next' on 2018-09-17 at dc9094ba9b)
729
+ + fsck: support comments & empty lines in skipList
730
+ + fsck: use oidset instead of oid_array for skipList
731
+ + fsck: use strbuf_getline() to read skiplist file
732
+ + fsck: add a performance test for skipList
733
+ + fsck: add a performance test
734
+ + fsck: document that skipList input must be unabbreviated
735
+ + fsck: document and test commented & empty line skipList input
736
+ + fsck: document and test sorted skipList input
737
+ + fsck tests: add a test for no skipList input
738
+ + fsck tests: setup of bogus commit object
739
+
740
+ Update fsck.skipList implementation and documentation.
741
+
742
+ Will merge to 'master'.
743
+
744
+
745
+* bc/hash-independent-tests (2018-09-17) 11 commits
746
+ (merged to 'next' on 2018-09-17 at 9e94794d05)
747
+ + t5318: use test_oid for HASH_LEN
748
+ + t1407: make hash size independent
749
+ + t1406: make hash-size independent
750
+ + t1405: make hash size independent
751
+ + t1400: switch hard-coded object ID to variable
752
+ + t1006: make hash size independent
753
+ + t0064: make hash size independent
754
+ + t0002: abstract away SHA-1 specific constants
755
+ + t0000: update tests for SHA-256
756
+ + t0000: use hash translation table
757
+ + t: add test functions to translate hash-related values
758
+
759
+ Various tests have been updated to make it easier to swap the
760
+ hash function used for object identification.
761
+
762
+ Will merge to 'master'.
763
+
764
+
765
+* bp/mv-submodules-with-fsmonitor (2018-09-12) 1 commit
766
+ (merged to 'next' on 2018-09-17 at 61c3dc4ebe)
767
+ + git-mv: allow submodules and fsmonitor to work together
768
+
769
+ When fsmonitor is in use, after operation on submodules updates
770
+ .gitmodules, we lost track of the fact that we did so and relied on
771
+ stale fsmonitor data.
772
+
773
+ Will merge to 'master'.
774
+
775
+
776
+* bp/read-cache-parallel (2018-09-17) 5 commits
777
+ - read-cache: clean up casting and byte decoding
778
+ - read-cache.c: optimize reading index format v4
779
+ - read-cache: load cache entries on worker threads
780
+ - read-cache: load cache extensions on a worker thread
781
+ - eoie: add End of Index Entry (EOIE) extension
782
+
783
+ A new extension to the index file has been introduced, which allows
784
+ the file to be read in parallel.
785
+
786
+ Expecting a reroll.
787
+ cf. <78f62979-18a7-2fc1-6f26-c4f84e19424f@gmail.com>
788
+
789
+
790
+* ds/coverage-diff (2018-09-12) 1 commit
791
+ - contrib: add coverage-diff script
792
+
793
+ The result of coverage test can be combined with "git blame" to
794
+ check the test coverage of code introduced recently with a new
795
+ 'coverage-diff' tool (in contrib/).
796
+
797
+ Expecting a reroll.
798
+
799
+
800
+* ds/format-patch-range-diff-test (2018-09-12) 1 commit
801
+ (merged to 'next' on 2018-09-17 at bd99e0e88c)
802
+ + t3206-range-diff.sh: cover single-patch case
803
+
804
+ Will merge to 'master'.
805
+
806
+
807
+* ds/multi-pack-verify (2018-09-17) 11 commits
808
+ (merged to 'next' on 2018-09-17 at f27244f302)
809
+ + fsck: verify multi-pack-index
810
+ + multi-pack-index: report progress during 'verify'
811
+ + multi-pack-index: verify object offsets
812
+ + multi-pack-index: fix 32-bit vs 64-bit size check
813
+ + multi-pack-index: verify oid lookup order
814
+ + multi-pack-index: verify oid fanout order
815
+ + multi-pack-index: verify missing pack
816
+ + multi-pack-index: verify packname order
817
+ + multi-pack-index: verify corrupt chunk lookup table
818
+ + multi-pack-index: verify bad header
819
+ + multi-pack-index: add 'verify' verb
820
+
821
+ "git multi-pack-index" learned to detect corruption in the .midx
822
+ file it uses, and this feature has been integrated into "git fsck".
823
+
824
+ Will merge to 'master'.
825
+
826
+
827
+* en/sequencer-empty-edit-result-aborts (2018-09-13) 1 commit
828
+ (merged to 'next' on 2018-09-17 at 768dcf3cab)
829
+ + sequencer: fix --allow-empty-message behavior, make it smarter
830
+
831
+ "git rebase" etc. in Git 2.19 fails to abort when given an empty
832
+ commit log message as result of editing, which has been corrected.
833
+
834
+ Will merge to 'master'.
835
+
836
+
837
+* en/update-ref-no-deref-stdin (2018-09-12) 2 commits
838
+ (merged to 'next' on 2018-09-17 at a56c0a3003)
839
+ + update-ref: allow --no-deref with --stdin
840
+ + update-ref: fix type of update_flags variable to match its usage
841
+
842
+ "git update-ref" learned to make both "--no-deref" and "--stdin"
843
+ work at the same time.
844
+
845
+ Will merge to 'master'.
846
+
847
+
848
+* jt/lazy-object-fetch-fix (2018-09-13) 2 commits
849
+ (merged to 'next' on 2018-09-17 at 321602b284)
850
+ + fetch-object: set exact_oid when fetching
851
+ + fetch-object: unify fetch_object[s] functions
852
+
853
+ The code to backfill objects in lazily cloned repository did not
854
+ work correctly, which has been corrected.
855
+
856
+ Will merge to 'master'.
857
+
858
+
859
+* ms/remote-error-message-update (2018-09-14) 1 commit
860
+ (merged to 'next' on 2018-09-17 at d37a215b62)
861
+ + builtin/remote: quote remote name on error to display empty name
862
+
863
+ Update error messages given by "git remote" and make them consistent.
864
+
865
+ Will merge to 'master'.
866
+
867
+
868
+* nd/config-split (2018-09-12) 11 commits
869
+ (merged to 'next' on 2018-09-17 at 33e6cb8f48)
870
+ + config.txt: move submodule part out to a separate file
871
+ + config.txt: move sequence.editor out of "core" part
872
+ + config.txt: move sendemail part out to a separate file
873
+ + config.txt: move receive part out to a separate file
874
+ + config.txt: move push part out to a separate file
875
+ + config.txt: move pull part out to a separate file
876
+ + config.txt: move gui part out to a separate file
877
+ + config.txt: move gitcvs part out to a separate file
878
+ + config.txt: move format part out to a separate file
879
+ + config.txt: move fetch part out to a separate file
880
+ + config.txt: follow camelCase naming
881
+
882
+ Split Documentation/config.txt for easier maintenance.
883
+
884
+ Will merge to 'master'.
885
+
886
+
887
+* sb/submodule-recursive-fetch-gets-the-tip (2018-09-12) 9 commits
888
+ - builtin/fetch: check for submodule updates for non branch fetches
889
+ - fetch: retry fetching submodules if sha1 were not fetched
890
+ - submodule: fetch in submodules git directory instead of in worktree
891
+ - submodule.c: do not copy around submodule list
892
+ - submodule: move global changed_submodule_names into fetch submodule struct
893
+ - submodule.c: sort changed_submodule_names before searching it
894
+ - submodule.c: fix indentation
895
+ - sha1-array: provide oid_array_filter
896
+ - string-list: add string_list_{pop, last} functions
897
+
898
+ "git fetch --recurse-submodules" may not fetch the necessary commit
899
+ that is bound to the superproject, which is getting corrected.
900
+
901
+ Expecting a reroll.
902
+ cf. <CAGZ79kbavjVbTqXsmtjW6=jhkq47_p3mc6=92xOp4_mfhqDtvw@mail.gmail.com>
903
+ cf. <b16af8c0-0435-0de4-ed6c-53888d6190af@ramsayjones.plus.com>
904
+ cf. <CAGZ79kZKKf9N8yx9EuCRZhrZS_mA2218PouEG7aHDhK2bJGEdA@mail.gmail.com>
905
+
906
+
907
+* sg/split-index-test (2018-09-12) 2 commits
908
+ (merged to 'next' on 2018-09-17 at aed95d1bb5)
909
+ + t0090: disable GIT_TEST_SPLIT_INDEX for the test checking split index
910
+ + t1700-split-index: drop unnecessary 'grep'
911
+
912
+ Test updates.
913
+
914
+ Will merge to 'master'.
915
+
916
+
917
+* tb/void-check-attr (2018-09-12) 1 commit
918
+ (merged to 'next' on 2018-09-17 at 92f5473ff4)
919
+ + Make git_check_attr() a void function
920
+
921
+ Code clean-up.
922
+
923
+ Will merge to 'master'.
924
+
925
+
926
+* tg/range-diff-corner-case-fix (2018-09-14) 1 commit
927
+ (merged to 'next' on 2018-09-17 at b5cf2541e7)
928
+ + linear-assignment: fix potential out of bounds memory access
929
+
930
+ Recently added "range-diff" had a corner-case bug to cause it
931
+ segfault, which has been corrected.
932
+
933
+ Will merge to 'master'.
934
+
935
+
936
+* bp/rename-test-env-var (2018-09-20) 6 commits
937
+ - t0000: do not get self-test disrupted by environment warnings
938
+ - preload-index: update GIT_FORCE_PRELOAD_TEST support
939
+ - read-cache: update TEST_GIT_INDEX_VERSION support
940
+ - fsmonitor: update GIT_TEST_FSMONITOR support
941
+ - preload-index: use git_env_bool() not getenv() for customization
942
+ - t/README: correct spelling of "uncommon"
943
+
944
+ Some environment variables that control the runtime options of Git
945
+ used during tests are getting renamed for consistency.
946
+
947
+ Waiting for review of the fix-up at the tip.
948
+
949
+
950
+* ab/commit-graph-progress (2018-09-20) 3 commits
951
+ (merged to 'next' on 2018-09-20 at 24ca94b1d4)
952
+ + gc: fix regression in 7b0f229222 impacting --quiet
953
+ (merged to 'next' on 2018-09-17 at 6f82c695e4)
954
+ + commit-graph verify: add progress output
955
+ + commit-graph write: add progress output
956
957
Generation of (expermental) commit-graph files have so far been
958
fairly silent, even though it takes noticeable amount of time in a
959
meaningfully large repository. The users will now see progress
960
output.
961
370
- Will merge to 'next'.
962
+ Will merge to 'master'.
963
964
965
* bw/protocol-v2 (2018-09-10) 1 commit
374
- - config: document value 2 for protocol.version
966
+ (merged to 'next' on 2018-09-17 at 973a67bf55)
967
+ + config: document value 2 for protocol.version
968
969
Doc fix.
970
378
- Will merge to 'next'.
971
+ Will merge to 'master'.
972
973
974
* en/double-semicolon-fix (2018-09-05) 1 commit
382
- - Remove superfluous trailing semicolons
975
+ (merged to 'next' on 2018-09-17 at dc3847b728)
976
+ + Remove superfluous trailing semicolons
977
978
Code clean-up.
979
386
- Will merge to 'next'.
980
+ Will merge to 'master'.
981
982
983
* en/rerere-multi-stage-1-fix (2018-09-11) 2 commits
390
- - rerere: avoid buffer overrun
391
- - t4200: demonstrate rerere segfault on specially crafted merge
984
+ (merged to 'next' on 2018-09-17 at 07b9b319ab)
985
+ + rerere: avoid buffer overrun
986
+ + t4200: demonstrate rerere segfault on specially crafted merge
987
988
A corner case bugfix in "git rerere" code.
989
395
- Will merge to 'next'.
990
+ Will merge to 'master'.
991
992
993
* jk/dev-build-format-security (2018-09-11) 1 commit
399
- - config.mak.dev: add -Wformat-security
994
+ (merged to 'next' on 2018-09-17 at 36fbb6a88b)
995
+ + config.mak.dev: add -Wformat-security
996
997
Build tweak to help developers.
998
403
- Will merge to 'next'.
999
+ Will merge to 'master'.
1000
1001
1002
* jk/reopen-tempfile-truncate (2018-09-05) 1 commit
407
- - reopen_tempfile(): truncate opened file
1003
+ (merged to 'next' on 2018-09-17 at 7c7a0608e0)
1004
+ + reopen_tempfile(): truncate opened file
1005
1006
Fix for a long-standing bug that leaves the index file corrupt when
1007
it shrinks during a partial commit.
1008
412
- Will merge to 'next'.
1009
+ Will merge to 'master'.
1010
1011
1012
* js/mingw-o-append (2018-09-11) 2 commits
416
- - mingw: fix mingw_open_append to work with named pipes
417
- - t0051: test GIT_TRACE to a windows named pipe
1013
+ (merged to 'next' on 2018-09-17 at 5b6e9be48e)
1014
+ + mingw: fix mingw_open_append to work with named pipes
1015
+ + t0051: test GIT_TRACE to a windows named pipe
1016
1017
Further fix for O_APPEND emulation on Windows
1018
421
- Will merge to 'next'.
422
-
423
-
424
-* mk/http-backend-content-length (2018-09-11) 1 commit
425
- (merged to 'next' on 2018-09-11 at e8095fc635)
426
- + http-backend test: make empty CONTENT_LENGTH test more realistic
427
-
428
- Test update.
429
-
1019
Will merge to 'master'.
1020
1021
1022
* nd/test-tool (2018-09-11) 6 commits
434
- - Makefile: add a hint about TEST_BUILTINS_OBJS
435
- - t/helper: merge test-dump-fsmonitor into test-tool
436
- - t/helper: merge test-parse-options into test-tool
437
- - t/helper: merge test-pkt-line into test-tool
438
- - t/helper: merge test-dump-untracked-cache into test-tool
439
- - t/helper: keep test-tool command list sorted
1023
+ (merged to 'next' on 2018-09-17 at decbf86eeb)
1024
+ + Makefile: add a hint about TEST_BUILTINS_OBJS
1025
+ + t/helper: merge test-dump-fsmonitor into test-tool
1026
+ + t/helper: merge test-parse-options into test-tool
1027
+ + t/helper: merge test-pkt-line into test-tool
1028
+ + t/helper: merge test-dump-untracked-cache into test-tool
1029
+ + t/helper: keep test-tool command list sorted
1030
1031
Test helper binaries clean-up.
1032
443
- Will merge to 'next'.
1033
+ Will merge to 'master'.
1034
1035
1036
* sb/diff-color-move-more (2018-09-11) 1 commit
447
- - diff: fix --color-moved-ws=allow-indentation-change
1037
+ (merged to 'next' on 2018-09-17 at 70c8d0fea8)
1038
+ + diff: fix --color-moved-ws=allow-indentation-change
1039
1040
Bugfix.
1041
451
- Will merge to 'next'.
1042
+ Will merge to 'master'.
1043
1044
1045
* sb/string-list-remove-unused (2018-09-11) 1 commit
455
- - string-list: remove unused function print_string_list
1046
+ (merged to 'next' on 2018-09-17 at 9ecdec31d9)
1047
+ + string-list: remove unused function print_string_list
1048
1049
Code clean-up.
1050
459
- Will merge to 'next'.
1051
+ Will merge to 'master'.
1052
1053
1054
* sg/t3701-tighten-trace (2018-09-11) 1 commit
463
- - t3701-add-interactive: tighten the check of trace output
1055
+ (merged to 'next' on 2018-09-17 at a3ed2d4df1)
1056
+ + t3701-add-interactive: tighten the check of trace output
1057
1058
Test update.
1059
467
- Will merge to 'next'.
1060
+ Will merge to 'master'.
1061
1062
1063
* ss/wt-status-committable (2018-09-07) 4 commits
@@ -484,115 +1077,27 @@ of the repositories listed at
1077
- WIP: roll wt_status_state into wt_status and populate in the collect phase
1078
(this branch uses ss/wt-status-committable.)
1079
1080
+
1081
1082
489
-* tz/t5551-with-curl-7.61.1 (2018-09-11) 1 commit
490
- - t5551-http-fetch-smart.sh: sort cookies before comparing
1083
+* tz/t5551-with-curl-7.61.1 (2018-09-17) 1 commit
1084
+ (merged to 'next' on 2018-09-17 at a13e27d99e)
1085
+ + t5551-http-fetch-smart.sh: sort cookies before comparing
1086
1087
Test fix.
1088
494
- Will merge to 'next'.
495
-
496
-
497
-* ab/fetch-tags-noclobber (2018-08-31) 9 commits
498
- (merged to 'next' on 2018-09-14 at 0384a7a8b4)
499
- + fetch: stop clobbering existing tags without --force
500
- + fetch: document local ref updates with/without --force
501
- + push doc: correct lies about how push refspecs work
502
- + push doc: move mention of "tag <tag>" later in the prose
503
- + push doc: remove confusing mention of remote merger
504
- + fetch tests: add a test for clobbering tag behavior
505
- + push tests: use spaces in interpolated string
506
- + push tests: make use of unused $1 in test description
507
- + fetch: change "branch" to "reference" in --force -h output
508
-
509
- The rules used by "git push" and "git fetch" to determine if a ref
510
- can or cannot be updated were inconsistent; specifically, fetching
511
- to update existing tags were allowed even though tags are supposed
512
- to be unmoving anchoring points. "git fetch" was taught to forbid
513
- updates to existing tags without the "--force" option.
514
-
515
- Will merge to 'master'.
516
- This is a backward incompatible change but in a good way; it may
517
- still need to be treated carefully.
518
-
519
-
520
-* es/worktree-forced-ops-fix (2018-09-05) 10 commits
521
- (merged to 'next' on 2018-09-14 at 1a0cc3204d)
522
- + doc-diff: force worktree add
523
- + worktree: delete .git/worktrees if empty after 'remove'
524
- + worktree: teach 'remove' to override lock when --force given twice
525
- + worktree: teach 'move' to override lock when --force given twice
526
- + worktree: teach 'add' to respect --force for registered but missing path
527
- + worktree: disallow adding same path multiple times
528
- + worktree: prepare for more checks of whether path can become worktree
529
- + worktree: generalize delete_git_dir() to reduce code duplication
530
- + worktree: move delete_git_dir() earlier in file for upcoming new callers
531
- + worktree: don't die() in library function find_worktree()
532
-
533
- Fix a bug in which the same path could be registered under multiple
534
- worktree entries if the path was missing (for instance, was removed
535
- manually). Also, as a convenience, expand the number of cases in
536
- which --force is applicable.
537
-
538
- Will merge to 'master'.
539
-
540
-
541
-* jk/patch-corrupted-delta-fix (2018-08-30) 6 commits
542
- (merged to 'next' on 2018-09-14 at 7517309cb0)
543
- + t5303: use printf to generate delta bases
544
- + patch-delta: handle truncated copy parameters
545
- + patch-delta: consistently report corruption
546
- + patch-delta: fix oob read
547
- + t5303: test some corrupt deltas
548
- + test-delta: read input into a heap buffer
549
-
550
- Malformed or crafted data in packstream can make our code attempt
551
- to read or write past the allocated buffer and abort, instead of
552
- reporting an error, which has been fixed.
553
-
554
- Will merge to 'master'.
555
-
556
-
557
-* jk/pack-objects-with-bitmap-fix (2018-09-04) 4 commits
558
- (merged to 'next' on 2018-09-14 at 392eb2abb1)
559
- + pack-bitmap: drop "loaded" flag
560
- + traverse_bitmap_commit_list(): don't free result
561
- + t5310: test delta reuse with bitmaps
562
- + bitmap_has_sha1_in_uninteresting(): drop BUG check
563
- (this branch uses jk/pack-delta-reuse-with-bitmap.)
564
-
565
- Hotfix of the base topic.
566
-
1089
Will merge to 'master'.
1090
1091
1092
* js/rebase-i-autosquash-fix (2018-09-04) 2 commits
571
- - rebase -i: be careful to wrap up fixup/squash chains
572
- - rebase -i --autosquash: demonstrate a problem skipping the last squash
1093
+ (merged to 'next' on 2018-09-17 at cec540d24b)
1094
+ + rebase -i: be careful to wrap up fixup/squash chains
1095
+ + rebase -i --autosquash: demonstrate a problem skipping the last squash
1096
1097
"git rebase -i" did not clear the state files correctly when a run
1098
of "squash/fixup" is aborted and then the user manually amended the
1099
commit instead, which has been corrected.
1100
578
- Will merge to 'next'.
579
-
580
-
581
-* nd/bisect-show-list-fix (2018-09-04) 1 commit
582
- (merged to 'next' on 2018-09-14 at 18242da7ef)
583
- + bisect.c: make show_list() build again
584
-
585
- Debugging aid update.
586
-
587
- Will merge to 'master'.
588
-
589
-
590
-* sg/doc-trace-appends (2018-09-04) 1 commit
591
- (merged to 'next' on 2018-09-14 at 6d82abb8bf)
592
- + Documentation/git.txt: clarify that GIT_TRACE=/path appends
593
-
594
- Docfix.
595
-
1101
Will merge to 'master'.
1102
1103
@@ -608,51 +1113,6 @@ of the repositories listed at
1113
output over the text source. Opinions?
1114
1115
611
-* jk/diff-rendered-docs (2018-08-31) 5 commits
612
- (merged to 'next' on 2018-09-14 at 9b43d5a568)
613
- + doc/Makefile: drop doc-diff worktree and temporary files on "make clean"
614
- + doc-diff: add --clean mode to remove temporary working gunk
615
- + doc-diff: fix non-portable 'man' invocation
616
- + doc-diff: always use oids inside worktree
617
- (merged to 'next' on 2018-08-22 at dd7a2b71cd)
618
- + SubmittingPatches: mention doc-diff
619
-
620
- Dev doc update.
621
-
622
- Will merge to 'master'.
623
-
624
-
625
-* jk/pack-delta-reuse-with-bitmap (2018-08-21) 6 commits
626
- (merged to 'next' on 2018-08-22 at fc50b59dab)
627
- + pack-objects: reuse on-disk deltas for thin "have" objects
628
- + pack-bitmap: save "have" bitmap from walk
629
- + t/perf: add perf tests for fetches from a bitmapped server
630
- + t/perf: add infrastructure for measuring sizes
631
- + t/perf: factor out percent calculations
632
- + t/perf: factor boilerplate out of test_perf
633
- (this branch is used by jk/pack-objects-with-bitmap-fix.)
634
-
635
- When creating a thin pack, which allows objects to be made into a
636
- delta against another object that is not in the resulting pack but
637
- is known to be present on the receiving end, the code learned to
638
- take advantage of the reachability bitmap; this allows the server
639
- to send a delta against a base beyond the "boundary" commit.
640
-
641
- Will merge to 'master'.
642
-
643
-
644
-* jk/rev-list-stdin-noop-is-ok (2018-08-22) 1 commit
645
- (merged to 'next' on 2018-08-27 at d5916f7bc1)
646
- + rev-list: make empty --stdin not an error
647
-
648
- "git rev-list --stdin </dev/null" used to be an error; it now shows
649
- no output without an error. "git rev-list --stdin --default HEAD"
650
- still falls back to the given default when nothing is given on the
651
- standard input.
652
-
653
- Will merge to 'master'.
654
-
655
-
1116
* js/rebase-in-c-5.5-work-with-rebase-i-in-c (2018-09-06) 2 commits
1117
- builtin rebase: prepare for builtin rebase -i
1118
- Merge branch 'ag/rebase-i-in-c' into js/rebase-in-c-5.5-work-with-rebase-i-in-c
@@ -663,120 +1123,24 @@ of the repositories listed at
1123
between two GSoC topics that stomped on each other's toes.
1124
1125
666
-* jk/trailer-fixes (2018-08-23) 8 commits
667
- (merged to 'next' on 2018-08-27 at 93b671b8c6)
668
- + append_signoff: use size_t for string offsets
669
- + sequencer: ignore "---" divider when parsing trailers
670
- + pretty, ref-filter: format %(trailers) with no_divider option
671
- + interpret-trailers: allow suppressing "---" divider
672
- + interpret-trailers: tighten check for "---" patch boundary
673
- + trailer: pass process_trailer_opts to trailer_info_get()
674
- + trailer: use size_t for iterating trailer list
675
- + trailer: use size_t for string offsets
676
-
677
- "git interpret-trailers" and its underlying machinery had a buggy
678
- code that attempted to ignore patch text after commit log message,
679
- which triggered in various codepaths that will always get the log
680
- message alone and never get such an input.
681
-
682
- Will merge to 'master'.
683
-
684
-
685
-* tg/rerere-doc-updates (2018-08-29) 2 commits
686
- (merged to 'next' on 2018-08-31 at ce4fef1a97)
687
- + rerere: add note about files with existing conflict markers
688
- + rerere: mention caveat about unmatched conflict markers
689
- (this branch uses tg/rerere.)
690
-
691
- Clarify a part of technical documentation for rerere.
692
-
693
- Will merge to 'master'.
694
-
695
-
696
-* ds/commit-graph-tests (2018-08-29) 1 commit
697
- (merged to 'next' on 2018-09-14 at d072a0ee3e)
698
- + commit-graph: define GIT_TEST_COMMIT_GRAPH
699
-
700
- We can now optionally run tests with commit-graph enabled.
701
-
702
- Will merge to 'master'.
703
-
704
-
705
-* jk/cocci (2018-08-29) 9 commits
706
- (merged to 'next' on 2018-08-31 at 914b4f17ce)
707
- + show_dirstat: simplify same-content check
708
- + read-cache: use oideq() in ce_compare functions
709
- + convert hashmap comparison functions to oideq()
710
- + convert "hashcmp() != 0" to "!hasheq()"
711
- + convert "oidcmp() != 0" to "!oideq()"
712
- + convert "hashcmp() == 0" to hasheq()
713
- + convert "oidcmp() == 0" to oideq()
714
- + introduce hasheq() and oideq()
715
- + coccinelle: use <...> for function exclusion
716
-
717
- spatch transformation to replace boolean uses of !hashcmp() to
718
- newly introduced oideq() is added, and applied, to regain
719
- performance lost due to support of multiple hash algorithms.
720
-
721
- Will merge to 'master'.
722
-
723
-
1126
* js/add-i-coalesce-after-editing-hunk (2018-08-28) 1 commit
1127
- add -p: coalesce hunks before testing applicability
1128
727
- Applicability check after a patch is edited in a "git add -i/p"
728
- session has been improved.
729
-
730
- Will hold.
731
- cf. <e5b2900a-0558-d3bf-8ea1-d526b078bbc2@talktalk.net>
732
-
733
-
734
-* rs/mailinfo-format-flowed (2018-08-29) 1 commit
735
- (merged to 'next' on 2018-08-31 at 9e8b92176c)
736
- + mailinfo: support format=flowed
737
-
738
- "git mailinfo" used in "git am" learned to make a best-effort
739
- recovery of a patch corrupted by MUA that sends text/plain with
740
- format=flawed option.
741
-
742
- Will merge to 'master'.
743
-
744
-
745
-* tg/conflict-marker-size (2018-08-29) 1 commit
746
- (merged to 'next' on 2018-08-31 at 12099161f0)
747
- + .gitattributes: add conflict-marker-size for relevant files
748
-
749
- Developer aid.
750
-
751
- Will merge to 'master'.
752
-
753
-
754
-* ts/doc-build-manpage-xsl-quietly (2018-08-29) 1 commit
755
- (merged to 'next' on 2018-08-31 at 7527e0f8d3)
756
- + Documentation/Makefile: make manpage-base-url.xsl generation quieter
757
-
758
- Build tweak.
759
-
760
- Will merge to 'master'.
761
-
762
-
763
-* bp/checkout-new-branch-optim (2018-08-16) 1 commit
764
- (merged to 'next' on 2018-08-27 at e69bfd115f)
765
- + checkout: optimize "git checkout -b <new_branch>"
766
-
767
- "git checkout -b newbranch [HEAD]" should not have to do as much as
768
- checking out a commit different from HEAD. An attempt is made to
769
- optimize this special case.
770
-
771
- Will merge to 'master'.
1129
+ Applicability check after a patch is edited in a "git add -i/p"
1130
+ session has been improved.
1131
+
1132
+ Will hold.
1133
+ cf. <e5b2900a-0558-d3bf-8ea1-d526b078bbc2@talktalk.net>
1134
1135
774
-* ao/submodule-wo-gitmodules-checked-out (2018-08-14) 7 commits
775
- - submodule: support reading .gitmodules even when it's not checked out
1136
+* ao/submodule-wo-gitmodules-checked-out (2018-09-17) 9 commits
1137
+ - submodule: support reading .gitmodules when it's not in the working tree
1138
+ - submodule: add a helper to check if it is safe to write to .gitmodules
1139
- t7506: clean up .gitmodules properly before setting up new scenario
1140
- submodule: use the 'submodule--helper config' command
1141
- submodule--helper: add a new 'config' subcommand
1142
- t7411: be nicer to future tests and really clean things up
1143
+ - t7411: merge tests 5 and 6
1144
- submodule: factor out a config_set_in_gitmodules_file_gently function
1145
- submodule: add a print_config_from_gitmodules() helper
1146
@@ -784,43 +1148,25 @@ of the repositories listed at
1148
HEAD:.gitmodules when the .gitmodules file is missing from the
1149
working tree.
1150
787
- Expecting a reroll.
788
-
789
- I find the design a bit iffy in that our usual "missing in the
790
- working tree? let's use the latest blob" fallback is to take it
791
- from the index, not from the HEAD.
792
-
793
-
794
-* cc/delta-islands (2018-08-16) 7 commits
795
- (merged to 'next' on 2018-08-27 at cf3d7bd93f)
796
- + pack-objects: move 'layer' into 'struct packing_data'
797
- + pack-objects: move tree_depth into 'struct packing_data'
798
- + t5320: tests for delta islands
799
- + repack: add delta-islands support
800
- + pack-objects: add delta-islands support
801
- + pack-objects: refactor code into compute_layer_order()
802
- + Add delta-islands.{c,h}
803
-
804
- Lift code from GitHub to restrict delta computation so that an
805
- object that exists in one fork is not made into a delta against
806
- another object that does not appear in the same forked repository.
807
-
808
- Will merge to 'master'.
1151
+ Object-store access needs to be protected from multi-threading.
1152
+ cf. <20180918171257.GC27036@localhost>
1153
+ cf. <20180920173552.6109014827a062dcf3821632@ao2.it>
1154
1155
1156
* md/filter-trees (2018-09-14) 7 commits
812
- - list-objects-filter: implement filter tree:0
813
- - list-objects-filter: use BUG rather than die
814
- - revision: mark non-user-given objects instead
815
- - rev-list: handle missing tree objects properly
816
- - list-objects: always parse trees gently
817
- - list-objects: refactor to process_tree_contents
818
- - list-objects: store common func args in struct
1157
+ (merged to 'next' on 2018-09-17 at ad07a3ebcf)
1158
+ + list-objects-filter: implement filter tree:0
1159
+ + list-objects-filter: use BUG rather than die
1160
+ + revision: mark non-user-given objects instead
1161
+ + rev-list: handle missing tree objects properly
1162
+ + list-objects: always parse trees gently
1163
+ + list-objects: refactor to process_tree_contents
1164
+ + list-objects: store common func args in struct
1165
1166
The "rev-list --filter" feature learned to exclude all trees via
1167
"tree:0" filter.
1168
823
- Will merge to 'next'.
1169
+ Will merge to 'master'.
1170
The test scripts need to be cleaned up.
1171
1172
@@ -910,71 +1256,6 @@ of the repositories listed at
1256
- sha1-name.c: add `get_oidf()` which acts like `get_oid()`
1257
1258
913
-* nd/clone-case-smashing-warning (2018-08-17) 1 commit
914
- (merged to 'next' on 2018-08-22 at eedae40a8d)
915
- + clone: report duplicate entries on case-insensitive filesystems
916
-
917
- Running "git clone" against a project that contain two files with
918
- pathnames that differ only in cases on a case insensitive
919
- filesystem would result in one of the files lost because the
920
- underlying filesystem is incapable of holding both at the same
921
- time. An attempt is made to detect such a case and warn.
922
-
923
- Will merge to 'master'.
924
-
925
-
926
-* nd/unpack-trees-with-cache-tree (2018-08-27) 8 commits
927
- (merged to 'next' on 2018-08-27 at b1d841d034)
928
- + Document update for nd/unpack-trees-with-cache-tree
929
- (merged to 'next' on 2018-08-22 at 138b902673)
930
- + cache-tree: verify valid cache-tree in the test suite
931
- + unpack-trees: add missing cache invalidation
932
- + unpack-trees: reuse (still valid) cache-tree from src_index
933
- + unpack-trees: reduce malloc in cache-tree walk
934
- + unpack-trees: optimize walking same trees with cache-tree
935
- + unpack-trees: add performance tracing
936
- + trace.h: support nested performance tracing
937
-
938
- The unpack_trees() API used in checking out a branch and merging
939
- walks one or more trees along with the index. When the cache-tree
940
- in the index tells us that we are walking a tree whose flattened
941
- contents is known (i.e. matches a span in the index), as linearly
942
- scanning a span in the index is much more efficient than having to
943
- open tree objects recursively and listing their entries, the walk
944
- can be optimized, which is done in this topic.
945
-
946
- Will merge to 'master'.
947
-
948
-
949
-* sb/range-diff-colors (2018-08-20) 11 commits
950
- (merged to 'next' on 2018-08-22 at eb7ed4fca3)
951
- + range-diff: indent special lines as context
952
- + range-diff: make use of different output indicators
953
- + diff.c: add --output-indicator-{new, old, context}
954
- + diff.c: rewrite emit_line_0 more understandably
955
- + diff.c: omit check for line prefix in emit_line_0
956
- + diff: use emit_line_0 once per line
957
- + diff.c: add set_sign to emit_line_0
958
- + diff.c: reorder arguments for emit_line_ws_markup
959
- + diff.c: simplify caller of emit_line_0
960
- + t3206: add color test for range-diff --dual-color
961
- + test_decode_color: understand FAINT and ITALIC
962
-
963
- The color output support for recently introduced "range-diff"
964
- command got tweaked a bit.
965
-
966
- Will merge to 'master'.
967
-
968
-
969
-* sg/t1404-update-ref-test-timeout (2018-08-01) 1 commit
970
- (merged to 'next' on 2018-08-22 at f3cd37b5ea)
971
- + t1404: increase core.packedRefsTimeout to avoid occasional test failure
972
-
973
- An attempt to unflake a test a bit.
974
-
975
- Will merge to 'master'.
976
-
977
-
1259
* pw/add-p-select (2018-07-26) 4 commits
1260
- add -p: optimize line selection for short hunks
1261
- add -p: allow line selection to be inverted
@@ -1007,81 +1288,12 @@ of the repositories listed at
1288
based on its use (and updating existing commit-graph) when these
1289
incompatible features are in use in the repository.
1290
1010
- Replaced with a newer version.
1011
-
1012
-
1013
-* ds/reachable (2018-08-28) 19 commits
1014
- (merged to 'next' on 2018-08-28 at b1634b371d)
1015
- + commit-reach: correct accidental #include of C file
1016
- (merged to 'next' on 2018-08-22 at 17f3275afb)
1017
- + commit-reach: use can_all_from_reach
1018
- + commit-reach: make can_all_from_reach... linear
1019
- + commit-reach: replace ref_newer logic
1020
- + test-reach: test commit_contains
1021
- + test-reach: test can_all_from_reach_with_flags
1022
- + test-reach: test reduce_heads
1023
- + test-reach: test get_merge_bases_many
1024
- + test-reach: test is_descendant_of
1025
- + test-reach: test in_merge_bases
1026
- + test-reach: create new test tool for ref_newer
1027
- + commit-reach: move can_all_from_reach_with_flags
1028
- + upload-pack: generalize commit date cutoff
1029
- + upload-pack: refactor ok_to_give_up()
1030
- + upload-pack: make reachable() more generic
1031
- + commit-reach: move commit_contains from ref-filter
1032
- + commit-reach: move ref_newer from remote.c
1033
- + commit.h: remove method declarations
1034
- + commit-reach: move walk methods from commit.c
1035
-
1036
- The code for computing history reachability has been shuffled,
1037
- obtained a bunch of new tests to cover them, and then being
1038
- improved.
1039
-
1040
- Will merge to 'master'.
1041
-
1042
-
1043
-* es/format-patch-interdiff (2018-07-23) 6 commits
1044
- (merged to 'next' on 2018-08-31 at 63927e0227)
1045
- + format-patch: allow --interdiff to apply to a lone-patch
1046
- + log-tree: show_log: make commentary block delimiting reusable
1047
- + interdiff: teach show_interdiff() to indent interdiff
1048
- + format-patch: teach --interdiff to respect -v/--reroll-count
1049
- + format-patch: add --interdiff option to embed diff in cover letter
1050
- + format-patch: allow additional generated content in make_cover_letter()
1051
- (this branch is used by ds/format-patch-range-diff-test and es/format-patch-rangediff.)
1052
-
1053
- "git format-patch" learned a new "--interdiff" option to explain
1054
- the difference between this version and the previous atttempt in
1055
- the cover letter (or after the tree-dashes as a comment).
1056
-
1057
- Will merge to 'master'.
1058
-
1059
-
1060
-* es/format-patch-rangediff (2018-08-14) 10 commits
1061
- (merged to 'next' on 2018-08-31 at 65627afece)
1062
- + format-patch: allow --range-diff to apply to a lone-patch
1063
- + format-patch: add --creation-factor tweak for --range-diff
1064
- + format-patch: teach --range-diff to respect -v/--reroll-count
1065
- + format-patch: extend --range-diff to accept revision range
1066
- + format-patch: add --range-diff option to embed diff in cover letter
1067
- + range-diff: relieve callers of low-level configuration burden
1068
- + range-diff: publish default creation factor
1069
- + range-diff: respect diff_option.file rather than assuming 'stdout'
1070
- + Merge branch 'es/format-patch-interdiff' into es/format-patch-rangediff
1071
- + Merge branch 'js/range-diff' into es/format-patch-rangediff
1072
- (this branch is used by ds/format-patch-range-diff-test; uses es/format-patch-interdiff.)
1073
-
1074
- "git format-patch" learned a new "--range-diff" option to explain
1075
- the difference between this version and the previous attempt in
1076
- the cover letter (or after the tree-dashes as a comment).
1077
-
1078
- Will merge to 'master'.
1291
+ Will merge to 'next'.
1292
1293
1081
-* jn/gc-auto (2018-07-17) 3 commits
1294
+* jn/gc-auto (2018-07-17) 1 commit
1295
- gc: do not return error for prior errors in daemonized mode
1083
- - gc: exit with status 128 on failure
1084
- - gc: improve handling of errors reading gc.log
1296
+ (this branch uses jn/gc-auto-prep.)
1297
1298
"gc --auto" ended up calling exit(-1) upon error, which has been
1299
corrected to use exit(1). Also the error reporting behaviour when
@@ -1090,44 +1302,7 @@ of the repositories listed at
1302
point running gc to improve the situation); we used to exit with
1303
failure in such a case.
1304
1093
- What's the donness of this one?
1094
- cf. <20180717201348.GD26218@sigill.intra.peff.net>
1095
-
1096
-
1097
-* sb/submodule-update-in-c (2018-08-14) 7 commits
1098
- (merged to 'next' on 2018-08-17 at 23c81e5ff7)
1099
- + submodule--helper: introduce new update-module-mode helper
1100
- + submodule--helper: replace connect-gitdir-workingtree by ensure-core-worktree
1101
- + builtin/submodule--helper: factor out method to update a single submodule
1102
- + builtin/submodule--helper: store update_clone information in a struct
1103
- + builtin/submodule--helper: factor out submodule updating
1104
- + git-submodule.sh: rename unused variables
1105
- + git-submodule.sh: align error reporting for update mode to use path
1106
-
1107
- "git submodule update" is getting rewritten piece-by-piece into C.
1108
-
1109
- Will merge to 'master'.
1110
-
1111
-
1112
-* tg/rerere (2018-08-06) 11 commits
1113
- (merged to 'next' on 2018-08-17 at 919a958cdc)
1114
- + rerere: recalculate conflict ID when unresolved conflict is committed
1115
- + rerere: teach rerere to handle nested conflicts
1116
- + rerere: return strbuf from handle path
1117
- + rerere: factor out handle_conflict function
1118
- + rerere: only return whether a path has conflicts or not
1119
- + rerere: fix crash with files rerere can't handle
1120
- + rerere: add documentation for conflict normalization
1121
- + rerere: mark strings for translation
1122
- + rerere: wrap paths in output in sq
1123
- + rerere: lowercase error messages
1124
- + rerere: unify error messages when read_cache fails
1125
- (this branch is used by tg/rerere-doc-updates.)
1126
-
1127
- Fixes to "git rerere" corner cases, especially when conflict
1128
- markers cannot be parsed in the file.
1129
-
1130
- Will merge to 'master'.
1305
+ cf. <20180917182639.GB140909@aiede.svl.corp.google.com>
1306
1307
1308
* ag/rebase-i-in-c (2018-08-29) 20 commits
@@ -1174,63 +1349,6 @@ of the repositories listed at
1349
1350
Rewrite of the "rebase" machinery in C.
1351
1177
-
1178
-* jk/branch-l-1-repurpose (2018-08-30) 2 commits
1179
- (merged to 'next' on 2018-08-31 at cfa73bbfcb)
1180
- + doc/git-branch: remove obsolete "-l" references
1181
- (merged to 'next' on 2018-08-08 at d2a08dd08e)
1182
- + branch: make "-l" a synonym for "--list"
1183
-
1184
- Updated plan to repurpose the "-l" option to "git branch".
1185
-
1186
- Will merge to 'master'.
1187
-
1188
-
1189
-* ds/multi-pack-index (2018-08-20) 33 commits
1190
- (merged to 'next' on 2018-08-21 at d15e8cadd4)
1191
- + pack-objects: consider packs in multi-pack-index
1192
- + midx: test a few commands that use get_all_packs
1193
- + treewide: use get_all_packs
1194
- + packfile: add all_packs list
1195
- + midx: fix bug that skips midx with alternates
1196
- + midx: stop reporting garbage
1197
- + midx: mark bad packed objects
1198
- + multi-pack-index: store local property
1199
- + multi-pack-index: provide more helpful usage info
1200
- + Sync 'ds/multi-pack-index' to v2.19.0-rc0
1201
- (merged to 'next' on 2018-08-08 at 1a56c52967)
1202
- + midx: clear midx on repack
1203
- + packfile: skip loading index if in multi-pack-index
1204
- + midx: prevent duplicate packfile loads
1205
- + midx: use midx in approximate_object_count
1206
- + midx: use existing midx when writing new one
1207
- + midx: use midx in abbreviation calculations
1208
- + midx: read objects from multi-pack-index
1209
- + config: create core.multiPackIndex setting
1210
- + midx: write object offsets
1211
- + midx: write object id fanout chunk
1212
- + midx: write object ids in a chunk
1213
- + midx: sort and deduplicate objects from packfiles
1214
- + midx: read pack names into array
1215
- + multi-pack-index: write pack names in chunk
1216
- + multi-pack-index: read packfile list
1217
- + packfile: generalize pack directory list
1218
- + t5319: expand test data
1219
- + multi-pack-index: load into memory
1220
- + midx: write header information to lockfile
1221
- + multi-pack-index: add 'write' verb
1222
- + multi-pack-index: add builtin
1223
- + multi-pack-index: add format details
1224
- + multi-pack-index: add design document
1225
- (this branch is used by ds/multi-pack-verify.)
1226
-
1227
- When there are too many packfiles in a repository (which is not
1228
- recommended), looking up an object in these would require
1229
- consulting many pack .idx files; a new mechanism to have a single
1230
- file that consolidates all of these .idx files is introduced.
1231
-
1232
- Will merge to 'master'.
1233
-
1352
--------------------------------------------------
1353
[Discarded]
1354