What's cooking (2019/01 #01)
Junio C Hamano committed
Jan 7, 2019 at 15:33 UTC
0596e1ad5143dab167e62bf39387d2b4e06cadb6
1 file changed
+656
-375
whats-cooking.txt
+656
-375
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Dec 2018, #02; Fri, 28)
4
-X-master-at: b21ebb671bb7dea8d342225f0d66c41f4e54d5ca
5
-X-next-at: 81188d93c3fce477216ba905bd37ab453a74b11d
3
+Subject: What's cooking in git.git (Jan 2019, #01; Mon, 7)
4
+X-master-at: ecbdaf0899161c067986e9d9d564586d4b045d62
5
+X-next-at: d81d796ee0c49eae40e3f85467a8e6b18022bcea
6
7
-What's cooking in git.git (Dec 2018, #02; Fri, 28)
7
+What's cooking in git.git (Jan 2019, #01; Mon, 7)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,15 +12,8 @@ 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 current state is that 'next' has been rewound, a few topics have
16
-been updated, and almost no new topics have been picked up (yet),
17
-even though many of them seem to have been reviewed on-list and I've
18
-also looked at some of them.
19
-
20
-Sorry for being slow to recover from the year-end slowness; the 2.20
21
-release being rather large-ish and needed brown-paper-bag fixes soon
22
-after it, my temporary trans-pacific migration, or me catching cold
23
-that I haven't shaken off, did not help X-<.
15
+The 'master' branch now has the first batch of topics (many of which
16
+have been cooking in 'next' during the pre-release freeze).
17
18
You can find the changes described here in the integration branches
19
of the repositories listed at
@@ -30,48 +23,528 @@ of the repositories listed at
23
--------------------------------------------------
24
[Graduated to "master"]
25
33
-* ds/hash-independent-tests-fix (2018-12-12) 1 commit
34
- + .gitattributes: ensure t/oid-info/* has eol=lf
26
+* ab/push-dwim-dst (2018-11-14) 7 commits
27
+ (merged to 'next' on 2018-12-28 at d9f618de10)
28
+ + push doc: document the DWYM behavior pushing to unqualified <dst>
29
+ + push: test that <src> doesn't DWYM if <dst> is unqualified
30
+ + push: add an advice on unqualified <dst> push
31
+ + push: move unqualified refname error into a function
32
+ + push: improve the error shown on unqualified <dst> push
33
+ + i18n: remote.c: mark error(...) messages for translation
34
+ + remote.c: add braces in anticipation of a follow-up change
35
+
36
+ Originally merged to 'next' on 2018-11-18
37
+
38
+ "git push $there $src:$dst" rejects when $dst is not a fully
39
+ qualified refname and not clear what the end user meant. The
40
+ codepath has been taught to give a clearer error message, and also
41
+ guess where the push should go by taking the type of the pushed
42
+ object into account (e.g. a tag object would want to go under
43
+ refs/tags/).
44
+
45
+
46
+* en/fast-export-import (2018-11-17) 11 commits
47
+ (merged to 'next' on 2018-12-28 at a1b09cf515)
48
+ + fast-export: add a --show-original-ids option to show original names
49
+ + fast-import: remove unmaintained duplicate documentation
50
+ + fast-export: add --reference-excluded-parents option
51
+ + fast-export: ensure we export requested refs
52
+ + fast-export: when using paths, avoid corrupt stream with non-existent mark
53
+ + fast-export: move commit rewriting logic into a function for reuse
54
+ + fast-export: avoid dying when filtering by paths and old tags exist
55
+ + fast-export: use value from correct enum
56
+ + git-fast-export.txt: clarify misleading documentation about rev-list args
57
+ + git-fast-import.txt: fix documentation for --quiet option
58
+ + fast-export: convert sha1 to oid
59
+
60
+ Originally merged to 'next' on 2018-11-18
61
+
62
+ Small fixes and features for fast-export and fast-import, mostly on
63
+ the fast-export side.
64
+
65
+
66
+* en/merge-path-collision (2018-12-01) 11 commits
67
+ (merged to 'next' on 2018-12-28 at b50d3eee25)
68
+ + t6036: avoid non-portable "cp -a"
69
+ + merge-recursive: combine error handling
70
+ + t6036, t6043: increase code coverage for file collision handling
71
+ + merge-recursive: improve rename/rename(1to2)/add[/add] handling
72
+ + merge-recursive: use handle_file_collision for add/add conflicts
73
+ + merge-recursive: improve handling for rename/rename(2to1) conflicts
74
+ + merge-recursive: fix rename/add conflict handling
75
+ + merge-recursive: new function for better colliding conflict resolutions
76
+ + merge-recursive: increase marker length with depth of recursion
77
+ + t6036, t6042: testcases for rename collision of already conflicting files
78
+ + t6042: add tests for consistency in file collision conflict handling
79
+
80
+ Originally merged to 'next' on 2018-12-01
81
36
- Test portability fix.
82
+ Updates for corner cases in merge-recursive.
83
84
39
-* jc/run-command-report-exec-failure-fix (2018-12-12) 1 commit
40
- + run-command: report exec failure
85
+* fc/http-version (2018-11-09) 1 commit
86
+ (merged to 'next' on 2018-12-28 at 56bcbb0fa9)
87
+ + http: add support selecting http version
88
42
- A recent update accidentally squelched an error message when the
43
- run_command API failed to run a missing command, which has been
44
- corrected.
89
+ Originally merged to 'next' on 2018-11-18
90
91
+ The "http.version" configuration variable can be used with recent
92
+ enough cURL library to force the version of HTTP used to talk when
93
+ fetching and pushing.
94
47
-* js/help-commands-verbose-by-default-fix (2018-12-12) 2 commits
48
- + help -a: handle aliases with long names gracefully
49
- + help.h: fix coding style
95
51
- "git help -a" did not work well when an overly long alias is
52
- defined, which has been corrected.
96
+* jk/loose-object-cache (2018-11-24) 10 commits
97
+ (merged to 'next' on 2018-12-28 at 5a5faf384e)
98
+ + odb_load_loose_cache: fix strbuf leak
99
+ + fetch-pack: drop custom loose object cache
100
+ + sha1-file: use loose object cache for quick existence check
101
+ + object-store: provide helpers for loose_objects_cache
102
+ + sha1-file: use an object_directory for the main object dir
103
+ + handle alternates paths the same as the main object dir
104
+ + sha1_file_name(): overwrite buffer instead of appending
105
+ + rename "alternate_object_database" to "object_directory"
106
+ + submodule--helper: prefer strip_suffix() to ends_with()
107
+ + fsck: do not reuse child_process structs
108
+
109
+ Originally merged to 'next' on 2018-11-24
110
+
111
+ Code clean-up with optimization for the codepath that checks
112
+ (non-)existence of loose objects.
113
114
55
-* js/mailinfo-format-flowed-fix (2018-12-13) 1 commit
56
- + t4256: mark support files as LF-only
115
+* mk/http-backend-kill-children-before-exit (2018-11-26) 1 commit
116
+ (merged to 'next' on 2018-12-28 at 81188d93c3)
117
+ + http-backend: enable cleaning up forked upload/receive-pack on exit
118
58
- Test portability fix.
119
+ Originally merged to 'next' on 2018-11-29
120
121
+ The http-backend CGI process did not correctly clean up the child
122
+ processes it spawns to run upload-pack etc. when it dies itself,
123
+ which has been corrected.
124
61
-* nd/show-gitcomp-compilation-fix (2018-12-12) 1 commit
62
- + parse-options: fix SunCC compiler warning
125
64
- Portability fix for a recent update to parse-options API.
126
+* nd/checkout-dwim-fix (2018-11-14) 1 commit
127
+ (merged to 'next' on 2018-12-28 at 3183c9305b)
128
+ + checkout: disambiguate dwim tracking branches and local files
129
+
130
+ Originally merged to 'next' on 2018-11-18
131
+
132
+ "git checkout frotz" (without any double-dash) avoids ambiguity by
133
+ making sure 'frotz' cannot be interpreted as a revision and as a
134
+ path at the same time. This safety has been updated to check also
135
+ a unique remote-tracking branch 'frotz' in a remote, when dwimming
136
+ to create a local branch 'frotz' out of a remote-tracking branch
137
+ 'frotz' from a remote.
138
+
139
+
140
+* nd/i18n (2018-11-12) 16 commits
141
+ (merged to 'next' on 2018-12-28 at 8e2de8338e)
142
+ + fsck: mark strings for translation
143
+ + fsck: reduce word legos to help i18n
144
+ + parse-options.c: mark more strings for translation
145
+ + parse-options.c: turn some die() to BUG()
146
+ + parse-options: replace opterror() with optname()
147
+ + repack: mark more strings for translation
148
+ + remote.c: mark messages for translation
149
+ + remote.c: turn some error() or die() to BUG()
150
+ + reflog: mark strings for translation
151
+ + read-cache.c: add missing colon separators
152
+ + read-cache.c: mark more strings for translation
153
+ + read-cache.c: turn die("internal error") to BUG()
154
+ + attr.c: mark more string for translation
155
+ + archive.c: mark more strings for translation
156
+ + alias.c: mark split_cmdline_strerror() strings for translation
157
+ + git.c: mark more strings for translation
158
+
159
+ Originally merged to 'next' on 2018-11-18
160
+
161
+ More _("i18n") markings.
162
+
163
+
164
+* nd/the-index (2018-11-12) 22 commits
165
+ (merged to 'next' on 2018-12-28 at 6bbd3befbe)
166
+ + rebase-interactive.c: remove the_repository references
167
+ + rerere.c: remove the_repository references
168
+ + pack-*.c: remove the_repository references
169
+ + pack-check.c: remove the_repository references
170
+ + notes-cache.c: remove the_repository references
171
+ + line-log.c: remove the_repository reference
172
+ + diff-lib.c: remove the_repository references
173
+ + delta-islands.c: remove the_repository references
174
+ + cache-tree.c: remove the_repository references
175
+ + bundle.c: remove the_repository references
176
+ + branch.c: remove the_repository reference
177
+ + bisect.c: remove the_repository reference
178
+ + blame.c: remove implicit dependency the_repository
179
+ + sequencer.c: remove implicit dependency on the_repository
180
+ + sequencer.c: remove implicit dependency on the_index
181
+ + transport.c: remove implicit dependency on the_index
182
+ + notes-merge.c: remove implicit dependency the_repository
183
+ + notes-merge.c: remove implicit dependency on the_index
184
+ + list-objects.c: reduce the_repository references
185
+ + list-objects-filter.c: remove implicit dependency on the_index
186
+ + wt-status.c: remove implicit dependency the_repository
187
+ + wt-status.c: remove implicit dependency on the_index
188
+ (this branch is used by md/list-objects-filter-by-depth.)
189
+
190
+ Originally merged to 'next' on 2018-11-18
191
+
192
+ More codepaths become aware of working with in-core repository
193
+ instance other than the default "the_repository".
194
+
195
+
196
+* sd/stash-wo-user-name (2018-11-19) 1 commit
197
+ (merged to 'next' on 2018-12-28 at 99197ef5a1)
198
+ + stash: tolerate missing user identity
199
+ (this branch is used by ps/stash-in-c.)
200
+
201
+ Originally merged to 'next' on 2018-11-19
202
+
203
+ A properly configured username/email is required under
204
+ user.useConfigOnly in order to create commits; now "git stash"
205
+ (even though it creates commit objects to represent stash entries)
206
+ command is exempt from the requirement.
207
+
208
+
209
+* sg/clone-initial-fetch-configuration (2018-11-16) 3 commits
210
+ (merged to 'next' on 2018-12-28 at 82e104f221)
211
+ + Documentation/clone: document ignored configuration variables
212
+ + clone: respect additional configured fetch refspecs during initial fetch
213
+ + clone: use a more appropriate variable name for the default refspec
214
+
215
+ Originally merged to 'next' on 2018-11-18
216
+
217
+ Refspecs configured with "git -c var=val clone" did not propagate
218
+ to the resulting repository, which has been corrected.
219
220
--------------------------------------------------
221
[New Topics]
222
69
-* ds/midx-expire-repack (2018-12-11) 5 commits
70
- - multi-pack-index: implement midx_repack()
71
- - multi-pack-index: prepare 'repack' verb
223
+* ab/proto-v2-fixes (2018-12-14) 5 commits
224
+ - tests: mark tests broken under GIT_TEST_PROTOCOL_VERSION=2
225
+ - builtin/fetch-pack: support protocol version 2
226
+ - tests: mark & fix tests broken under GIT_TEST_PROTOCOL_VERSION=1
227
+ - tests: add a special setup where for protocol.version
228
+ - tests: add a check for unportable env --unset
229
+
230
+ This is (just a part of) v2, and I see v3 posted on the list, but
231
+ it seems that v3 needs further updates.
232
+ cf. <20181218124852.GD30471@sigill.intra.peff.net>
233
+
234
+ I'll drop the whole thing and wait for an update.
235
+
236
+
237
+* jn/stripspace-wo-repository (2018-12-26) 1 commit
238
+ - stripspace: allow -s/-c outside git repository
239
+
240
+ "git stripspace" should be usable outside a git repository, but
241
+ under the "-s" or "-c" mode, it didn't.
242
+
243
+ Will merge to 'next'.
244
+
245
+
246
+* ma/asciidoctor (2018-12-26) 3 commits
247
+ - git-status.txt: render tables correctly under Asciidoctor
248
+ - Documentation: do not nest open blocks
249
+ - git-column.txt: fix section header
250
+
251
+ Some of the documentation pages formatted incorrectly with
252
+ Asciidoctor, which have been fixed.
253
+
254
+ Will merge to 'next'.
255
+
256
+
257
+* nd/worktree-remove-with-uninitialized-submodules (2019-01-07) 1 commit
258
+ - worktree: allow to (re)move worktrees with uninitialized submodules
259
+
260
+ "git worktree remove" and "git worktree move" refused to work when
261
+ there is a submodule involved. This has been loosened to ignore
262
+ uninitialized submodules.
263
+
264
+ Will merge to 'next'.
265
+
266
+
267
+* sb/submodule-unset-core-worktree-when-worktree-is-lost (2018-12-26) 4 commits
268
+ - submodule deinit: unset core.worktree
269
+ - submodule--helper: fix BUG message in ensure_core_worktree
270
+ - submodule: unset core.worktree if no working tree is present
271
+ - submodule update: add regression test with old style setups
272
+
273
+ The core.worktree setting in a submodule repository should not be
274
+ pointing at a directory when the submodule loses its working tree
275
+ (e.g. getting deinit'ed), but the code did not properly maintain
276
+ this invariant.
277
+
278
+ Will merge to 'next'.
279
+
280
+
281
+* so/cherry-pick-always-allow-m1 (2019-01-07) 4 commits
282
+ - t3506: validate '-m 1 -ff' is now accepted for non-merge commits
283
+ - t3502: validate '-m 1' argument is now accepted for non-merge commits
284
+ - cherry-pick: do not error on non-merge commits when '-m 1' is specified
285
+ - t3510: stop using '-m 1' to force failure mid-sequence of cherry-picks
286
+
287
+ "git cherry-pick -m1" was forbidden when picking a non-merge
288
+ commit, even though there _is_ parent number 1 for such a commit.
289
+ This was done to avoid mistakes back when "cherry-pick" was about
290
+ picking a single commit, but is no longer useful with "cherry-pick"
291
+ that can pick a range of commits. Now the "-m$num" option is
292
+ allowed when picking any commit, as long as $num names an existing
293
+ parent of the commit.
294
+
295
+ Technically this is a backward incompatible change; hopefully
296
+ nobody is relying on the error-checking behaviour.
297
+
298
+ Will merge to 'next'.
299
+
300
+
301
+* cy/completion-typofix (2019-01-03) 1 commit
302
+ - completion: fix typo in git-completion.bash
303
+
304
+ Typofix.
305
+
306
+ Will merge to 'next'.
307
+
308
+
309
+* cy/zsh-completion-SP-in-path (2019-01-03) 2 commits
310
+ - completion: treat results of git ls-tree as file paths
311
+ - zsh: complete unquoted paths with spaces correctly
312
+
313
+ With zsh, "git cmd path<TAB>" was completed to "git cmd path name"
314
+ when the completed path has a special character like SP in it,
315
+ without any attempt to keep "path name" a single filename. This
316
+ has been fixed to complete it to "git cmd path\ name" just like
317
+ Bash completion does.
318
+
319
+ Will merge to 'next'.
320
+
321
+
322
+* ds/commit-graph-assert-missing-parents (2019-01-02) 1 commit
323
+ - commit-graph: writing missing parents is a BUG
324
+
325
+ Tightening error checking in commit-graph writer.
326
+
327
+ Will merge to 'next'.
328
+
329
+
330
+* ed/simplify-setup-git-dir (2019-01-03) 1 commit
331
+ - Simplify handling of setup_git_directory_gently() failure cases.
332
+
333
+ Code simplification.
334
+
335
+ Will merge to 'next'.
336
+
337
+
338
+* es/doc-worktree-guessremote-config (2018-12-28) 1 commit
339
+ - doc/config: do a better job of introducing 'worktree.guessRemote'
340
+
341
+ Doc clarification.
342
+
343
+ Will merge to 'next'.
344
+
345
+
346
+* ew/ban-strncat (2019-01-02) 1 commit
347
+ - banned.h: mark strncat() as banned
348
+
349
+ The "strncat()" function is now among the banned functions.
350
+
351
+ Will merge to 'next'.
352
+
353
+
354
+* jk/dev-build-format-security (2019-01-07) 1 commit
355
+ - config.mak.dev: add -Wall, primarily for -Wformat, to help autoconf users
356
+
357
+ Earlier we added "-Wformat-security" to developer builds, assuming
358
+ that "-Wall" (which includes "-Wformat" which in turn is required
359
+ to use "-Wformat-security") is always in effect. This is not true
360
+ when config.mak.autogen is in use, unfortunately. This has been
361
+ fixed by unconditionally adding "-Wall" to developer builds.
362
+
363
+ Will merge to 'next'.
364
+
365
+
366
+* jp/author-committer-config (2019-01-02) 2 commits
367
+ - DONTMERGE
368
+ - Add author and committer configuration settings
369
+
370
+ Four new configuration variables {author,committer}.{name,email}
371
+ have been introduced to override user.{name,email} in more specific
372
+ cases.
373
+
374
+ Expecting a reroll.
375
+ cf. <xmqq1s5uk6qh.fsf@gitster-ct.c.googlers.com>
376
+
377
+
378
+* js/rebase-am (2019-01-03) 4 commits
379
+ - built-in rebase: call `git am` directly
380
+ - rebase: teach `reset_head()` to optionally skip the worktree
381
+ - rebase: avoid double reflog entry when switching branches
382
+ - rebase: move `reset_head()` into a better spot
383
+
384
+ Instead of going through "git-rebase--am" scriptlet to use the "am"
385
+ backend, the built-in version of "git rebase" learned to drive the
386
+ "am" backend directly.
387
+
388
+ Waiting for a review response.
389
+ Looked almost ready.
390
+
391
+
392
+* ms/packet-err-check (2019-01-02) 2 commits
393
+ - pack-protocol.txt: accept error packets in any context
394
+ - Use packet_reader instead of packet_read_line
395
+
396
+ Error checking of data sent over the pack-protocol has been
397
+ revamped so that error packets are always diagnosed properly.
398
+
399
+
400
+* os/rebase-runs-post-checkout-hook (2019-01-02) 2 commits
401
+ - rebase: run post-checkout hook on checkout
402
+ - t5403: simplify by using a single repository
403
+
404
+ "git rebase" internally runs "checkout" to switch between branches,
405
+ and the command used to call the post-checkout hook, but the
406
+ reimplementation stopped doing so, which is getting fixed.
407
+
408
+
409
+* rb/hpe (2019-01-03) 5 commits
410
+ - compat/regex/regcomp.c: define intptr_t and uintptr_t on NonStop
411
+ - git-compat-util.h: add FLOSS headers for HPE NonStop
412
+ - config.mak.uname: support for modern HPE NonStop config.
413
+ - transport-helper: drop read/write errno checks
414
+ - transport-helper: use xread instead of read
415
+
416
+ Portability updates for the HPE NonStop platform.
417
+
418
+ Will merge to 'next'.
419
+
420
+
421
+* sg/test-bash-version-fix (2019-01-03) 2 commits
422
+ - Merge branch 'sg/test-bash-version-fix'
423
+ - test-lib: check Bash version for '-x' without using shell arrays
424
+ (this branch is used by sg/stress-test.)
425
+
426
+ The test suite tried to see if it is run under bash, but the check
427
+ itself failed under some other implementations of shell (notably
428
+ under NetBSD). This has been corrected.
429
+
430
+ Will merge to 'next'.
431
+
432
+
433
+* sm/http-no-more-failonerror (2019-01-03) 2 commits
434
+ - Unset CURLOPT_FAILONERROR
435
+ - Change how HTTP response body is returned
436
+
437
+ Waiting for clarifications.
438
+
439
+
440
+* tg/t5570-drop-racy-test (2019-01-07) 2 commits
441
+ - Revert "t/lib-git-daemon: record daemon log"
442
+ - t5570: drop racy test
443
+
444
+ An inherently racy test that caused intermittent failures has been
445
+ removed.
446
+
447
+ Will merge to 'next'.
448
+
449
+
450
+* tt/bisect-in-c (2019-01-02) 7 commits
451
+ - bisect--helper: `bisect_start` shell function partially in C
452
+ - bisect--helper: `get_terms` & `bisect_terms` shell function in C
453
+ - bisect--helper: `bisect_next_check` shell function in C
454
+ - bisect--helper: `check_and_set_terms` shell function in C
455
+ - wrapper: move is_empty_file() and rename it as is_empty_or_missing_file()
456
+ - bisect--helper: `bisect_write` shell function in C
457
+ - bisect--helper: `bisect_reset` shell function in C
458
+
459
+ More code in "git bisect" has been rewritten in C.
460
+
461
+
462
+* ja/doc-build-l10n (2019-01-07) 1 commit
463
+ - Documentation/Makefile add optional targets for l10n
464
+
465
+ Prepare Documentation/Makefile so that manpage localization can
466
+ reuse it by overriding and tweaking the list of build products.
467
+
468
+ Will merge to 'next'.
469
+
470
+
471
+* jk/loose-object-cache-oid (2019-01-07) 5 commits
472
+ - sha1-file: modernize loose header/stream functions
473
+ - sha1-file: modernize loose object file functions
474
+ - http: use struct object_id instead of bare sha1
475
+ - update comment references to sha1_object_info()
476
+ - sha1-file: fix outdated sha1 comment references
477
+ (this branch uses rs/loose-object-cache-perffix.)
478
+
479
+ Code clean-up.
480
+
481
+ Will merge to 'next'.
482
+
483
+
484
+* mm/multimail-1.5 (2019-01-07) 1 commit
485
+ - git-multimail: update to release 1.5.0
486
+
487
+ Update "git multimail" from the upstream.
488
+
489
+ Will merge to 'next'.
490
+
491
+
492
+* po/git-p4-wo-login (2019-01-07) 1 commit
493
+ - git-p4: fix problem when p4 login is not necessary
494
+
495
+ "git p4" update.
496
+
497
+ Will merge to 'next'.
498
+
499
+
500
+* rs/loose-object-cache-perffix (2019-01-07) 4 commits
501
+ - object-store: retire odb_load_loose_cache()
502
+ - object-store: use one oid_array per subdirectory for loose cache
503
+ - object-store: factor out odb_clear_loose_cache()
504
+ - object-store: factor out odb_loose_cache()
505
+ (this branch is used by jk/loose-object-cache-oid.)
506
+
507
+ The loose object cache used to optimize existence look-up has been
508
+ updated.
509
+
510
+ Will merge to 'next'.
511
+
512
+
513
+* rs/sha1-file-close-mapped-file-on-error (2019-01-07) 1 commit
514
+ - sha1-file: close fd of empty file in map_sha1_file_1()
515
+
516
+ Code clean-up.
517
+
518
+ Will merge to 'next'.
519
+
520
+--------------------------------------------------
521
+[Cooking]
522
+
523
+* lt/date-human (2019-01-02) 3 commits
524
+ - t0006-date.sh: add `human` date format tests.
525
+ - Add 'human' date format documentation
526
+ - Add 'human' date format
527
+
528
+ A new date format "--date=human" that morphs its output depending
529
+ on how far the time is from the current time has been introduced.
530
+ "--date=auto" can be used to use this new format when the output is
531
+ goint to the pager or to the terminal and otherwise the default
532
+ format.
533
+
534
+ The design around "auto" may need to be rethought.
535
+ The tests need to be updated, too.
536
+ cf. <20190104075034.GA26014@sigill.intra.peff.net>
537
+ cf. <a5412274-028f-3662-e4f5-dbbcad4d9a40@iee.org>
538
+
539
+
540
+* ds/midx-expire-repack (2019-01-02) 7 commits
541
+ - midx: implement midx_repack()
542
+ - multi-pack-index: prepare 'repack' subcommand
543
- multi-pack-index: implement 'expire' verb
73
- - multi-pack-index: refactor permutation logic
74
- - multi-pack-index: prepare for 'expire' verb
544
+ - midx: refactor permutation logic
545
+ - multi-pack-index: prepare for 'expire' subcommand
546
+ - Docs: rearrange subcommands for multi-pack-index
547
+ - repack: refactor pack deletion for future use
548
549
550
* ds/push-sparse-tree-walk (2018-12-11) 6 commits
@@ -89,14 +562,12 @@ of the repositories listed at
562
- rebase: introduce --reschedule-failed-exec
563
564
92
-* md/list-objects-filter-by-depth (2018-12-11) 4 commits
565
+* md/list-objects-filter-by-depth (2018-12-28) 4 commits
566
- tree:<depth>: skip some trees even when collecting omits
567
- list-objects-filter: teach tree:# how to handle >0
568
- Merge branch 'nd/the-index' into md/list-objects-filter-by-depth
569
- Merge branch 'sb/more-repo-in-api' into md/list-objects-filter-by-depth
97
- (this branch uses nd/the-index and sb/more-repo-in-api; is tangled with jt/get-reference-with-commit-graph.)
98
-
99
- Needs to be rebuilt when sb/more-repo-in-api is rewound.
570
+ (this branch uses sb/more-repo-in-api; is tangled with jt/get-reference-with-commit-graph.)
571
572
573
* nd/backup-log (2018-12-10) 24 commits
@@ -131,91 +602,111 @@ of the repositories listed at
602
603
Code clean-up.
604
605
+ Will merge to 'next'.
606
+
607
135
-* sg/stress-test (2018-12-10) 8 commits
136
- - fixup! test-lib: add the '--stress' option to run a test repeatedly under load
608
+* sg/stress-test (2019-01-07) 8 commits
609
- test-lib: add the '--stress' option to run a test repeatedly under load
610
- test-lib-functions: introduce the 'test_set_port' helper function
139
- - test-lib: extract Bash version check for '-x' tracing
611
- test-lib: set $TRASH_DIRECTORY earlier
612
- test-lib: consolidate naming of test-results paths
142
- - test-lib: parse some --options earlier
613
+ - test-lib: parse command line options earlier
614
+ - test-lib: parse options in a for loop to keep $@ intact
615
+ - test-lib: extract Bash version check for '-x' tracing
616
- test-lib: translate SIGTERM and SIGHUP to an exit
617
+ (this branch uses sg/test-bash-version-fix.)
618
619
+ Flaky tests can now be repeatedly run under load with the
620
+ "--stress" option.
621
146
-* tg/checkout-no-overlay (2018-12-10) 8 commits
147
- - stash: use git checkout --no-overlay
148
- - checkout: allow ignoring unmatched pathspec
149
- - checkout: add --cached option
622
+ Will merge to 'next'.
623
+
624
+
625
+* tg/checkout-no-overlay (2019-01-02) 8 commits
626
+ - checkout: introduce checkout.overlayMode config
627
- checkout: introduce --{,no-}overlay option
628
+ - checkout: factor out mark_cache_entry_for_checkout function
629
+ - checkout: clarify comment
630
- read-cache: add invalidate parameter to remove_marked_cache_entries
631
- entry: support CE_WT_REMOVE flag in checkout_entry
632
- entry: factor out unlink_entry function
633
- move worktree tests to t24*
634
635
+ "git checkout --no-overlay" can be used to trigger a new mode of
636
+ checking out paths out of the tree-ish, that allows paths that
637
+ match the pathspec that are in the current index and working tree
638
+ and are not in the tree-ish.
639
+
640
+ Will merge to 'next'.
641
+
642
643
* jk/proto-v2-hidden-refs-fix (2018-12-14) 3 commits
644
- upload-pack: support hidden refs with protocol v2
645
- parse_hide_refs_config: handle NULL section
646
- serve: pass "config context" through to individual commands
647
648
+ The v2 upload-pack protocol implementation failed to honor
649
+ hidden-ref configuration, which has been corrected.
650
+
651
+ Will merge to 'next'.
652
+
653
654
* la/quiltimport-keep-non-patch (2018-12-14) 1 commit
655
- git-quiltimport: Add --keep-non-patch option
656
657
+ "git quiltimport" learned "--keep-non-patch" option.
658
+
659
+ Will merge to 'next'.
660
+
661
662
* sb/submodule-fetchjobs-default-to-one (2018-12-14) 1 commit
663
- submodule update: run at most one fetch job unless otherwise set
664
170
---------------------------------------------------
171
-[Stalled]
665
+ "git submodule update" ought to use a single job unless asked, but
666
+ by mistake used multiple jobs, which has been fixed.
667
173
-* lt/date-human (2018-07-09) 1 commit
174
- - Add 'human' date format
175
-
176
- A new date format "--date=human" that morphs its output depending
177
- on how far the time is from the current time has been introduced.
178
- "--date=auto" can be used to use this new format when the output is
179
- goint to the pager or to the terminal and otherwise the default
180
- format.
668
+ Will merge to 'next'.
669
182
---------------------------------------------------
183
-[Cooking]
670
671
* cb/openbsd-allows-reading-directory (2018-12-03) 1 commit
186
- - config.mak.uname: OpenBSD uses BSD semantics with fread for directories
672
+ (merged to 'next' on 2019-01-04 at 9d865107fd)
673
+ + config.mak.uname: OpenBSD uses BSD semantics with fread for directories
674
675
BSD port update.
676
190
- Will merge to 'next'.
677
+ Will merge to 'master'.
678
679
680
* cb/t5004-empty-tar-archive-fix (2018-12-03) 1 commit
194
- - t5004: avoid using tar for empty packages
681
+ (merged to 'next' on 2019-01-04 at 39f4cf94ce)
682
+ + t5004: avoid using tar for empty packages
683
684
BSD port update.
685
198
- Will merge to 'next'.
686
+ Will merge to 'master'.
687
688
689
* cb/test-lint-cp-a (2018-12-03) 1 commit
202
- - tests: add lint for non portable cp -a
690
+ (merged to 'next' on 2019-01-04 at d13e6cfcb0)
691
+ + tests: add lint for non portable cp -a
692
693
BSD port update.
694
206
- Will merge to 'next'.
695
+ Will merge to 'master'.
696
697
698
* hb/t0061-dot-in-path-fix (2018-12-03) 1 commit
210
- - t0061: do not fail test if '.' is part of $PATH
699
+ (merged to 'next' on 2019-01-04 at 789f990c4e)
700
+ + t0061: do not fail test if '.' is part of $PATH
701
702
Test update.
703
214
- Will merge to 'next'.
704
+ Will merge to 'master'.
705
706
707
* hn/highlight-sideband-keywords (2018-12-04) 1 commit
218
- - sideband: color lines with keyword only
708
+ (merged to 'next' on 2019-01-04 at b039601533)
709
+ + sideband: color lines with keyword only
710
711
Lines that begin with a certain keyword that come over the wire, as
712
well as lines that consist only of one of these keywords, ought to
@@ -223,7 +714,7 @@ of the repositories listed at
714
broken ever since the feature was introduced in 2.19, which has
715
been corrected.
716
226
- Will merge to 'next'.
717
+ Will merge to 'master'.
718
719
720
* js/commit-graph-chunk-table-fix (2018-12-14) 3 commits
@@ -235,7 +726,7 @@ of the repositories listed at
726
past the end of it when the file's table-of-contents was corrupt.
727
728
238
-* jt/get-reference-with-commit-graph (2018-12-06) 1 commit
729
+* jt/get-reference-with-commit-graph (2018-12-28) 1 commit
730
- revision: use commit graph in get_reference()
731
(this branch uses sb/more-repo-in-api; is tangled with md/list-objects-filter-by-depth.)
732
@@ -246,82 +737,78 @@ of the repositories listed at
737
738
739
* md/exclude-promisor-objects-fix-cleanup (2018-12-06) 1 commit
249
- - revision.c: put promisor option in specialized struct
740
+ (merged to 'next' on 2019-01-04 at c15362832d)
741
+ + revision.c: put promisor option in specialized struct
742
743
Code clean-up.
744
253
- Will merge to 'next'.
745
+ Will merge to 'master'.
746
747
748
* bw/mailmap (2018-12-09) 1 commit
257
- - mailmap: update brandon williams's email address
749
+ (merged to 'next' on 2019-01-04 at 02b6e83231)
750
+ + mailmap: update brandon williams's email address
751
259
- Will merge to 'next'.
752
+ Will merge to 'master'.
753
754
755
* do/gitweb-strict-export-conf-doc (2018-12-09) 1 commit
263
- - docs: fix $strict_export text in gitweb.conf.txt
756
+ (merged to 'next' on 2019-01-04 at 5249c9386a)
757
+ + docs: fix $strict_export text in gitweb.conf.txt
758
759
Doc update.
760
267
- Will merge to 'next'.
761
+ Will merge to 'master'.
762
763
764
* en/directory-renames-nothanks-doc-update (2018-12-09) 1 commit
271
- - git-rebase.txt: update note about directory rename detection and am
765
+ (merged to 'next' on 2019-01-04 at cb7134b54c)
766
+ + git-rebase.txt: update note about directory rename detection and am
767
768
Doc update.
769
275
- Will merge to 'next'.
770
+ Will merge to 'master'.
771
772
773
* fd/gitweb-snapshot-conf-doc-fix (2018-12-09) 1 commit
279
- - docs/gitweb.conf: config variable typo
774
+ (merged to 'next' on 2019-01-04 at 7ba71fca17)
775
+ + docs/gitweb.conf: config variable typo
776
777
Doc update.
778
283
- Will merge to 'next'.
779
+ Will merge to 'master'.
780
781
782
* km/rebase-doc-typofix (2018-12-10) 1 commit
287
- - rebase docs: drop stray word in merge command description
783
+ (merged to 'next' on 2019-01-04 at c89f646e8f)
784
+ + rebase docs: drop stray word in merge command description
785
786
Doc update.
787
291
- Will merge to 'next'.
788
+ Will merge to 'master'.
789
790
791
* nd/indentation-fix (2018-12-09) 1 commit
295
- - Indent code with TABs
792
+ (merged to 'next' on 2019-01-04 at 738b17d365)
793
+ + Indent code with TABs
794
795
Code cleanup.
796
299
- Will merge to 'next'.
797
+ Will merge to 'master'.
798
799
800
* tb/use-common-win32-pathfuncs-on-cygwin (2018-12-26) 1 commit
303
- - git clone <url> C:\cygwin\home\USER\repo' is working (again)
801
+ (merged to 'next' on 2019-01-04 at c3b2b1f3c3)
802
+ + git clone <url> C:\cygwin\home\USER\repo' is working (again)
803
804
Cygwin update.
805
307
- Will merge to 'next'.
308
-
309
-
310
-* mk/http-backend-kill-children-before-exit (2018-11-26) 1 commit
311
- (merged to 'next' on 2018-12-28 at 81188d93c3)
312
- + http-backend: enable cleaning up forked upload/receive-pack on exit
313
-
314
- Originally merged to 'next' on 2018-11-29
315
-
316
- The http-backend CGI process did not correctly clean up the child
317
- processes it spawns to run upload-pack etc. when it dies itself,
318
- which has been corrected.
319
-
806
Will merge to 'master'.
807
808
809
* tb/log-G-binary (2018-12-26) 1 commit
324
- - log -G: ignore binary files
810
+ (merged to 'next' on 2019-01-04 at a713ef389c)
811
+ + log -G: ignore binary files
812
813
"git log -G<regex>" looked for a hunk in the "git log -p" patch
814
output that contained a string that matches the given pattern.
@@ -329,7 +816,7 @@ of the repositories listed at
816
not show any hunk that would match any pattern (unless textconv or
817
the --text option is in effect, that is).
818
332
- Will merge to 'next'.
819
+ Will merge to 'master'.
820
821
822
* dl/merge-cleanup-scissors-fix (2018-11-21) 2 commits
@@ -363,23 +850,25 @@ of the repositories listed at
850
851
852
* nd/attr-pathspec-in-tree-walk (2018-11-19) 5 commits
366
- - tree-walk: support :(attr) matching
367
- - dir.c: move, rename and export match_attrs()
368
- - pathspec.h: clean up "extern" in function declarations
369
- - tree-walk.c: make tree_entry_interesting() take an index
370
- - tree.c: make read_tree*() take 'struct repository *'
853
+ (merged to 'next' on 2019-01-04 at 6a07e5b905)
854
+ + tree-walk: support :(attr) matching
855
+ + dir.c: move, rename and export match_attrs()
856
+ + pathspec.h: clean up "extern" in function declarations
857
+ + tree-walk.c: make tree_entry_interesting() take an index
858
+ + tree.c: make read_tree*() take 'struct repository *'
859
860
The traversal over tree objects has learned to honor
861
":(attr:label)" pathspec match, which has been implemented only for
862
enumerating paths on the filesystem.
863
376
- Will merge to 'next'.
864
+ Will merge to 'master'.
865
866
867
* ab/commit-graph-progress-fix (2018-11-20) 1 commit
380
- - commit-graph: split up close_reachable() progress output
868
+ (merged to 'next' on 2019-01-04 at 405a1a2cf5)
869
+ + commit-graph: split up close_reachable() progress output
870
382
- Will merge to 'next'.
871
+ Will merge to 'master'.
872
873
874
* jn/unknown-index-extensions (2018-11-21) 2 commits
@@ -392,93 +881,32 @@ of the repositories listed at
881
Expecting a reroll.
882
883
395
-* en/fast-export-import (2018-11-17) 11 commits
396
- (merged to 'next' on 2018-12-28 at a1b09cf515)
397
- + fast-export: add a --show-original-ids option to show original names
398
- + fast-import: remove unmaintained duplicate documentation
399
- + fast-export: add --reference-excluded-parents option
400
- + fast-export: ensure we export requested refs
401
- + fast-export: when using paths, avoid corrupt stream with non-existent mark
402
- + fast-export: move commit rewriting logic into a function for reuse
403
- + fast-export: avoid dying when filtering by paths and old tags exist
404
- + fast-export: use value from correct enum
405
- + git-fast-export.txt: clarify misleading documentation about rev-list args
406
- + git-fast-import.txt: fix documentation for --quiet option
407
- + fast-export: convert sha1 to oid
408
-
409
- Originally merged to 'next' on 2018-11-18
410
-
411
- Small fixes and features for fast-export and fast-import, mostly on
412
- the fast-export side.
413
-
414
- Will merge to 'master'.
415
-
416
-
417
-* nd/checkout-dwim-fix (2018-11-14) 1 commit
418
- (merged to 'next' on 2018-12-28 at 3183c9305b)
419
- + checkout: disambiguate dwim tracking branches and local files
420
-
421
- Originally merged to 'next' on 2018-11-18
422
-
423
- "git checkout frotz" (without any double-dash) avoids ambiguity by
424
- making sure 'frotz' cannot be interpreted as a revision and as a
425
- path at the same time. This safety has been updated to check also
426
- a unique remote-tracking branch 'frotz' in a remote, when dwimming
427
- to create a local branch 'frotz' out of a remote-tracking branch
428
- 'frotz' from a remote.
429
-
430
- Will merge to 'master'.
431
-
432
-
884
* nd/checkout-noisy (2018-11-20) 2 commits
434
- - t0027: squelch checkout path run outside test_expect_* block
435
- - checkout: print something when checking out paths
885
+ (merged to 'next' on 2019-01-04 at 480172d3d7)
886
+ + t0027: squelch checkout path run outside test_expect_* block
887
+ + checkout: print something when checking out paths
888
889
"git checkout [<tree-ish>] path..." learned to report the number of
890
paths that have been checked out of the index or the tree-ish,
891
which gives it the same degree of noisy-ness as the case in which
892
the command checks out a branch.
893
442
- Will merge to 'next'.
443
-
444
-
445
-* sg/clone-initial-fetch-configuration (2018-11-16) 3 commits
446
- (merged to 'next' on 2018-12-28 at 82e104f221)
447
- + Documentation/clone: document ignored configuration variables
448
- + clone: respect additional configured fetch refspecs during initial fetch
449
- + clone: use a more appropriate variable name for the default refspec
450
-
451
- Originally merged to 'next' on 2018-11-18
452
-
453
- Refspecs configured with "git -c var=val clone" did not propagate
454
- to the resulting repository, which has been corrected.
455
-
894
Will merge to 'master'.
895
896
459
-* en/rebase-merge-on-sequencer (2018-11-08) 2 commits
460
- - rebase: implement --merge via git-rebase--interactive
897
+* en/rebase-merge-on-sequencer (2019-01-07) 8 commits
898
+ - rebase: implement --merge via the interactive machinery
899
+ - rebase: define linearization ordering and enforce it
900
+ - git-legacy-rebase: simplify unnecessary triply-nested if
901
- git-rebase, sequencer: extend --quiet option for the interactive machinery
902
+ - am, rebase--merge: do not overlook --skip'ed commits with post-rewrite
903
+ - t5407: add a test demonstrating how interactive handles --skip differently
904
+ - rebase: fix incompatible options error message
905
+ - rebase: make builtin and legacy script error messages the same
906
907
"git rebase --merge" as been reimplemented by reusing the internal
908
machinery used for "git rebase -i".
909
466
- Expecting a reroll.
467
- cf. <CABPp-BF8RupyfP69iqAVTXxEhBGyzVd-wUgp3y0pf+CbBFAQeg@mail.gmail.com>
468
-
469
-
470
-* fc/http-version (2018-11-09) 1 commit
471
- (merged to 'next' on 2018-12-28 at 56bcbb0fa9)
472
- + http: add support selecting http version
473
-
474
- Originally merged to 'next' on 2018-11-18
475
-
476
- The "http.version" configuration variable can be used with recent
477
- enough cURL library to force the version of HTTP used to talk when
478
- fetching and pushing.
479
-
480
- Will merge to 'master'.
481
-
910
911
* dl/remote-save-to-push (2018-12-11) 1 commit
912
- remote: add --save-to-push option to git remote set-url
@@ -490,28 +918,7 @@ of the repositories listed at
918
I am personally not yet quite convinced if this is worth pursuing.
919
920
493
-* jk/loose-object-cache (2018-11-24) 10 commits
494
- (merged to 'next' on 2018-12-28 at 5a5faf384e)
495
- + odb_load_loose_cache: fix strbuf leak
496
- + fetch-pack: drop custom loose object cache
497
- + sha1-file: use loose object cache for quick existence check
498
- + object-store: provide helpers for loose_objects_cache
499
- + sha1-file: use an object_directory for the main object dir
500
- + handle alternates paths the same as the main object dir
501
- + sha1_file_name(): overwrite buffer instead of appending
502
- + rename "alternate_object_database" to "object_directory"
503
- + submodule--helper: prefer strip_suffix() to ends_with()
504
- + fsck: do not reuse child_process structs
505
-
506
- Originally merged to 'next' on 2018-11-24
507
-
508
- Code clean-up with optimization for the codepath that checks
509
- (non-)existence of loose objects.
510
-
511
- Will merge to 'master'.
512
-
513
-
514
-* js/protocol-advertise-multi (2018-11-17) 1 commit
921
+* js/protocol-advertise-multi (2018-12-28) 1 commit
922
- protocol: advertise multiple supported versions
923
924
The transport layer has been updated so that the protocol version
@@ -519,151 +926,64 @@ of the repositories listed at
926
listing the protocol versions it is willing to talk, and the other
927
side choosing from one of them.
928
522
- Expecting a reroll.
523
- cf. <20181218230514.GH37614@google.com>
524
-
929
526
-* js/smart-http-detect-remote-error (2018-12-12) 4 commits
527
- - lib-httpd, t5551: check server-side HTTP errors
930
+* js/smart-http-detect-remote-error (2019-01-07) 3 commits
931
+ - remote-curl: die on server-side errors
932
- remote-curl: tighten "version 2" check for smart-http
933
- remote-curl: refactor smart-http discovery
530
- - pack-protocol.txt: accept error packets in any context
934
935
Some errors from the other side coming over smart HTTP transport
936
were not noticed, which has been corrected.
937
535
- Will merge to 'next'.
536
-
938
538
-* nb/branch-show-other-worktrees-head (2018-11-12) 2 commits
539
- - branch: mark and colorize a branch differently if it is checked out in a linked worktree
540
- - ref-filter: add worktree atom
939
+* nb/branch-show-other-worktrees-head (2019-01-07) 4 commits
940
+ - branch: add an extra verbose output displaying worktree path for checked out branch
941
+ - branch: mark and color a branch that is checked out in a linked worktree differently
942
+ - SQUASH???
943
+ - ref-filter: add worktreepath atom
944
945
"git branch --list" learned to show branches that are checked out
946
in other worktrees connected to the same repository prefixed with
947
'+', similar to the way the currently checked out branch is shown
948
with '*' in front.
949
+
950
547
- Expecting a reroll.
548
-
549
-
550
-* nd/the-index (2018-11-12) 22 commits
551
- (merged to 'next' on 2018-12-28 at 6bbd3befbe)
552
- + rebase-interactive.c: remove the_repository references
553
- + rerere.c: remove the_repository references
554
- + pack-*.c: remove the_repository references
555
- + pack-check.c: remove the_repository references
556
- + notes-cache.c: remove the_repository references
557
- + line-log.c: remove the_repository reference
558
- + diff-lib.c: remove the_repository references
559
- + delta-islands.c: remove the_repository references
560
- + cache-tree.c: remove the_repository references
561
- + bundle.c: remove the_repository references
562
- + branch.c: remove the_repository reference
563
- + bisect.c: remove the_repository reference
564
- + blame.c: remove implicit dependency the_repository
565
- + sequencer.c: remove implicit dependency on the_repository
566
- + sequencer.c: remove implicit dependency on the_index
567
- + transport.c: remove implicit dependency on the_index
568
- + notes-merge.c: remove implicit dependency the_repository
569
- + notes-merge.c: remove implicit dependency on the_index
570
- + list-objects.c: reduce the_repository references
571
- + list-objects-filter.c: remove implicit dependency on the_index
572
- + wt-status.c: remove implicit dependency the_repository
573
- + wt-status.c: remove implicit dependency on the_index
574
- (this branch is used by md/list-objects-filter-by-depth.)
575
-
576
- Originally merged to 'next' on 2018-11-18
577
-
578
- More codepaths become aware of working with in-core repository
579
- instance other than the default "the_repository".
580
-
581
- Will merge to 'master'.
582
-
583
-
584
-* ot/ref-filter-object-info (2018-11-24) 6 commits
585
- - ref-filter: replace unportable `%lld` format with %PRIdMAX
951
+* ot/ref-filter-object-info (2018-12-28) 6 commits
952
- ref-filter: add docs for new options
953
- ref-filter: add tests for deltabase
954
- ref-filter: add deltabase option
955
- ref-filter: add tests for objectsize:disk
956
+ - ref-filter: add check for negative file size
957
- ref-filter: add objectsize:disk option
958
959
The "--format=<placeholder>" option of for-each-ref, branch and tag
960
learned to show a few more traits of objects that can be learned by
961
the object_info API.
962
596
- Kicked out of 'next'; will replace with a reroll.
597
- cf. <01020167e063687c-37a43a09-0a5f-4335-8c21-ec15a0a67882-000000@eu-west-1.amazonses.com>
963
+ Will merge to 'next'.
964
965
966
* sb/diff-color-moved-config-option-fixup (2018-11-14) 1 commit
601
- - diff: align move detection error handling with other options
967
+ (merged to 'next' on 2019-01-04 at 46de5f42d1)
968
+ + diff: align move detection error handling with other options
969
970
Minor inconsistency fix.
971
605
- Will merge to 'next'.
606
-
607
-
608
-* ab/push-dwim-dst (2018-11-14) 7 commits
609
- (merged to 'next' on 2018-12-28 at d9f618de10)
610
- + push doc: document the DWYM behavior pushing to unqualified <dst>
611
- + push: test that <src> doesn't DWYM if <dst> is unqualified
612
- + push: add an advice on unqualified <dst> push
613
- + push: move unqualified refname error into a function
614
- + push: improve the error shown on unqualified <dst> push
615
- + i18n: remote.c: mark error(...) messages for translation
616
- + remote.c: add braces in anticipation of a follow-up change
617
-
618
- Originally merged to 'next' on 2018-11-18
619
-
620
- "git push $there $src:$dst" rejects when $dst is not a fully
621
- qualified refname and not clear what the end user meant. The
622
- codepath has been taught to give a clearer error message, and also
623
- guess where the push should go by taking the type of the pushed
624
- object into account (e.g. a tag object would want to go under
625
- refs/tags/).
626
-
972
Will merge to 'master'.
973
974
975
* md/list-lazy-objects-fix (2018-12-06) 1 commit
631
- - list-objects.c: don't segfault for missing cmdline objects
976
+ (merged to 'next' on 2019-01-04 at 93bd38fff9)
977
+ + list-objects.c: don't segfault for missing cmdline objects
978
633
- "git rev-list --exclude-promissor-objects" had to take an object
979
+ "git rev-list --exclude-promisor-objects" had to take an object
980
that does not exist locally (and is lazily available) from the
981
command line without barfing, but the code dereferenced NULL.
982
637
- Will merge to 'next'.
638
-
639
-
640
-* nd/i18n (2018-11-12) 16 commits
641
- (merged to 'next' on 2018-12-28 at 8e2de8338e)
642
- + fsck: mark strings for translation
643
- + fsck: reduce word legos to help i18n
644
- + parse-options.c: mark more strings for translation
645
- + parse-options.c: turn some die() to BUG()
646
- + parse-options: replace opterror() with optname()
647
- + repack: mark more strings for translation
648
- + remote.c: mark messages for translation
649
- + remote.c: turn some error() or die() to BUG()
650
- + reflog: mark strings for translation
651
- + read-cache.c: add missing colon separators
652
- + read-cache.c: mark more strings for translation
653
- + read-cache.c: turn die("internal error") to BUG()
654
- + attr.c: mark more string for translation
655
- + archive.c: mark more strings for translation
656
- + alias.c: mark split_cmdline_strerror() strings for translation
657
- + git.c: mark more strings for translation
658
-
659
- Originally merged to 'next' on 2018-11-18
660
-
661
- More _("i18n") markings.
662
-
983
Will merge to 'master'.
984
985
666
-* sb/more-repo-in-api (2018-11-14) 23 commits
986
+* sb/more-repo-in-api (2018-12-28) 23 commits
987
- t/helper/test-repository: celebrate independence from the_repository
988
- path.h: make REPO_GIT_PATH_FUNC repository agnostic
989
- commit: prepare free_commit_buffer and release_commit_memory for any repo
@@ -689,48 +1009,8 @@ of the repositories listed at
1009
- sha1_file: allow read_object to read objects in arbitrary repositories
1010
(this branch is used by jt/get-reference-with-commit-graph and md/list-objects-filter-by-depth.)
1011
692
- Originally merged to 'next' on 2018-11-19
693
-
1012
The in-core repository instances are passed through more codepaths.
1013
696
- Kicked out of 'next'; will replace with a reroll.
697
- cf. <20181215000942.46033-2-sbeller@google.com>
698
-
699
-
700
-* en/merge-path-collision (2018-12-01) 11 commits
701
- (merged to 'next' on 2018-12-28 at b50d3eee25)
702
- + t6036: avoid non-portable "cp -a"
703
- + merge-recursive: combine error handling
704
- + t6036, t6043: increase code coverage for file collision handling
705
- + merge-recursive: improve rename/rename(1to2)/add[/add] handling
706
- + merge-recursive: use handle_file_collision for add/add conflicts
707
- + merge-recursive: improve handling for rename/rename(2to1) conflicts
708
- + merge-recursive: fix rename/add conflict handling
709
- + merge-recursive: new function for better colliding conflict resolutions
710
- + merge-recursive: increase marker length with depth of recursion
711
- + t6036, t6042: testcases for rename collision of already conflicting files
712
- + t6042: add tests for consistency in file collision conflict handling
713
-
714
- Originally merged to 'next' on 2018-12-01
715
-
716
- Updates for corner cases in merge-recursive.
717
-
718
- Will merge to 'master'.
719
-
720
-
721
-* sd/stash-wo-user-name (2018-11-19) 1 commit
722
- (merged to 'next' on 2018-12-28 at 99197ef5a1)
723
- + stash: tolerate missing user identity
724
-
725
- Originally merged to 'next' on 2018-11-19
726
-
727
- A properly configured username/email is required under
728
- user.useConfigOnly in order to create commits; now "git stash"
729
- (even though it creates commit objects to represent stash entries)
730
- command is excempt from the requirement.
731
-
732
- Will merge to 'master'.
733
-
1014
1015
* bc/sha-256 (2018-11-14) 12 commits
1016
- hash: add an SHA-256 implementation using OpenSSL
@@ -849,36 +1129,37 @@ of the repositories listed at
1129
cf. <e5b2900a-0558-d3bf-8ea1-d526b078bbc2@talktalk.net>
1130
1131
852
-* ps/stash-in-c (2018-11-26) 22 commits
853
- . stash: replace all `write-tree` child processes with API calls
854
- . stash: optimize `get_untracked_files()` and `check_changes()`
855
- . stash: convert `stash--helper.c` into `stash.c`
856
- . stash: convert save to builtin
857
- . stash: make push -q quiet
858
- . stash: convert push to builtin
859
- . stash: convert create to builtin
860
- . stash: convert store to builtin
861
- . stash: convert show to builtin
862
- . stash: convert list to builtin
863
- . stash: convert pop to builtin
864
- . stash: convert branch to builtin
865
- . stash: convert drop and clear to builtin
866
- . stash: convert apply to builtin
867
- . stash: mention options in `show` synopsis
868
- . stash: add tests for `git stash show` config
869
- . stash: rename test cases to be more descriptive
870
- . t3903: modernize style
871
- . stash: improve option parsing test coverage
872
- . strbuf.c: add `strbuf_insertf()` and `strbuf_vinsertf()`
873
- . strbuf.c: add `strbuf_join_argv()`
874
- . sha1-name.c: add `get_oidf()` which acts like `get_oid()`
1132
+* ps/stash-in-c (2019-01-04) 27 commits
1133
+ - tests: add a special setup where stash.useBuiltin is off
1134
+ - stash: optionally use the scripted version again
1135
+ - stash: add back the original, scripted `git stash`
1136
+ - stash: convert `stash--helper.c` into `stash.c`
1137
+ - stash: replace all `write-tree` child processes with API calls
1138
+ - stash: optimize `get_untracked_files()` and `check_changes()`
1139
+ - stash: convert save to builtin
1140
+ - stash: make push -q quiet
1141
+ - stash: convert push to builtin
1142
+ - stash: convert create to builtin
1143
+ - stash: convert store to builtin
1144
+ - stash: convert show to builtin
1145
+ - stash: convert list to builtin
1146
+ - stash: convert pop to builtin
1147
+ - stash: convert branch to builtin
1148
+ - stash: convert drop and clear to builtin
1149
+ - stash: convert apply to builtin
1150
+ - stash: mention options in `show` synopsis
1151
+ - stash: add tests for `git stash show` config
1152
+ - stash: rename test cases to be more descriptive
1153
+ - t3903: modernize style
1154
+ - stash: improve option parsing test coverage
1155
+ - ident: add the ability to provide a "fallback identity"
1156
+ - strbuf.c: add `strbuf_insertf()` and `strbuf_vinsertf()`
1157
+ - strbuf.c: add `strbuf_join_argv()`
1158
+ - sha1-name.c: add `get_oidf()` which acts like `get_oid()`
1159
+ - Merge branch 'sd/stash-wo-user-name'
1160
1161
"git stash" rewritten in C.
1162
878
- Expecting a reroll, probably on top of the sd/stash-wo-user-name
879
- topic after it stabilizes, with an escape hatch like the one in
880
- "rebase in C".
881
-
1163
1164
* pw/add-p-select (2018-07-26) 4 commits
1165
- add -p: optimize line selection for short hunks