What's cooking (2018/11 #06)
Junio C Hamano committed
Nov 21, 2018 at 17:57 UTC
d696d380480c15566484ab7bb5d3045ce60fc32e
1 file changed
+578
-474
whats-cooking.txt
+578
-474
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Nov 2018, #05; Sat, 17)
4
-X-master-at: d166e6afe5f257217836ef24a73764eba390c58d
5
-X-next-at: 2fe598284e7f22561137927e87b2ef6d70e8ab2c
3
+Subject: What's cooking in git.git (Nov 2018, #06; Wed, 21)
4
+X-master-at: bb75be6cb916297f271c846f2f9caa3daaaec718
5
+X-next-at: 68bc7959f8dc2d629c09be1a52f1b95b977b3a13
6
7
-What's cooking in git.git (Nov 2018, #05; Sat, 17)
7
+What's cooking in git.git (Nov 2018, #06; Wed, 21)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -18,106 +18,156 @@ of the repositories listed at
18
http://git-blame.blogspot.com/p/git-public-repositories.html
19
20
--------------------------------------------------
21
-[New Topics]
21
+[Graduated to "master"]
22
23
-* ab/push-example-in-doc (2018-11-14) 1 commit
24
- - push: change needlessly ambiguous example in error
23
+* ab/dynamic-gettext-poison (2018-11-09) 2 commits
24
+ (merged to 'next' on 2018-11-18 at 13247a3be6)
25
+ + Makefile: ease dynamic-gettext-poison transition
26
+ + i18n: make GETTEXT_POISON a runtime option
27
26
- An error message that sugggests how to give correct arguments to
27
- "git push" has been updated.
28
+ Our testing framework uses a special i18n "poisoned localization"
29
+ feature to find messages that ought to stay constant but are
30
+ incorrectly marked to be translated. This feature has been made
31
+ into a runtime option (it used to be a compile-time option).
32
29
- Will merge to 'next'.
33
34
+* ab/range-diff-no-patch (2018-11-14) 3 commits
35
+ (merged to 'next' on 2018-11-17 at c42e0891d0)
36
+ + range-diff: make diff option behavior (e.g. --stat) consistent
37
+ + range-diff: fix regression in passing along diff options
38
+ + range-diff doc: add a section about output stability
39
32
-* dd/poll-dot-h (2018-11-14) 1 commit
33
- - git-compat-util: prefer poll.h to sys/poll.h
40
+ The "--no-patch" option, which can be used to get a high-level
41
+ overview without the actual line-by-line patch difference shown, of
42
+ the "range-diff" command was earlier broken, which has been
43
+ corrected.
44
35
- A build update.
45
37
- Will merge to 'next'.
46
+* ab/rebase-in-c-escape-hatch (2018-11-16) 2 commits
47
+ (merged to 'next' on 2018-11-17 at a01be221c7)
48
+ + tests: add a special setup where rebase.useBuiltin is off
49
+ + rebase doc: document rebase.useBuiltin
50
51
+ The recently merged "rebase in C" has an escape hatch to use the
52
+ scripted version when necessary, but it hasn't been documented,
53
+ which has been corrected.
54
40
-* en/fast-export-import (2018-11-17) 11 commits
41
- - fast-export: add a --show-original-ids option to show original names
42
- - fast-import: remove unmaintained duplicate documentation
43
- - fast-export: add --reference-excluded-parents option
44
- - fast-export: ensure we export requested refs
45
- - fast-export: when using paths, avoid corrupt stream with non-existent mark
46
- - fast-export: move commit rewriting logic into a function for reuse
47
- - fast-export: avoid dying when filtering by paths and old tags exist
48
- - fast-export: use value from correct enum
49
- - git-fast-export.txt: clarify misleading documentation about rev-list args
50
- - git-fast-import.txt: fix documentation for --quiet option
51
- - fast-export: convert sha1 to oid
55
53
- Small fixes and features for fast-export and fast-import, mostly on
54
- the fast-export side.
56
+* ag/p3400-force-checkout (2018-11-12) 1 commit
57
+ (merged to 'next' on 2018-11-17 at 87ff48d52a)
58
+ + p3400: replace calls to `git checkout -b' by `git checkout -B'
59
56
- Will merge to 'next'.
60
+ Perf test tweak.
61
62
59
-* js/mingw-create-hard-link (2018-11-14) 1 commit
60
- (merged to 'next' on 2018-11-17 at 27f866db16)
61
- + mingw: use `CreateHardLink()` directly
63
+* cb/notes-freeing-always-null-fix (2018-11-13) 1 commit
64
+ (merged to 'next' on 2018-11-17 at 47aeec5fc9)
65
+ + builtin/notes: remove unnecessary free
66
63
- Windows update.
67
+ Code cleanup.
68
65
- Will merge to 'master'.
69
70
+* dd/poll-dot-h (2018-11-14) 1 commit
71
+ (merged to 'next' on 2018-11-18 at b6745f3308)
72
+ + git-compat-util: prefer poll.h to sys/poll.h
73
68
-* js/test-git-installed (2018-11-16) 5 commits
69
- - tests: explicitly use `git.exe` on Windows
70
- - tests: do not require Git to be built when testing an installed Git
71
- - t/lib-gettext: test installed git-sh-i18n if GIT_TEST_INSTALLED is set
72
- - tests: respect GIT_TEST_INSTALLED when initializing repositories
73
- - tests: fix GIT_TEST_INSTALLED's PATH to include t/helper/
74
+ A build update.
75
75
- Update the "test installed Git" mode of our test suite to work better.
76
77
- Will merge to 'next'.
77
+* ds/push-squelch-ambig-warning (2018-11-07) 1 commit
78
+ (merged to 'next' on 2018-11-18 at 5e8b3db129)
79
+ + pack-objects: ignore ambiguous object warnings
80
81
+ "git push" used to check ambiguities between object-names and
82
+ refnames while processing the list of refs' old and new values,
83
+ which was unnecessary (as it knew that it is feeding raw object
84
+ names). This has been optimized out.
85
80
-* lj/mingw-pthread-cond (2018-11-14) 1 commit
81
- (merged to 'next' on 2018-11-17 at 46abe4100d)
82
- + win32: replace pthread_cond_*() with much simpler code
86
84
- Code simplification.
87
+* ds/reachable-topo-order (2018-11-02) 7 commits
88
+ (merged to 'next' on 2018-11-13 at 4155d01aee)
89
+ + t6012: make rev-list tests more interesting
90
+ + revision.c: generation-based topo-order algorithm
91
+ + commit/revisions: bookkeeping before refactoring
92
+ + revision.c: begin refactoring --topo-order logic
93
+ + test-reach: add rev-list tests
94
+ + test-reach: add run_three_modes method
95
+ + prio-queue: add 'peek' operation
96
86
- Will merge to 'master'.
97
+ The revision walker machinery learned to take advantage of the
98
+ commit generation numbers stored in the commit-graph file.
99
100
89
-* nd/checkout-dwim-fix (2018-11-14) 1 commit
90
- - checkout: disambiguate dwim tracking branches and local files
101
+* jk/close-duped-fd-before-unlock-for-bundle (2018-11-17) 1 commit
102
+ (merged to 'next' on 2018-11-17 at 2fe598284e)
103
+ + bundle: dup() output descriptor closer to point-of-use
104
92
- "git checkout frotz" (without any double-dash) avoids ambiguity by
93
- making sure 'frotz' cannot be interpreted as a revision and as a
94
- path at the same time. This safety has been updated to check also
95
- a unique remote-tracking branch 'frotz' in a remote, when dwimming
96
- to create a local branch 'frotz' out of a remote-tracking branch
97
- 'frotz' from a remote.
105
+ When "git bundle" aborts due to an empty commit ranges
106
+ (i.e. resulting in an empty pack), it left a file descriptor to an
107
+ lockfile open, which resulted in leftover lockfile on Windows where
108
+ you cannot remove a file with an open file descriptor. This has
109
+ been corrected.
110
99
- Will merge to 'next'.
111
112
+* jk/curl-ldflags (2018-11-05) 1 commit
113
+ (merged to 'next' on 2018-11-13 at d1387a3aa0)
114
+ + build: link with curl-defined linker flags
115
102
-* nd/checkout-noisy (2018-11-14) 1 commit
103
- - checkout: print something when checking out paths
116
+ The way -lcurl library gets linked has been simplified by taking
117
+ advantage of the fact that we can just ask curl-config command how.
118
105
- "git checkout [<tree-ish>] path..." learned to report the number of
106
- paths that have been checked out of the index or the tree-ish,
107
- which gives it the same degree of noisy-ness as the case in which
108
- the command checks out a branch.
119
120
+* jk/unused-parameter-fixes (2018-11-06) 14 commits
121
+ (merged to 'next' on 2018-11-13 at 8d3625b4ae)
122
+ + midx: double-check large object write loop
123
+ + assert NOARG/NONEG behavior of parse-options callbacks
124
+ + parse-options: drop OPT_DATE()
125
+ + apply: return -1 from option callback instead of calling exit(1)
126
+ + cat-file: report an error on multiple --batch options
127
+ + tag: mark "--message" option with NONEG
128
+ + show-branch: mark --reflog option as NONEG
129
+ + format-patch: mark "--no-numbered" option with NONEG
130
+ + status: mark --find-renames option with NONEG
131
+ + cat-file: mark batch options with NONEG
132
+ + pack-objects: mark index-version option as NONEG
133
+ + ls-files: mark exclude options as NONEG
134
+ + am: handle --no-patch-format option
135
+ + apply: mark include/exclude options as NONEG
136
+
137
+ Various functions have been audited for "-Wunused-parameter" warnings
138
+ and bugs in them got fixed.
139
111
-* ab/rebase-in-c-escape-hatch (2018-11-16) 2 commits
112
- (merged to 'next' on 2018-11-17 at a01be221c7)
113
- + tests: add a special setup where rebase.useBuiltin is off
114
- + rebase doc: document rebase.useBuiltin
140
116
- The recently merged "rebase in C" has an escape hatch to use the
117
- scripted version when necessary, but it hasn't been documented,
118
- which has been corrected.
141
+* jk/verify-sig-merge-into-void (2018-11-07) 3 commits
142
+ (merged to 'next' on 2018-11-13 at a207be60ed)
143
+ + pull: handle --verify-signatures for unborn branch
144
+ + merge: handle --verify-signatures for unborn branch
145
+ + merge: extract verify_merge_signature() helper
146
120
- Will merge to 'master'.
147
+ "git merge" and "git pull" that merges into an unborn branch used
148
+ to completely ignore "--verify-signatures", which has been
149
+ corrected.
150
+
151
+
152
+* js/apply-recount-allow-noop (2018-11-13) 1 commit
153
+ (merged to 'next' on 2018-11-17 at e413fa105f)
154
+ + apply --recount: allow "no-op hunks"
155
+
156
+ When editing a patch in a "git add -i" session, a hunk could be
157
+ made to no-op. The "git apply" program used to reject a patch with
158
+ such a no-op hunk to catch user mistakes, but it is now updated to
159
+ explicitly allow a no-op hunk in an edited patch.
160
+
161
+
162
+* js/builtin-rebase-perf-fix (2018-11-13) 3 commits
163
+ (merged to 'next' on 2018-11-17 at 9e9db8c8e1)
164
+ + built-in rebase: reinstate `checkout -q` behavior where appropriate
165
+ + rebase: prepare reset_head() for more flags
166
+ + rebase: consolidate clean-up code before leaving reset_head()
167
+
168
+ Code clean-up with correction to make the reimplemented "git
169
+ rebase" a more faithful rewrite of the original, which also regains
170
+ performance.
171
172
173
* js/config-sequence (2018-11-16) 1 commit
@@ -127,8 +177,6 @@ of the repositories listed at
177
A sanity check for start-up sequence has been added in the config
178
API codepath.
179
130
- Will merge to 'master'.
131
-
180
181
* js/fuzz-cxxflags (2018-11-16) 1 commit
182
(merged to 'next' on 2018-11-17 at 5e589a5237)
@@ -137,7 +185,20 @@ of the repositories listed at
185
The build procedure to link for fuzzing test has been made
186
customizable with a new Makefile variable.
187
140
- Will merge to 'master'.
188
+
189
+* js/mailmap (2018-11-12) 1 commit
190
+ (merged to 'next' on 2018-11-17 at 673bfc4cfa)
191
+ + Update .mailmap
192
+
193
+ Update the mailmap to unify multiple entries for the authors with
194
+ commits since v2.10.
195
+
196
+
197
+* js/mingw-create-hard-link (2018-11-14) 1 commit
198
+ (merged to 'next' on 2018-11-17 at 27f866db16)
199
+ + mingw: use `CreateHardLink()` directly
200
+
201
+ Windows update.
202
203
204
* js/mingw-msdn-url (2018-11-16) 1 commit
@@ -146,7 +207,12 @@ of the repositories listed at
207
208
The URL to an MSDN page in a comment has been updated.
209
149
- Will merge to 'master'.
210
+
211
+* js/mingw-res-rebuild (2018-11-07) 1 commit
212
+ (merged to 'next' on 2018-11-13 at fb736827d1)
213
+ + Windows: force-recompile git.res for differing architectures
214
+
215
+ Windows build update.
216
217
218
* js/rebase-am-options (2018-11-16) 2 commits
@@ -158,447 +224,516 @@ of the repositories listed at
224
meant for underlying "git am" has been revamped, which fixed for
225
options with parameters that were not passed correctly.
226
161
- Will merge to 'master'.
227
228
+* js/rebase-autostash-detach-fix (2018-11-08) 2 commits
229
+ (merged to 'next' on 2018-11-17 at 15957b4a5a)
230
+ + built-in rebase --autostash: leave the current branch alone if possible
231
+ + built-in rebase: demonstrate regression with --autostash
232
164
-* nd/doc-extensions (2018-11-16) 1 commit
165
- (merged to 'next' on 2018-11-17 at 09306064d5)
166
- + doc: move extensions.worktreeConfig to the right place
233
+ "git rebase --autostash" did not correctly re-attach the HEAD at times.
234
168
- Doc update.
235
170
- Will merge to 'master'.
236
+* js/rebase-r-and-merge-head (2018-11-13) 5 commits
237
+ (merged to 'next' on 2018-11-17 at 6bb27df7b1)
238
+ + status: rebase and merge can be in progress at the same time
239
+ + built-in rebase --skip/--abort: clean up stale .git/<name> files
240
+ + rebase -i: include MERGE_HEAD into files to clean up
241
+ + rebase -r: do not write MERGE_HEAD unless needed
242
+ + rebase -r: demonstrate bug with conflicting merges
243
244
+ Bugfix for the recently graduated "git rebase --rebase-merges".
245
173
-* sg/clone-initial-fetch-configuration (2018-11-16) 3 commits
174
- - Documentation/clone: document ignored configuration variables
175
- - clone: respect additional configured fetch refspecs during initial fetch
176
- - clone: use a more appropriate variable name for the default refspec
246
178
- Refspecs configured with "git -c var=val clone" did not propagate
179
- to the resulting repository, which has been corrected.
247
+* js/test-git-installed (2018-11-16) 5 commits
248
+ (merged to 'next' on 2018-11-18 at 61474ba19e)
249
+ + tests: explicitly use `git.exe` on Windows
250
+ + tests: do not require Git to be built when testing an installed Git
251
+ + t/lib-gettext: test installed git-sh-i18n if GIT_TEST_INSTALLED is set
252
+ + tests: respect GIT_TEST_INSTALLED when initializing repositories
253
+ + tests: fix GIT_TEST_INSTALLED's PATH to include t/helper/
254
181
- Will merge to 'next'.
255
+ Update the "test installed Git" mode of our test suite to work better.
256
257
184
-* sg/ref-filter-wo-repository (2018-11-16) 1 commit
185
- (merged to 'next' on 2018-11-17 at c0bec63990)
186
- + ref-filter: don't look for objects when outside of a repository
258
+* lj/mingw-pthread-cond (2018-11-14) 1 commit
259
+ (merged to 'next' on 2018-11-17 at 46abe4100d)
260
+ + win32: replace pthread_cond_*() with much simpler code
261
188
- "git ls-remote --sort=<thing>" can feed an object that is not yet
189
- available into the comparison machinery and segfault, which has
190
- been corrected to check such a request upfront and reject it.
262
+ Code simplification.
263
192
- Will merge to 'master'.
264
265
+* mg/gpg-fingerprint-test (2018-11-05) 2 commits
266
+ (merged to 'next' on 2018-11-13 at 71f11020c4)
267
+ + t/t7510-signed-commit.sh: add signing subkey to Eris Discordia key
268
+ + t/t7510-signed-commit.sh: Add %GP to custom format checks
269
195
-* cc/shared-index-permbits (2018-11-17) 1 commit
196
- - read-cache: write all indexes with the same permissions
270
+ Add a few tests for a topic already in 'master'.
271
198
- The way .git/index and .git/sharedindex* files were initially
199
- created gave these files different perm bits until they were
200
- adjusted for shared repository settings. This was made consistent.
272
202
- Expecting a reroll.
273
+* nd/command-list-gen-fix (2018-11-12) 1 commit
274
+ (merged to 'next' on 2018-11-17 at a6ff6baa0b)
275
+ + build: fix broken command-list.h generation with core.autocrlf
276
277
+ Build tweak.
278
205
-* jk/close-duped-fd-before-unlock-for-bundle (2018-11-17) 1 commit
206
- (merged to 'next' on 2018-11-17 at 2fe598284e)
207
- + bundle: dup() output descriptor closer to point-of-use
279
209
- When "git bundle" aborts due to an empty commit ranges
210
- (i.e. resulting in an empty pack), it left a file descriptor to an
211
- lockfile open, which resulted in leftover lockfile on Windows where
212
- you cannot remove a file with an open file descriptor. This has
213
- been corrected.
280
+* nd/doc-extensions (2018-11-16) 1 commit
281
+ (merged to 'next' on 2018-11-17 at 09306064d5)
282
+ + doc: move extensions.worktreeConfig to the right place
283
215
- Will merge to 'master'.
284
+ Doc update.
285
217
---------------------------------------------------
218
-[Stalled]
286
220
-* lt/date-human (2018-07-09) 1 commit
221
- - Add 'human' date format
287
+* nd/format-patch-cover-letter-stat-width (2018-11-13) 1 commit
288
+ (merged to 'next' on 2018-11-18 at 65a464977d)
289
+ + format-patch: respect --stat in cover letter's diffstat
290
223
- A new date format "--date=human" that morphs its output depending
224
- on how far the time is from the current time has been introduced.
225
- "--date=auto" can be used to use this new format when the output is
226
- goint to the pager or to the terminal and otherwise the default
227
- format.
291
+ "git format-patch --stat=<width>" can be used to specify the width
292
+ used by the diffstat (shown in the cover letter).
293
229
---------------------------------------------------
230
-[Cooking]
294
232
-* js/rebase-autostash-detach-fix (2018-11-08) 2 commits
233
- (merged to 'next' on 2018-11-17 at 15957b4a5a)
234
- + built-in rebase --autostash: leave the current branch alone if possible
235
- + built-in rebase: demonstrate regression with --autostash
295
+* nd/pthreads (2018-11-05) 14 commits
296
+ (merged to 'next' on 2018-11-13 at bb6914b3f8)
297
+ + Clean up pthread_create() error handling
298
+ + read-cache.c: initialize copy_len to shut up gcc 8
299
+ + read-cache.c: reduce branching based on HAVE_THREADS
300
+ + read-cache.c: remove #ifdef NO_PTHREADS
301
+ + pack-objects: remove #ifdef NO_PTHREADS
302
+ + preload-index.c: remove #ifdef NO_PTHREADS
303
+ + grep: clean up num_threads handling
304
+ + grep: remove #ifdef NO_PTHREADS
305
+ + attr.c: remove #ifdef NO_PTHREADS
306
+ + name-hash.c: remove #ifdef NO_PTHREADS
307
+ + index-pack: remove #ifdef NO_PTHREADS
308
+ + send-pack.c: move async's #ifdef NO_PTHREADS back to run-command.c
309
+ + run-command.h: include thread-utils.h instead of pthread.h
310
+ + thread-utils: macros to unconditionally compile pthreads API
311
237
- "git rebase --autostash" did not correctly re-attach the HEAD at times.
312
+ The codebase has been cleaned up to reduce "#ifndef NO_PTHREADS".
313
239
- Will merge to 'master'.
314
315
+* ra/rev-parse-exclude-glob (2018-11-13) 2 commits
316
+ (merged to 'next' on 2018-11-17 at 396dd7a2c2)
317
+ + refs: fix some exclude patterns being ignored
318
+ + refs: show --exclude failure with --branches/tags/remotes=glob
319
242
-* en/rebase-merge-on-sequencer (2018-11-08) 2 commits
243
- - rebase: implement --merge via git-rebase--interactive
244
- - git-rebase, sequencer: extend --quiet option for the interactive machinery
320
+ "rev-parse --exclude=<pattern> --branches=<pattern>" etc. did not
321
+ quite work, which has been corrected.
322
246
- "git rebase --merge" as been reimplemented by reusing the internal
247
- machinery used for "git rebase -i".
323
324
+* sb/cocci-pending (2018-11-14) 1 commit
325
+ (merged to 'next' on 2018-11-18 at dd271722d3)
326
+ + coccicheck: introduce 'pending' semantic patches
327
250
-* js/mailmap (2018-11-12) 1 commit
251
- (merged to 'next' on 2018-11-17 at 673bfc4cfa)
252
- + Update .mailmap
328
+ A coding convention around the Coccinelle semantic patches to have
329
+ two classes to ease code migration process has been proposed and
330
+ its support has been added to the Makefile.
331
254
- Update the mailmap to unify multiple entries for the authors with
255
- commits since v2.10.
332
257
- Will merge to 'master'.
333
+* sg/ref-filter-wo-repository (2018-11-16) 1 commit
334
+ (merged to 'next' on 2018-11-17 at c0bec63990)
335
+ + ref-filter: don't look for objects when outside of a repository
336
337
+ "git ls-remote --sort=<thing>" can feed an object that is not yet
338
+ available into the comparison machinery and segfault, which has
339
+ been corrected to check such a request upfront and reject it.
340
260
-* fc/http-version (2018-11-09) 1 commit
261
- - http: add support selecting http version
341
263
- The "http.version" configuration variable can be used with recent
264
- enough cURL library to force the version of HTTP used to talk when
265
- fetching and pushing.
342
+* tb/print-size-t-with-uintmax-format (2018-11-12) 1 commit
343
+ (merged to 'next' on 2018-11-18 at 752e51c7ed)
344
+ + Upcast size_t variables to uintmax_t when printing
345
+
346
+ Code preparation to replace ulong vars with size_t vars where
347
+ appropriate.
348
+
349
+
350
+* tb/xcurl-off-t (2018-11-12) 1 commit
351
+ (merged to 'next' on 2018-11-18 at ac2a4bc14a)
352
+ + remote-curl.c: xcurl_off_t is not portable (on 32 bit platfoms)
353
+
354
+ The xcurl_off_t() helper function is used to cast size_t to
355
+ curl_off_t, but some compilers gave warnings against the code to
356
+ ensure the casting is done without wraparound, when size_t is
357
+ narrower than curl_off_t. This warning has been squelched.
358
+
359
+--------------------------------------------------
360
+[New Topics]
361
+
362
+* dl/merge-cleanup-scissors-fix (2018-11-21) 2 commits
363
+ - merge: add scissors line on merge conflict
364
+ - t7600: clean up 'merge --squash c3 with c7' test
365
+
366
+ The list of conflicted paths shown in the editor while concluding a
367
+ conflicted merge was shown above the scissors line when the
368
+ clean-up mode is set to "scissors", even though it was commented
369
+ out just like the list of updated paths and other information to
370
+ help the user explain the merge better.
371
372
Will merge to 'next'.
373
374
270
-* ag/p3400-force-checkout (2018-11-12) 1 commit
271
- (merged to 'next' on 2018-11-17 at 87ff48d52a)
272
- + p3400: replace calls to `git checkout -b' by `git checkout -B'
375
+* aw/pretty-trailers (2018-11-19) 5 commits
376
+ - pretty: add support for separator option in %(trailers)
377
+ - strbuf: separate callback for strbuf_expand:ing literals
378
+ - pretty: add support for "valueonly" option in %(trailers)
379
+ - pretty: allow showing specific trailers
380
+ - pretty: single return path in %(trailers) handling
381
274
- Perf test tweak.
382
+ The %(trailers) formatter in "git log --format=..." now allows to
383
+ optionally pick trailers selectively by keyword, show only values,
384
+ etc.
385
276
- Will merge to 'master'.
386
387
+* nd/attr-pathspec-in-tree-walk (2018-11-19) 5 commits
388
+ - tree-walk: support :(attr) matching
389
+ - dir.c: move, rename and export match_attrs()
390
+ - pathspec.h: clean up "extern" in function declarations
391
+ - tree-walk.c: make tree_entry_interesting() take an index
392
+ - tree.c: make read_tree*() take 'struct repository *'
393
279
-* cb/notes-freeing-always-null-fix (2018-11-13) 1 commit
280
- (merged to 'next' on 2018-11-17 at 47aeec5fc9)
281
- + builtin/notes: remove unnecessary free
394
+ The traversal over tree objects has learned to honor
395
+ ":(attr:label)" pathspec match, which has been implemented only for
396
+ enumerating paths on the filesystem.
397
283
- Code cleanup.
398
285
- Will merge to 'master'.
399
+* ab/commit-graph-progress-fix (2018-11-20) 1 commit
400
+ - commit-graph: split up close_reachable() progress output
401
402
288
-* dl/remote-save-to-push (2018-11-13) 1 commit
289
- - remote: add --save-to-push option to git remote set-url
403
+* sg/test-BUG (2018-11-20) 1 commit
404
+ - tests: send "bug in the test script" errors to the script's stderr
405
291
- "git remote set-url" learned a new option that moves existing value
292
- of the URL field to pushURL field of the remote before replacing
293
- the URL field with a new value.
406
+ test framework has been updated to make a bug in the test script
407
+ (as opposed to bugs in Git that are discovered by running the
408
+ tests) stand out more prominently.
409
295
- Undecided.
410
+ Will merge to 'next'.
411
412
298
-* jk/loose-object-cache (2018-11-13) 9 commits
299
- - fetch-pack: drop custom loose object cache
300
- - sha1-file: use loose object cache for quick existence check
301
- - object-store: provide helpers for loose_objects_cache
302
- - sha1-file: use an object_directory for the main object dir
303
- - handle alternates paths the same as the main object dir
304
- - sha1_file_name(): overwrite buffer instead of appending
305
- - rename "alternate_object_database" to "object_directory"
306
- - submodule--helper: prefer strip_suffix() to ends_with()
307
- - fsck: do not reuse child_process structs
413
+* sg/test-cmp-rev (2018-11-20) 1 commit
414
+ - test-lib-functions: make 'test_cmp_rev' more informative on failure
415
309
- Code clean-up with optimization for the codepath that checks
310
- (non-)existence of loose objects.
416
+ Test framework update.
417
418
Will merge to 'next'.
419
420
315
-* js/apply-recount-allow-noop (2018-11-13) 1 commit
316
- (merged to 'next' on 2018-11-17 at e413fa105f)
317
- + apply --recount: allow "no-op hunks"
421
+* ss/msvc-strcasecmp (2018-11-20) 1 commit
422
+ - msvc: directly use MS version (_stricmp) of strcasecmp
423
319
- When editing a patch in a "git add -i" session, a hunk could be
320
- made to no-op. The "git apply" program used to reject a patch with
321
- such a no-op hunk to catch user mistakes, but it is now updated to
322
- explicitly allow a no-op hunk in an edited patch.
424
+ MSVC update.
425
+
426
+ Will merge to 'next'.
427
+
428
+
429
+* cc/delta-islands (2018-11-21) 3 commits
430
+ (merged to 'next' on 2018-11-21 at 3bac399f83)
431
+ + pack-objects: fix off-by-one in delta-island tree-depth computation
432
+ + pack-objects: zero-initialize tree_depth/layer arrays
433
+ + pack-objects: fix tree_depth and layer invariants
434
+
435
+ A few issues in the implementation of "delta-islands" feature has
436
+ been corrected.
437
438
Will merge to 'master'.
439
440
327
-* js/builtin-rebase-perf-fix (2018-11-13) 3 commits
328
- (merged to 'next' on 2018-11-17 at 9e9db8c8e1)
329
- + built-in rebase: reinstate `checkout -q` behavior where appropriate
330
- + rebase: prepare reset_head() for more flags
331
- + rebase: consolidate clean-up code before leaving reset_head()
441
+* jn/eoie-ieot (2018-11-21) 3 commits
442
+ (merged to 'next' on 2018-11-21 at 9eb98a38f0)
443
+ + index: make index.threads=true enable ieot and eoie
444
+ + ieot: default to not writing IEOT section
445
+ + eoie: default to not writing EOIE section
446
+ (this branch is used by jn/unknown-index-extensions.)
447
333
- Code clean-up with correction to make the reimplemented "git
334
- rebase" a more faithful rewrite of the original, which also regains
335
- performance.
448
+ As the warning message shown by existing versions of Git for
449
+ unknown index extensions is a bit too alarming, two new extensions
450
+ are held back and not written by default for the upcoming release.
451
452
Will merge to 'master'.
453
454
340
-* js/protocol-advertise-multi (2018-11-17) 1 commit
341
- - protocol: advertise multiple supported versions
455
+* jn/unknown-index-extensions (2018-11-21) 2 commits
456
+ - index: offer advice for unknown index extensions
457
+ - index: do not warn about unrecognized extensions
458
+ (this branch uses jn/eoie-ieot.)
459
343
- The transport layer has been updated so that the protocol version
344
- used can be negotiated between the parties, by the initiator
345
- listing the protocol versions it is willing to talk, and the other
346
- side choosing from one of them.
460
+ A bit too alarming warning given when unknown index extensions
461
+ exist is getting revamped.
462
463
+ Expecting a reroll.
464
349
-* js/rebase-r-and-merge-head (2018-11-13) 5 commits
350
- (merged to 'next' on 2018-11-17 at 6bb27df7b1)
351
- + status: rebase and merge can be in progress at the same time
352
- + built-in rebase --skip/--abort: clean up stale .git/<name> files
353
- + rebase -i: include MERGE_HEAD into files to clean up
354
- + rebase -r: do not write MERGE_HEAD unless needed
355
- + rebase -r: demonstrate bug with conflicting merges
465
357
- Bugfix for the recently graduated "git rebase --rebase-merges".
466
+* js/builtin-rebase-perf-fix-err-fix (2018-11-21) 1 commit
467
+ (merged to 'next' on 2018-11-21 at 9c351cfc4a)
468
+ + rebase: warn about the correct tree's OID
469
+
470
+ The object name of the tree reported in a recently added error
471
+ message was wrong, which has been corrected.
472
473
Will merge to 'master'.
474
475
362
-* js/smart-http-detect-remote-error (2018-11-17) 3 commits
363
- - remote-curl: die on server-side errors
364
- - remote-curl: tighten "version 2" check for smart-http
365
- - remote-curl: refactor smart-http discovery
476
+* js/rebase-am-options-fix (2018-11-21) 1 commit
477
+ (merged to 'next' on 2018-11-21 at 4da85e17c2)
478
+ + legacy-rebase: backport -C<n> and --whitespace=<option> checks
479
367
- Some errors from the other side coming over smart HTTP transport
368
- were not noticed, which has been corrected.
480
+ Recently, built-in "rebase" tightened the error checking for a few
481
+ options that are passed to underlying "am", but we forgot to make
482
+ the matching change to the scripted version, which has been
483
+ corrected.
484
370
- Will merge to 'next'.
485
+ Will merge to 'master'.
486
487
373
-* nb/branch-show-other-worktrees-head (2018-11-12) 2 commits
374
- - branch: mark and colorize a branch differently if it is checked out in a linked worktree
375
- - ref-filter: add worktree atom
488
+* nd/clone-case-smashing-warning (2018-11-21) 1 commit
489
+ (merged to 'next' on 2018-11-21 at 68bc7959f8)
490
+ + clone: fix colliding file detection on APFS
491
377
- "git branch --list" learned to show branches that are checked out
378
- in other worktrees connected to the same repository prefixed with
379
- '+', similar to the way the currently checked out branch is shown
380
- with '*' in front.
492
+ Recently added check for case smashing filesystems did not
493
+ correctly utilize the cached stat information, leading to false
494
+ breakage detected by our test suite, which has been corrected.
495
382
- Expecting a reroll.
496
+ Will merge to 'master'.
497
498
385
-* nd/command-list-gen-fix (2018-11-12) 1 commit
386
- (merged to 'next' on 2018-11-17 at a6ff6baa0b)
387
- + build: fix broken command-list.h generation with core.autocrlf
499
+* tz/build-tech-midx-doc (2018-11-21) 1 commit
500
+ (merged to 'next' on 2018-11-21 at 15dd462db0)
501
+ + Documentation: build technical/multi-pack-index
502
389
- Build tweak.
503
+ A documentation page that is referred to by other pages was not
504
+ built by mistake, which has been corrected.
505
506
Will merge to 'master'.
507
508
+--------------------------------------------------
509
+[Stalled]
510
394
-* nd/format-patch-cover-letter-stat-width (2018-11-13) 1 commit
395
- - format-patch: respect --stat in cover letter's diffstat
396
-
397
- "git format-patch --stat=<width>" can be used to specify the width
398
- used by the diffstat (shown in the cover letter).
511
+* lt/date-human (2018-07-09) 1 commit
512
+ - Add 'human' date format
513
400
- Will merge to 'next'.
514
+ A new date format "--date=human" that morphs its output depending
515
+ on how far the time is from the current time has been introduced.
516
+ "--date=auto" can be used to use this new format when the output is
517
+ goint to the pager or to the terminal and otherwise the default
518
+ format.
519
520
+--------------------------------------------------
521
+[Cooking]
522
403
-* nd/the-index (2018-11-12) 22 commits
404
- - rebase-interactive.c: remove the_repository references
405
- - rerere.c: remove the_repository references
406
- - pack-*.c: remove the_repository references
407
- - pack-check.c: remove the_repository references
408
- - notes-cache.c: remove the_repository references
409
- - line-log.c: remove the_repository reference
410
- - diff-lib.c: remove the_repository references
411
- - delta-islands.c: remove the_repository references
412
- - cache-tree.c: remove the_repository references
413
- - bundle.c: remove the_repository references
414
- - branch.c: remove the_repository reference
415
- - bisect.c: remove the_repository reference
416
- - blame.c: remove implicit dependency the_repository
417
- - sequencer.c: remove implicit dependency on the_repository
418
- - sequencer.c: remove implicit dependency on the_index
419
- - transport.c: remove implicit dependency on the_index
420
- - notes-merge.c: remove implicit dependency the_repository
421
- - notes-merge.c: remove implicit dependency on the_index
422
- - list-objects.c: reduce the_repository references
423
- - list-objects-filter.c: remove implicit dependency on the_index
424
- - wt-status.c: remove implicit dependency the_repository
425
- - wt-status.c: remove implicit dependency on the_index
523
+* ab/push-example-in-doc (2018-11-14) 1 commit
524
+ (merged to 'next' on 2018-11-18 at 8fd935a19c)
525
+ + push: change needlessly ambiguous example in error
526
427
- More codepaths become aware of working with in-core repository
428
- instance other than the default "the_repository".
527
+ An error message that sugggests how to give correct arguments to
528
+ "git push" has been updated.
529
430
- Will merge to 'next'.
530
+ Will cook in 'next'.
531
532
433
-* ot/ref-filter-object-info (2018-11-12) 5 commits
434
- - ref-filter: add docs for new options
435
- - ref-filter: add tests for deltabase
436
- - ref-filter: add deltabase option
437
- - ref-filter: add tests for objectsize:disk
438
- - ref-filter: add objectsize:disk option
533
+* en/fast-export-import (2018-11-17) 11 commits
534
+ (merged to 'next' on 2018-11-18 at 87bbbffc95)
535
+ + fast-export: add a --show-original-ids option to show original names
536
+ + fast-import: remove unmaintained duplicate documentation
537
+ + fast-export: add --reference-excluded-parents option
538
+ + fast-export: ensure we export requested refs
539
+ + fast-export: when using paths, avoid corrupt stream with non-existent mark
540
+ + fast-export: move commit rewriting logic into a function for reuse
541
+ + fast-export: avoid dying when filtering by paths and old tags exist
542
+ + fast-export: use value from correct enum
543
+ + git-fast-export.txt: clarify misleading documentation about rev-list args
544
+ + git-fast-import.txt: fix documentation for --quiet option
545
+ + fast-export: convert sha1 to oid
546
440
- The "--format=<placeholder>" option of for-each-ref, branch and tag
441
- learned to show a few more traits of objects that can be learned by
442
- the object_info API.
547
+ Small fixes and features for fast-export and fast-import, mostly on
548
+ the fast-export side.
549
444
- Will merge to 'next'.
550
+ Will cook in 'next'.
551
552
447
-* ra/rev-parse-exclude-glob (2018-11-13) 2 commits
448
- (merged to 'next' on 2018-11-17 at 396dd7a2c2)
449
- + refs: fix some exclude patterns being ignored
450
- + refs: show --exclude failure with --branches/tags/remotes=glob
553
+* nd/checkout-dwim-fix (2018-11-14) 1 commit
554
+ (merged to 'next' on 2018-11-18 at 3d714e7719)
555
+ + checkout: disambiguate dwim tracking branches and local files
556
452
- "rev-parse --exclude=<pattern> --branches=<pattern>" etc. did not
453
- quite work, which has been corrected.
557
+ "git checkout frotz" (without any double-dash) avoids ambiguity by
558
+ making sure 'frotz' cannot be interpreted as a revision and as a
559
+ path at the same time. This safety has been updated to check also
560
+ a unique remote-tracking branch 'frotz' in a remote, when dwimming
561
+ to create a local branch 'frotz' out of a remote-tracking branch
562
+ 'frotz' from a remote.
563
455
- Will merge to 'master'.
564
+ Will cook in 'next'.
565
566
458
-* sb/cocci-pending (2018-11-14) 1 commit
459
- - coccicheck: introduce 'pending' semantic patches
567
+* nd/checkout-noisy (2018-11-20) 2 commits
568
+ - t0027: squelch checkout path run outside test_expect_* block
569
+ - checkout: print something when checking out paths
570
461
- A coding convention around the Coccinelle semantic patches to have
462
- two classes to ease code migration process has been proposed and
463
- its support has been added to the Makefile.
571
+ "git checkout [<tree-ish>] path..." learned to report the number of
572
+ paths that have been checked out of the index or the tree-ish,
573
+ which gives it the same degree of noisy-ness as the case in which
574
+ the command checks out a branch.
575
465
- Will merge to 'next'.
576
577
+* sg/clone-initial-fetch-configuration (2018-11-16) 3 commits
578
+ (merged to 'next' on 2018-11-18 at cae0f3985b)
579
+ + Documentation/clone: document ignored configuration variables
580
+ + clone: respect additional configured fetch refspecs during initial fetch
581
+ + clone: use a more appropriate variable name for the default refspec
582
468
-* tb/print-size-t-with-uintmax-format (2018-11-12) 1 commit
469
- - Upcast size_t variables to uintmax_t when printing
583
+ Refspecs configured with "git -c var=val clone" did not propagate
584
+ to the resulting repository, which has been corrected.
585
471
- Code preparation to replace ulong vars with size_t vars where
472
- appropriate.
586
+ Will cook in 'next'.
587
474
- Will merge to 'next'.
588
589
+* cc/shared-index-permbits (2018-11-19) 1 commit
590
+ (merged to 'next' on 2018-11-19 at 79df716844)
591
+ + read-cache: make the split index obey umask settings
592
477
-* tb/xcurl-off-t (2018-11-12) 1 commit
478
- - remote-curl.c: xcurl_off_t is not portable (on 32 bit platfoms)
593
+ The way .git/index and .git/sharedindex* files were initially
594
+ created gave these files different perm bits until they were
595
+ adjusted for shared repository settings. This was made consistent.
596
480
- The xcurl_off_t() helper function is used to cast size_t to
481
- curl_off_t, but some compilers gave warnings against the code to
482
- ensure the casting is done without wraparound, when size_t is
483
- narrower than curl_off_t. This warning has been squelched.
597
+ Will merge to 'master'.
598
485
- Will merge to 'next'.
599
600
+* en/rebase-merge-on-sequencer (2018-11-08) 2 commits
601
+ - rebase: implement --merge via git-rebase--interactive
602
+ - git-rebase, sequencer: extend --quiet option for the interactive machinery
603
488
-* jk/curl-ldflags (2018-11-05) 1 commit
489
- (merged to 'next' on 2018-11-13 at d1387a3aa0)
490
- + build: link with curl-defined linker flags
604
+ "git rebase --merge" as been reimplemented by reusing the internal
605
+ machinery used for "git rebase -i".
606
492
- The way -lcurl library gets linked has been simplified by taking
493
- advantage of the fact that we can just ask curl-config command how.
607
495
- Will merge to 'master'.
608
+* fc/http-version (2018-11-09) 1 commit
609
+ (merged to 'next' on 2018-11-18 at 42f5155095)
610
+ + http: add support selecting http version
611
612
+ The "http.version" configuration variable can be used with recent
613
+ enough cURL library to force the version of HTTP used to talk when
614
+ fetching and pushing.
615
498
-* mg/gpg-fingerprint-test (2018-11-05) 2 commits
499
- (merged to 'next' on 2018-11-13 at 71f11020c4)
500
- + t/t7510-signed-commit.sh: add signing subkey to Eris Discordia key
501
- + t/t7510-signed-commit.sh: Add %GP to custom format checks
616
+ Will cook in 'next'.
617
503
- Add a few tests for a topic already in 'master'.
618
505
- Will merge to 'master'.
619
+* dl/remote-save-to-push (2018-11-13) 1 commit
620
+ - remote: add --save-to-push option to git remote set-url
621
622
+ "git remote set-url" learned a new option that moves existing value
623
+ of the URL field to pushURL field of the remote before replacing
624
+ the URL field with a new value.
625
508
-* sb/diff-color-moved-config-option-fixup (2018-11-14) 1 commit
509
- - diff: align move detection error handling with other options
626
627
+* jk/loose-object-cache (2018-11-13) 9 commits
628
+ (merged to 'next' on 2018-11-18 at 276691a21b)
629
+ + fetch-pack: drop custom loose object cache
630
+ + sha1-file: use loose object cache for quick existence check
631
+ + object-store: provide helpers for loose_objects_cache
632
+ + sha1-file: use an object_directory for the main object dir
633
+ + handle alternates paths the same as the main object dir
634
+ + sha1_file_name(): overwrite buffer instead of appending
635
+ + rename "alternate_object_database" to "object_directory"
636
+ + submodule--helper: prefer strip_suffix() to ends_with()
637
+ + fsck: do not reuse child_process structs
638
512
-* ab/range-diff-no-patch (2018-11-14) 3 commits
513
- (merged to 'next' on 2018-11-17 at c42e0891d0)
514
- + range-diff: make diff option behavior (e.g. --stat) consistent
515
- + range-diff: fix regression in passing along diff options
516
- + range-diff doc: add a section about output stability
639
+ Code clean-up with optimization for the codepath that checks
640
+ (non-)existence of loose objects.
641
518
- The "--no-patch" option, which can be used to get a high-level
519
- overview without the actual line-by-line patch difference shown, of
520
- the "range-diff" command was earlier broken, which has been
521
- corrected.
642
+ Will cook in 'next'.
643
523
- Will merge to 'master'.
644
645
+* js/protocol-advertise-multi (2018-11-17) 1 commit
646
+ - protocol: advertise multiple supported versions
647
526
-* jk/unused-parameter-fixes (2018-11-06) 14 commits
527
- (merged to 'next' on 2018-11-13 at 8d3625b4ae)
528
- + midx: double-check large object write loop
529
- + assert NOARG/NONEG behavior of parse-options callbacks
530
- + parse-options: drop OPT_DATE()
531
- + apply: return -1 from option callback instead of calling exit(1)
532
- + cat-file: report an error on multiple --batch options
533
- + tag: mark "--message" option with NONEG
534
- + show-branch: mark --reflog option as NONEG
535
- + format-patch: mark "--no-numbered" option with NONEG
536
- + status: mark --find-renames option with NONEG
537
- + cat-file: mark batch options with NONEG
538
- + pack-objects: mark index-version option as NONEG
539
- + ls-files: mark exclude options as NONEG
540
- + am: handle --no-patch-format option
541
- + apply: mark include/exclude options as NONEG
648
+ The transport layer has been updated so that the protocol version
649
+ used can be negotiated between the parties, by the initiator
650
+ listing the protocol versions it is willing to talk, and the other
651
+ side choosing from one of them.
652
543
- Various functions have been audited for "-Wunused-parameter" warnings
544
- and bugs in them got fixed.
653
546
- Will merge to 'master'.
654
+* js/smart-http-detect-remote-error (2018-11-17) 3 commits
655
+ (merged to 'next' on 2018-11-18 at 5c6edfcb85)
656
+ + remote-curl: die on server-side errors
657
+ + remote-curl: tighten "version 2" check for smart-http
658
+ + remote-curl: refactor smart-http discovery
659
660
+ Some errors from the other side coming over smart HTTP transport
661
+ were not noticed, which has been corrected.
662
549
-* ds/push-squelch-ambig-warning (2018-11-07) 1 commit
550
- - pack-objects: ignore ambiguous object warnings
663
+ Will cook in 'next'.
664
552
- "git push" used to check ambiguities between object-names and
553
- refnames while processing the list of refs' old and new values,
554
- which was unnecessary (as it knew that it is feeding raw object
555
- names). This has been optimized out.
665
557
- Will merge to 'next'.
666
+* nb/branch-show-other-worktrees-head (2018-11-12) 2 commits
667
+ - branch: mark and colorize a branch differently if it is checked out in a linked worktree
668
+ - ref-filter: add worktree atom
669
670
+ "git branch --list" learned to show branches that are checked out
671
+ in other worktrees connected to the same repository prefixed with
672
+ '+', similar to the way the currently checked out branch is shown
673
+ with '*' in front.
674
560
-* jk/verify-sig-merge-into-void (2018-11-07) 3 commits
561
- (merged to 'next' on 2018-11-13 at a207be60ed)
562
- + pull: handle --verify-signatures for unborn branch
563
- + merge: handle --verify-signatures for unborn branch
564
- + merge: extract verify_merge_signature() helper
675
+ Expecting a reroll.
676
566
- "git merge" and "git pull" that merges into an unborn branch used
567
- to completely ignore "--verify-signatures", which has been
568
- corrected.
677
570
- Will merge to 'master'.
678
+* nd/the-index (2018-11-12) 22 commits
679
+ (merged to 'next' on 2018-11-18 at 73d1d8594e)
680
+ + rebase-interactive.c: remove the_repository references
681
+ + rerere.c: remove the_repository references
682
+ + pack-*.c: remove the_repository references
683
+ + pack-check.c: remove the_repository references
684
+ + notes-cache.c: remove the_repository references
685
+ + line-log.c: remove the_repository reference
686
+ + diff-lib.c: remove the_repository references
687
+ + delta-islands.c: remove the_repository references
688
+ + cache-tree.c: remove the_repository references
689
+ + bundle.c: remove the_repository references
690
+ + branch.c: remove the_repository reference
691
+ + bisect.c: remove the_repository reference
692
+ + blame.c: remove implicit dependency the_repository
693
+ + sequencer.c: remove implicit dependency on the_repository
694
+ + sequencer.c: remove implicit dependency on the_index
695
+ + transport.c: remove implicit dependency on the_index
696
+ + notes-merge.c: remove implicit dependency the_repository
697
+ + notes-merge.c: remove implicit dependency on the_index
698
+ + list-objects.c: reduce the_repository references
699
+ + list-objects-filter.c: remove implicit dependency on the_index
700
+ + wt-status.c: remove implicit dependency the_repository
701
+ + wt-status.c: remove implicit dependency on the_index
702
703
+ More codepaths become aware of working with in-core repository
704
+ instance other than the default "the_repository".
705
573
-* js/mingw-res-rebuild (2018-11-07) 1 commit
574
- (merged to 'next' on 2018-11-13 at fb736827d1)
575
- + Windows: force-recompile git.res for differing architectures
706
+ Will cook in 'next'.
707
577
- Windows build update.
708
579
- Will merge to 'master'.
709
+* ot/ref-filter-object-info (2018-11-12) 5 commits
710
+ (merged to 'next' on 2018-11-18 at ad4c086678)
711
+ + ref-filter: add docs for new options
712
+ + ref-filter: add tests for deltabase
713
+ + ref-filter: add deltabase option
714
+ + ref-filter: add tests for objectsize:disk
715
+ + ref-filter: add objectsize:disk option
716
717
+ The "--format=<placeholder>" option of for-each-ref, branch and tag
718
+ learned to show a few more traits of objects that can be learned by
719
+ the object_info API.
720
582
-* ab/dynamic-gettext-poison (2018-11-09) 2 commits
583
- - Makefile: ease dynamic-gettext-poison transition
584
- - i18n: make GETTEXT_POISON a runtime option
721
+ Will cook in 'next'.
722
586
- Our testing framework uses a special i18n "poisoned localization"
587
- feature to find messages that ought to stay constant but are
588
- incorrectly marked to be translated. This feature has been made
589
- into a runtime option (it used to be a compile-time option).
723
591
- Will merge to 'next'.
724
+* sb/diff-color-moved-config-option-fixup (2018-11-14) 1 commit
725
+ - diff: align move detection error handling with other options
726
727
728
* ab/push-dwim-dst (2018-11-14) 7 commits
595
- - push doc: document the DWYM behavior pushing to unqualified <dst>
596
- - push: test that <src> doesn't DWYM if <dst> is unqualified
597
- - push: add an advice on unqualified <dst> push
598
- - push: move unqualified refname error into a function
599
- - push: improve the error shown on unqualified <dst> push
600
- - i18n: remote.c: mark error(...) messages for translation
601
- - remote.c: add braces in anticipation of a follow-up change
729
+ (merged to 'next' on 2018-11-18 at 36567023be)
730
+ + push doc: document the DWYM behavior pushing to unqualified <dst>
731
+ + push: test that <src> doesn't DWYM if <dst> is unqualified
732
+ + push: add an advice on unqualified <dst> push
733
+ + push: move unqualified refname error into a function
734
+ + push: improve the error shown on unqualified <dst> push
735
+ + i18n: remote.c: mark error(...) messages for translation
736
+ + remote.c: add braces in anticipation of a follow-up change
737
738
"git push $there $src:$dst" rejects when $dst is not a fully
739
qualified refname and not clear what the end user meant. The
@@ -607,7 +742,7 @@ of the repositories listed at
742
object into account (e.g. a tag object would want to go under
743
refs/tags/).
744
610
- Will merge to 'next'.
745
+ Will cook in 'next'.
746
747
748
* md/list-lazy-objects-fix (2018-10-29) 1 commit
@@ -623,107 +758,90 @@ of the repositories listed at
758
759
760
* nd/i18n (2018-11-12) 16 commits
626
- - fsck: mark strings for translation
627
- - fsck: reduce word legos to help i18n
628
- - parse-options.c: mark more strings for translation
629
- - parse-options.c: turn some die() to BUG()
630
- - parse-options: replace opterror() with optname()
631
- - repack: mark more strings for translation
632
- - remote.c: mark messages for translation
633
- - remote.c: turn some error() or die() to BUG()
634
- - reflog: mark strings for translation
635
- - read-cache.c: add missing colon separators
636
- - read-cache.c: mark more strings for translation
637
- - read-cache.c: turn die("internal error") to BUG()
638
- - attr.c: mark more string for translation
639
- - archive.c: mark more strings for translation
640
- - alias.c: mark split_cmdline_strerror() strings for translation
641
- - git.c: mark more strings for translation
761
+ (merged to 'next' on 2018-11-18 at 5215bd2f7d)
762
+ + fsck: mark strings for translation
763
+ + fsck: reduce word legos to help i18n
764
+ + parse-options.c: mark more strings for translation
765
+ + parse-options.c: turn some die() to BUG()
766
+ + parse-options: replace opterror() with optname()
767
+ + repack: mark more strings for translation
768
+ + remote.c: mark messages for translation
769
+ + remote.c: turn some error() or die() to BUG()
770
+ + reflog: mark strings for translation
771
+ + read-cache.c: add missing colon separators
772
+ + read-cache.c: mark more strings for translation
773
+ + read-cache.c: turn die("internal error") to BUG()
774
+ + attr.c: mark more string for translation
775
+ + archive.c: mark more strings for translation
776
+ + alias.c: mark split_cmdline_strerror() strings for translation
777
+ + git.c: mark more strings for translation
778
779
More _("i18n") markings.
780
645
- Will merge to 'next'.
646
-
647
-
648
-* nd/pthreads (2018-11-05) 14 commits
649
- (merged to 'next' on 2018-11-13 at bb6914b3f8)
650
- + Clean up pthread_create() error handling
651
- + read-cache.c: initialize copy_len to shut up gcc 8
652
- + read-cache.c: reduce branching based on HAVE_THREADS
653
- + read-cache.c: remove #ifdef NO_PTHREADS
654
- + pack-objects: remove #ifdef NO_PTHREADS
655
- + preload-index.c: remove #ifdef NO_PTHREADS
656
- + grep: clean up num_threads handling
657
- + grep: remove #ifdef NO_PTHREADS
658
- + attr.c: remove #ifdef NO_PTHREADS
659
- + name-hash.c: remove #ifdef NO_PTHREADS
660
- + index-pack: remove #ifdef NO_PTHREADS
661
- + send-pack.c: move async's #ifdef NO_PTHREADS back to run-command.c
662
- + run-command.h: include thread-utils.h instead of pthread.h
663
- + thread-utils: macros to unconditionally compile pthreads API
664
-
665
- The codebase has been cleaned up to reduce "#ifndef NO_PTHREADS".
666
-
667
- Will merge to 'master'.
781
+ Will cook in 'next'.
782
783
784
* sb/more-repo-in-api (2018-11-14) 23 commits
671
- - t/helper/test-repository: celebrate independence from the_repository
672
- - path.h: make REPO_GIT_PATH_FUNC repository agnostic
673
- - commit: prepare free_commit_buffer and release_commit_memory for any repo
674
- - commit-graph: convert remaining functions to handle any repo
675
- - submodule: don't add submodule as odb for push
676
- - submodule: use submodule repos for object lookup
677
- - pretty: prepare format_commit_message to handle arbitrary repositories
678
- - commit: prepare logmsg_reencode to handle arbitrary repositories
679
- - commit: prepare repo_unuse_commit_buffer to handle any repo
680
- - commit: prepare get_commit_buffer to handle any repo
681
- - commit-reach: prepare in_merge_bases[_many] to handle any repo
682
- - commit-reach: prepare get_merge_bases to handle any repo
683
- - commit-reach.c: allow get_merge_bases_many_0 to handle any repo
684
- - commit-reach.c: allow remove_redundant to handle any repo
685
- - commit-reach.c: allow merge_bases_many to handle any repo
686
- - commit-reach.c: allow paint_down_to_common to handle any repo
687
- - commit: allow parse_commit* to handle any repo
688
- - object: parse_object to honor its repository argument
689
- - object-store: prepare has_{sha1, object}_file to handle any repo
690
- - object-store: prepare read_object_file to deal with any repo
691
- - object-store: allow read_object_file_extended to read from any repo
692
- - packfile: allow has_packed_and_bad to handle arbitrary repositories
693
- - sha1_file: allow read_object to read objects in arbitrary repositories
785
+ (merged to 'next' on 2018-11-19 at e5d2a129da)
786
+ + t/helper/test-repository: celebrate independence from the_repository
787
+ + path.h: make REPO_GIT_PATH_FUNC repository agnostic
788
+ + commit: prepare free_commit_buffer and release_commit_memory for any repo
789
+ + commit-graph: convert remaining functions to handle any repo
790
+ + submodule: don't add submodule as odb for push
791
+ + submodule: use submodule repos for object lookup
792
+ + pretty: prepare format_commit_message to handle arbitrary repositories
793
+ + commit: prepare logmsg_reencode to handle arbitrary repositories
794
+ + commit: prepare repo_unuse_commit_buffer to handle any repo
795
+ + commit: prepare get_commit_buffer to handle any repo
796
+ + commit-reach: prepare in_merge_bases[_many] to handle any repo
797
+ + commit-reach: prepare get_merge_bases to handle any repo
798
+ + commit-reach.c: allow get_merge_bases_many_0 to handle any repo
799
+ + commit-reach.c: allow remove_redundant to handle any repo
800
+ + commit-reach.c: allow merge_bases_many to handle any repo
801
+ + commit-reach.c: allow paint_down_to_common to handle any repo
802
+ + commit: allow parse_commit* to handle any repo
803
+ + object: parse_object to honor its repository argument
804
+ + object-store: prepare has_{sha1, object}_file to handle any repo
805
+ + object-store: prepare read_object_file to deal with any repo
806
+ + object-store: allow read_object_file_extended to read from any repo
807
+ + packfile: allow has_packed_and_bad to handle arbitrary repositories
808
+ + sha1_file: allow read_object to read objects in arbitrary repositories
809
810
The in-core repository instances are passed through more codepaths.
811
697
- Will merge to 'next'.
812
+ Will cook in 'next'.
813
cf. <20181115221254.45373-1-jonathantanmy@google.com>
814
815
816
* en/merge-path-collision (2018-11-08) 10 commits
702
- - merge-recursive: combine error handling
703
- - t6036, t6043: increase code coverage for file collision handling
704
- - merge-recursive: improve rename/rename(1to2)/add[/add] handling
705
- - merge-recursive: use handle_file_collision for add/add conflicts
706
- - merge-recursive: improve handling for rename/rename(2to1) conflicts
707
- - merge-recursive: fix rename/add conflict handling
708
- - merge-recursive: new function for better colliding conflict resolutions
709
- - merge-recursive: increase marker length with depth of recursion
710
- - t6036, t6042: testcases for rename collision of already conflicting files
711
- - t6042: add tests for consistency in file collision conflict handling
817
+ (merged to 'next' on 2018-11-18 at 3ec9286e0b)
818
+ + merge-recursive: combine error handling
819
+ + t6036, t6043: increase code coverage for file collision handling
820
+ + merge-recursive: improve rename/rename(1to2)/add[/add] handling
821
+ + merge-recursive: use handle_file_collision for add/add conflicts
822
+ + merge-recursive: improve handling for rename/rename(2to1) conflicts
823
+ + merge-recursive: fix rename/add conflict handling
824
+ + merge-recursive: new function for better colliding conflict resolutions
825
+ + merge-recursive: increase marker length with depth of recursion
826
+ + t6036, t6042: testcases for rename collision of already conflicting files
827
+ + t6042: add tests for consistency in file collision conflict handling
828
829
Updates for corner cases in merge-recursive.
830
715
- Will merge to 'next'.
831
+ Will cook in 'next'.
832
833
718
-* sd/stash-wo-user-name (2018-11-16) 2 commits
719
- - stash: tolerate missing user identity
720
- - t3903-stash: test without configured user.name and user.email
834
+* sd/stash-wo-user-name (2018-11-19) 1 commit
835
+ (merged to 'next' on 2018-11-19 at 0838b091ea)
836
+ + stash: tolerate missing user identity
837
838
A properly configured username/email is required under
839
user.useConfigOnly in order to create commits; now "git stash"
840
(even though it creates commit objects to represent stash entries)
841
command is excempt from the requirement.
842
843
+ Will cook in 'next'.
844
+
845
846
* bc/sha-256 (2018-11-14) 12 commits
847
- hash: add an SHA-256 implementation using OpenSSL
@@ -786,21 +904,6 @@ of the repositories listed at
904
updated to use "size_t".
905
906
789
-* js/remote-archive-v2 (2018-09-28) 4 commits
790
- (merged to 'next' on 2018-10-12 at 5f34377f60)
791
- + archive: allow archive over HTTP(S) with proto v2
792
- + archive: implement protocol v2 archive command
793
- + archive: use packet_reader for communications
794
- + archive: follow test standards around assertions
795
-
796
- The original implementation of "git archive --remote" more or less
797
- bypassed the transport layer and did not work over http(s). The
798
- version 2 of the protocol is defined to allow going over http(s) as
799
- well as Git native transport.
800
-
801
- Reverted out of next.
802
-
803
-
907
* ag/sequencer-reduce-rewriting-todo (2018-11-12) 16 commits
908
. rebase--interactive: move transform_todo_file() to rebase--interactive.c
909
. sequencer: fix a call to error() in transform_todo_file()
@@ -830,22 +933,6 @@ of the repositories listed at
933
this need to wait giving precedence to other topics that fix bugs.
934
935
833
-* ds/reachable-topo-order (2018-11-02) 7 commits
834
- (merged to 'next' on 2018-11-13 at 4155d01aee)
835
- + t6012: make rev-list tests more interesting
836
- + revision.c: generation-based topo-order algorithm
837
- + commit/revisions: bookkeeping before refactoring
838
- + revision.c: begin refactoring --topo-order logic
839
- + test-reach: add rev-list tests
840
- + test-reach: add run_three_modes method
841
- + prio-queue: add 'peek' operation
842
-
843
- The revision walker machinery learned to take advantage of the
844
- commit generation numbers stored in the commit-graph file.
845
-
846
- Will merge to 'master'.
847
-
848
-
936
* sb/submodule-recursive-fetch-gets-the-tip (2018-10-31) 11 commits
937
- builtin/fetch: check for submodule updates in any ref update
938
- fetch: try fetching submodules if needed objects were not fetched
@@ -900,7 +987,8 @@ of the repositories listed at
987
988
"git stash" rewritten in C.
989
903
- Almost there.
990
+ Expecting a reroll, probably on top of the sd/stash-wo-user-name
991
+ topic after it stabilizes. The series is almost there.
992
cf. <20181015221040.GD4883@hank.intra.tgummerer.com>
993
994
@@ -940,3 +1028,19 @@ of the repositories listed at
1028
. bundle: rollback lock file while refusing to create an empty bundle
1029
1030
Superseded by jk/close-duped-fd-before-unlock-for-bundle
1031
+
1032
+
1033
+* js/remote-archive-v2 (2018-09-28) 4 commits
1034
+ (merged to 'next' on 2018-10-12 at 5f34377f60)
1035
+ + archive: allow archive over HTTP(S) with proto v2
1036
+ + archive: implement protocol v2 archive command
1037
+ + archive: use packet_reader for communications
1038
+ + archive: follow test standards around assertions
1039
+
1040
+ The original implementation of "git archive --remote" more or less
1041
+ bypassed the transport layer and did not work over http(s). The
1042
+ version 2 of the protocol is defined to allow going over http(s) as
1043
+ well as Git native transport.
1044
+
1045
+ Retracted; reverted out of next.
1046
+ cf. <20181114195142.GI126896@google.com>