What's cooking (2019/09 #02)
Junio C Hamano committed
Sep 18, 2019 at 15:28 UTC
05a9aaeb4d32405fb2cbb72206c9bf8c73efe318
1 file changed
+818
-562
whats-cooking.txt
+818
-562
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Sep 2019, #01; Sat, 7)
4
-X-master-at: 745f6812895b31c02b29bdfe4ae8e5498f776c26
5
-X-next-at: c6a4ce50a0d24c7b512b564eacb00d0bf92b22e4
3
+Subject: What's cooking in git.git (Sep 2019, #02; Wed, 18)
4
+X-master-at: 4c86140027f4a0d2caaa3ab4bd8bfc5ce3c11c8a
5
+X-next-at: 18eeb5a2650ef4d662f5c9bb888cac8694753ba5
6
7
-What's cooking in git.git (Sep 2019, #01; Sat, 7)
7
+What's cooking in git.git (Sep 2019, #02; Wed, 18)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,11 +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 tip of 'next' has been rewound. A handful of topics that have
16
-been in the stalled state need to be woken up, now the release is
17
-over (or they can be dropped without prejudice, just to unclutter
18
-the tree). As I said in an earlier message somewhere, I'd prefer to
19
-see the PCRE/JIT topics sorted out soonish. Ævar? Carlo?
15
+We have a new maintainer for git-gui now. Thanks Pratyush for
16
+volunteering.
17
18
You can find the changes described here in the integration branches
19
of the repositories listed at
@@ -24,339 +21,571 @@ of the repositories listed at
21
http://git-blame.blogspot.com/p/git-public-repositories.html
22
23
--------------------------------------------------
27
-[New Topics]
24
+[Graduated to "master"]
25
29
-* ar/mingw-run-external-with-non-ascii-path (2019-08-26) 1 commit
30
- - mingw: fix launching of externals from Unicode paths
26
+* bc/reread-attributes-during-rebase (2019-09-03) 2 commits
27
+ (merged to 'next' on 2019-09-07 at 9f5e5db0b0)
28
+ + am: reload .gitattributes after patching it
29
+ + path: add a function to check for path suffix
30
32
- Windows update.
31
+ The "git am" based backend of "git rebase" ignored the result of
32
+ updating ".gitattributes" done in one step when replaying
33
+ subsequent steps.
34
34
- Will merge to 'next'.
35
36
+* bm/repository-layout-typofix (2019-08-19) 1 commit
37
+ (merged to 'next' on 2019-08-23 at 7b1fffbaea)
38
+ + repository-layout.txt: correct pluralization of 'object'
39
37
-* cb/pcre1-cleanup (2019-08-26) 2 commits
38
- - grep: refactor and simplify PCRE1 support
39
- - grep: make sure NO_LIBPCRE1_JIT disable JIT in PCRE1
40
- (this branch uses ab/pcre-jit-fixes.)
40
+ Typofix.
41
42
- PCRE fixes.
42
43
+* cb/curl-use-xmalloc (2019-08-15) 1 commit
44
+ (merged to 'next' on 2019-09-07 at 07da24f51c)
45
+ + http: use xmalloc with cURL
46
+ (this branch uses jk/drop-release-pack-memory.)
47
45
-* dl/complete-cherry-pick-revert-skip (2019-08-27) 3 commits
46
- - status: mention --skip for revert and cherry-pick
47
- - completion: add --skip for cherry-pick and revert
48
- - completion: merge options for cherry-pick and revert
48
+ Tell cURL library to use the same malloc() implementation, with the
49
+ xmalloc() wrapper, as the rest of the system, for consistency.
50
50
- The command line completion support (in contrib/) learned about the
51
- "--skip" option of "git revert" and "git cherry-pick".
51
53
- Will merge to 'next'.
52
+* cb/fetch-set-upstream (2019-08-19) 1 commit
53
+ (merged to 'next' on 2019-08-23 at cf8c2ea0a0)
54
+ + pull, fetch: add --set-upstream option
55
56
+ "git fetch" learned "--set-upstream" option to help those who first
57
+ clone from their private fork they intend to push to, add the true
58
+ upstream via "git remote add" and then "git fetch" from it.
59
56
-* ew/hashmap (2019-08-26) 11 commits
57
- - hashmap_get_next returns "struct hashmap_entry *"
58
- - introduce container_of macro
59
- - hashmap_put takes "struct hashmap_entry *"
60
- - hashmap_remove takes "const struct hashmap_entry *"
61
- - hashmap_get takes "const struct hashmap_entry *"
62
- - hashmap_add takes "struct hashmap_entry *"
63
- - hashmap_get_next takes "const struct hashmap_entry *"
64
- - hashmap_entry: detect improper initialization
65
- - hashmap_entry_init takes "struct hashmap_entry *"
66
- - packfile: use hashmap_entry in delta_base_cache_entry
67
- - diff: use hashmap_entry_init on moved_entry.ent
60
69
- Code clean-up of the hashmap API, both users and implementation.
61
+* cc/multi-promisor (2019-06-25) 15 commits
62
+ (merged to 'next' on 2019-09-07 at 46faa86955)
63
+ + Move core_partial_clone_filter_default to promisor-remote.c
64
+ + Move repository_format_partial_clone to promisor-remote.c
65
+ + Remove fetch-object.{c,h} in favor of promisor-remote.{c,h}
66
+ + remote: add promisor and partial clone config to the doc
67
+ + partial-clone: add multiple remotes in the doc
68
+ + t0410: test fetching from many promisor remotes
69
+ + builtin/fetch: remove unique promisor remote limitation
70
+ + promisor-remote: parse remote.*.partialclonefilter
71
+ + Use promisor_remote_get_direct() and has_promisor_remote()
72
+ + promisor-remote: use repository_format_partial_clone
73
+ + promisor-remote: add promisor_remote_reinit()
74
+ + promisor-remote: implement promisor_remote_get_direct()
75
+ + Add initial support for many promisor remotes
76
+ + fetch-object: make functions return an error code
77
+ + t0410: remove pipes after git commands
78
71
- Will merge to 'next'.
79
+ Teach the lazy clone machinery that there can be more than one
80
+ promisor remote and consult them in order when downloading missing
81
+ objects on demand.
82
83
74
-* jk/fast-import-history-bugfix (2019-08-27) 2 commits
75
- - fast-import: duplicate into history rather than passing ownership
76
- - fast-import: duplicate parsed encoding string
84
+* ds/feature-macros (2019-08-13) 6 commits
85
+ (merged to 'next' on 2019-08-23 at 115f0c8df9)
86
+ + repo-settings: create feature.experimental setting
87
+ + repo-settings: create feature.manyFiles setting
88
+ + repo-settings: parse core.untrackedCache
89
+ + commit-graph: turn on commit-graph by default
90
+ + t6501: use 'git gc' in quiet mode
91
+ + repo-settings: consolidate some config settings
92
+ (this branch is used by ds/commit-graph-on-fetch.)
93
78
- The memory ownership model of the "git fast-import" got
79
- straightened out.
94
+ A mechanism to affect the default setting for a (related) group of
95
+ configuration variables is introduced.
96
81
- Will merge to 'next'.
97
98
+* ds/midx-expire-repack (2019-08-20) 1 commit
99
+ (merged to 'next' on 2019-08-23 at a998356b3b)
100
+ + packfile.h: drop extern from function declaration
101
84
-* js/gitdir-at-unc-root (2019-08-26) 3 commits
85
- - setup_git_directory(): handle UNC root paths correctly
86
- - Fix .git/ discovery at the root of UNC shares
87
- - setup_git_directory(): handle UNC paths correctly
102
+ Code cleanup.
103
89
- On Windows, the root level of UNC share is now allowed to be used
90
- just like any other directory.
104
92
- Will merge to 'next'.
105
+* en/checkout-mismerge-fix (2019-08-16) 1 commit
106
+ (merged to 'next' on 2019-08-23 at 8ecb69414a)
107
+ + checkout: remove duplicate code
108
109
+ Fix a mismerge that happened in 2.22 timeframe.
110
95
-* js/honor-cflags-in-hdr-check (2019-08-26) 1 commit
96
- - hdr-check: make it work on Windows
111
98
- Build fix to make sure hdr-check is run with the same preprocessor
99
- macros predefined by the $(MAKE) procedure.
112
+* jk/drop-release-pack-memory (2019-08-13) 1 commit
113
+ (merged to 'next' on 2019-09-07 at 30f841c42d)
114
+ + packfile: drop release_pack_memory()
115
+ (this branch is used by cb/curl-use-xmalloc.)
116
101
- Will merge to 'next'.
117
+ xmalloc() used to have a mechanism to ditch memory and address
118
+ space resources as the last resort upon seeing an allocation
119
+ failure from the underlying malloc(), which made the code complex
120
+ and thread-unsafe with dubious benefit, as major memory resource
121
+ users already do limit their uses with various other mechanisms.
122
+ It has been simplified away.
123
124
104
-* mh/http-urlmatch-cleanup (2019-08-26) 1 commit
105
- - http: don't leak urlmatch_config.vars
125
+* jk/eoo (2019-08-06) 3 commits
126
+ (merged to 'next' on 2019-08-23 at 217e97127a)
127
+ + gitcli: document --end-of-options
128
+ + parse-options: allow --end-of-options as a synonym for "--"
129
+ + revision: allow --end-of-options to end option parsing
130
107
- Leakfix.
131
+ The command line parser learned "--end-of-options" notation; the
132
+ standard convention for scripters to have hardcoded set of options
133
+ first on the command line, and force the command to treat end-user
134
+ input as non-options, has been to use "--" as the delimiter, but
135
+ that would not work for commands that use "--" as a delimiter
136
+ between revs and pathspec.
137
109
- Will merge to 'next'.
138
139
+* jk/repo-init-cleanup (2019-08-06) 3 commits
140
+ (merged to 'next' on 2019-08-23 at 1a5e4c4f06)
141
+ + config: stop checking whether the_repository is NULL
142
+ + common-main: delay trace2 initialization
143
+ + t1309: use short branch name in includeIf.onbranch test
144
112
-* mh/notes-duplicate-entries (2019-08-26) 2 commits
113
- - notes: avoid potential use-after-free during insertion
114
- - notes: avoid leaking duplicate entries
145
+ Further clean-up of the initialization code.
146
116
- A few implementation fixes in the notes API.
147
118
- Will merge to 'next'.
148
+* js/partial-clone-sparse-blob (2019-08-30) 2 commits
149
+ - list-objects-filter: handle unresolved sparse filter OID
150
+ - list-objects-filter: only parse sparse OID when 'have_git_dir'
151
152
+ Band-aid on "git clone --sparse:oid=X" that would hit BUG().
153
121
-* mh/release-commit-memory-fix (2019-08-26) 1 commit
122
- - commit: free the right buffer in release_commit_memory
154
124
- Leakfix.
155
+* js/pre-merge-commit-hook (2019-08-07) 4 commits
156
+ (merged to 'next' on 2019-09-07 at 0c9f25399c)
157
+ + merge: --no-verify to bypass pre-merge-commit hook
158
+ + git-merge: honor pre-merge-commit hook
159
+ + merge: do no-verify like commit
160
+ + t7503: verify proper hook execution
161
126
- Will merge to 'next'.
162
+ A new "pre-merge-commit" hook has been introduced.
163
164
129
-* rs/strbuf-detach (2019-08-26) 2 commits
130
- - grep: use return value of strbuf_detach()
131
- - log-tree: always use return value of strbuf_detach()
165
+* js/rebase-r-strategy (2019-09-05) 17 commits
166
+ (merged to 'next' on 2019-09-07 at 71e2451f6c)
167
+ + t3427: accelerate this test by using fast-export and fast-import
168
+ + rebase -r: do not (re-)generate root commits with `--root` *and* `--onto`
169
+ + t3418: test `rebase -r` with merge strategies
170
+ + t/lib-rebase: prepare for testing `git rebase --rebase-merges`
171
+ + rebase -r: support merge strategies other than `recursive`
172
+ + t3427: fix another incorrect assumption
173
+ + t3427: accommodate for the `rebase --merge` backend having been replaced
174
+ + t3427: fix erroneous assumption
175
+ + t3427: condense the unnecessarily repetitive test cases into three
176
+ + t3427: move the `filter-branch` invocation into the `setup` case
177
+ + t3427: simplify the `setup` test case significantly
178
+ + t3427: add a clarifying comment
179
+ + rebase: fold git-rebase--common into the -p backend
180
+ + sequencer: the `am` and `rebase--interactive` scripts are gone
181
+ + .gitignore: there is no longer a built-in `git-rebase--interactive`
182
+ + t3400: stop referring to the scripted rebase
183
+ + Drop unused git-rebase--am.sh
184
133
- Straighten out the use of strbuf_detach() API function.
185
+ "git rebase --rebase-merges" learned to drive different merge
186
+ strategies and pass strategy specific options to them.
187
135
- Will merge to 'next'.
188
189
+* jt/avoid-ls-refs-with-http (2019-08-22) 2 commits
190
+ (merged to 'next' on 2019-09-07 at c6a4ce50a0)
191
+ + transport: teach all vtables to allow fetch first
192
+ + transport-helper: skip ls-refs if unnecessary
193
138
-* rs/trace2-dst-warning (2019-08-26) 1 commit
139
- - trace2: use warning() directly in tr2_dst_malformed_warning()
194
+ The http transport lacked some optimization the native transports
195
+ learned to avoid unnecessary ref advertisement, which has been
196
+ corrected.
197
141
- Code cleanup.
198
+
199
+* jt/diff-lazy-fetch-submodule-fix (2019-08-20) 1 commit
200
+ (merged to 'next' on 2019-08-23 at 16997cac26)
201
+ + diff: skip GITLINK when lazy fetching missing objs
202
+
203
+ On-demand object fetching in lazy clone incorrectly tried to fetch
204
+ commits from submodule projects, while still working in the
205
+ superproject, which has been corrected.
206
+
207
+
208
+* md/list-objects-filter-combo (2019-06-28) 10 commits
209
+ (merged to 'next' on 2019-09-07 at 076a48aa57)
210
+ + list-objects-filter-options: make parser void
211
+ + list-objects-filter-options: clean up use of ALLOC_GROW
212
+ + list-objects-filter-options: allow mult. --filter
213
+ + strbuf: give URL-encoding API a char predicate fn
214
+ + list-objects-filter-options: make filter_spec a string_list
215
+ + list-objects-filter-options: move error check up
216
+ + list-objects-filter: implement composite filters
217
+ + list-objects-filter-options: always supply *errbuf
218
+ + list-objects-filter: put omits set in filter struct
219
+ + list-objects-filter: encapsulate filter components
220
+ (this branch is used by ds/include-exclude.)
221
+
222
+ The list-objects-filter API (used to create a sparse/lazy clone)
223
+ learned to take a combined filter specification.
224
+
225
+
226
+* mp/for-each-ref-missing-name-or-email (2019-08-22) 1 commit
227
+ (merged to 'next' on 2019-08-23 at d257cb2138)
228
+ + ref-filter: initialize empty name or email fields
229
+
230
+ "for-each-ref" and friends that shows refs did not protect themselves
231
+ against ancient tags that did not record tagger names when asked to
232
+ show "%(taggername)", which have been corrected.
233
+
234
+
235
+* nd/diff-parseopt (2019-08-20) 1 commit
236
+ (merged to 'next' on 2019-08-23 at d80a83b1e4)
237
+ + parseopt: move definition of enum parse_opt_result up
238
+
239
+ Compilation fix.
240
+
241
+
242
+* py/git-gui-do-quit (2019-08-07) 2 commits
243
+ (merged to 'next' on 2019-08-23 at 6544c9dbb3)
244
+ + Merge branch 'py/call-do-quit-before-exit' of github.com:gitster/git-gui into py/git-gui-do-quit
245
+ + git-gui: call do_quit before destroying the main window
246
+
247
+ "git gui" learned to call the clean-up procedure before exiting.
248
+
249
+
250
+* rs/pax-extended-header-length-fix (2019-08-19) 4 commits
251
+ (merged to 'next' on 2019-08-23 at de88e8e58a)
252
+ + archive-tar: turn length miscalculation warning into BUG
253
+ + archive-tar: use size_t in strbuf_append_ext_header()
254
+ + archive-tar: fix pax extended header length calculation
255
+ + archive-tar: report wrong pax extended header length
256
+
257
+ "git archive" recorded incorrect length in extended pax header in
258
+ some corner cases, which has been corrected.
259
+
260
+
261
+* rs/sort-oid-array-thread-safe (2019-08-20) 1 commit
262
+ (merged to 'next' on 2019-08-23 at 5ce3126af2)
263
+ + sha1-name: make sort_ambiguous_oid_array() thread-safe
264
+
265
+ Prepare get_short_oid() codepath to be thread-safe.
266
+
267
+
268
+* sb/userdiff-dts (2019-08-21) 1 commit
269
+ (merged to 'next' on 2019-08-23 at 2bce0b8f91)
270
+ + userdiff: add a builtin pattern for dts files
271
+
272
+ Device-tree files learned their own userdiff patterns.
273
+
274
+
275
+* sg/complete-configuration-variables (2019-08-13) 11 commits
276
+ (merged to 'next' on 2019-09-07 at 9921f0e536)
277
+ + completion: complete config variables and values for 'git clone --config='
278
+ + completion: complete config variables names and values for 'git clone -c'
279
+ + completion: complete values of configuration variables after 'git -c var='
280
+ + completion: complete configuration sections and variable names for 'git -c'
281
+ + completion: split _git_config()
282
+ + completion: simplify inner 'case' pattern in __gitcomp()
283
+ + completion: use 'sort -u' to deduplicate config variable names
284
+ + completion: deduplicate configuration sections
285
+ + completion: add tests for 'git config' completion
286
+ + completion: complete more values of more 'color.*' configuration variables
287
+ + completion: fix a typo in a comment
288
+
289
+ Command line completion updates for "git -c var.name=val"
290
+
291
+
292
+* sg/diff-indent-heuristic-non-experimental (2019-08-15) 1 commit
293
+ (merged to 'next' on 2019-08-23 at faab5e2a1e)
294
+ + diff: 'diff.indentHeuristic' is no longer experimental
295
+
296
+ We promoted the "indent heuristics" that decides where to split
297
+ diff hunks from experimental to the default a few years ago, but
298
+ some stale documentation still marked it as experimental, which has
299
+ been corrected.
300
+
301
+
302
+* sg/line-log-tree-diff-optim (2019-08-21) 2 commits
303
+ (merged to 'next' on 2019-09-07 at 8d5b7053fd)
304
+ + line-log: avoid unnecessary full tree diffs
305
+ + line-log: extract pathspec parsing from line ranges into a helper function
306
+
307
+ Optimize unnecessary full-tree diff away from "git log -L" machinery.
308
+
309
+
310
+* tg/t0021-racefix (2019-08-22) 1 commit
311
+ (merged to 'next' on 2019-08-23 at 0a3290393f)
312
+ + t0021: make sure clean filter runs
313
+
314
+ A test fix.
315
+
316
+--------------------------------------------------
317
+[New Topics]
318
+
319
+* cb/skip-utf8-check-with-pcre1 (2019-09-09) 1 commit
320
+ - grep: skip UTF8 checks explicitly
321
+
322
+ Make sure the grep machinery does not abort when seeing a payload
323
+ that is not UTF-8 even when JIT is not in use with PCRE1.
324
325
Will merge to 'next'.
326
327
146
-* sg/clean-nested-repo-with-ignored (2019-08-26) 1 commit
147
- - t7300-clean: demonstrate deleting nested repo with an ignored file breakage
328
+* jk/commit-graph-cleanup (2019-09-09) 2 commits
329
+ - commit-graph: turn off save_commit_buffer
330
+ - commit-graph: don't show progress percentages while expanding reachable commits
331
149
- A bug documentation.
332
+ A pair of small fixups to "git commit-graph" have been applied.
333
334
Will merge to 'next'.
335
336
154
-* tb/banned-vsprintf-namefix (2019-08-26) 1 commit
155
- - banned.h: fix vsprintf()'s ban message
337
+* ma/asciidoctor-more-fixes (2019-09-09) 7 commits
338
+ - gitweb.conf.txt: switch pluses to backticks to help Asciidoctor
339
+ - git-merge-index.txt: wrap shell listing in "----"
340
+ - git-receive-pack.txt: wrap shell [script] listing in "----"
341
+ - git-ls-remote.txt: wrap shell listing in "----"
342
+ - Documentation: wrap config listings in "----"
343
+ - git-merge-base.txt: render indentations correctly under Asciidoctor
344
+ - Documentation: wrap blocks with "--"
345
157
- Error message fix.
346
+ Doc formatting updates.
347
348
Will merge to 'next'.
349
350
162
-* tb/file-url-to-unc-path (2019-08-26) 1 commit
163
- - mingw: support UNC in git clone file://server/share/repo
351
+* rs/simplify-by-deco-with-deco-refs-exclude (2019-09-09) 2 commits
352
+ - log-tree: call load_ref_decorations() in get_name_decoration()
353
+ - log: test --decorate-refs-exclude with --simplify-by-decoration
354
165
- Windows update.
355
+ "git log --decorate-refs-exclude=<pattern>" was incorrectly
356
+ overruled when the "--simplify-by-decoration" option is used, which
357
+ has been corrected.
358
359
Will merge to 'next'.
360
361
170
-* dl/compat-cleanup (2019-09-05) 2 commits
171
- - compat/*.[ch]: remove extern from function declarations using spatch
172
- - mingw: apply array.cocci rule
362
+* ss/get-time-cleanup (2019-09-18) 2 commits
363
+ - test_date.c: remove reference to GIT_TEST_DATE_NOW
364
+ - Quit passing 'now' to date code
365
174
- Code cleanup.
366
+ Code simplification.
367
368
Will merge to 'next'.
369
370
179
-* dl/use-sq-from-test-lib (2019-09-06) 1 commit
180
- - t: use common $SQ variable
371
+* tb/commit-graph-harden (2019-09-09) 3 commits
372
+ - commit-graph.c: handle corrupt/missing trees
373
+ - commit-graph.c: handle commit parsing errors
374
+ - t/t5318: introduce failing 'git commit-graph write' tests
375
182
- Code cleanup.
376
+ The code to parse and use the commit-graph file has been made more
377
+ robust against corrupted input.
378
379
Will merge to 'next'.
380
381
187
-* ds/commit-graph-on-fetch (2019-09-03) 1 commit
188
- - fetch: add fetch.writeCommitGraph config setting
189
- (this branch uses ds/feature-macros.)
382
+* cs/pretty-formats-doc-typofix (2019-09-12) 1 commit
383
+ - doc: minor formatting fix
384
191
- A configuration variable tells "git fetch" to write the commit
192
- graph after finishing.
385
+ Doc fix.
386
387
Will merge to 'next'.
388
389
197
-* ds/include-exclude (2019-09-05) 5 commits
198
- - unpack-trees: rename 'is_excluded_from_list()'
199
- - treewide: rename 'exclude' methods to 'pattern'
200
- - treewide: rename 'EXCL_FLAG_' to 'PATTERN_FLAG_'
201
- - treewide: rename 'struct exclude_list' to 'struct pattern_list'
202
- - treewide: rename 'struct exclude' to 'struct path_pattern'
203
- (this branch uses md/list-objects-filter-combo.)
390
+* dl/cocci-everywhere (2019-09-17) 4 commits
391
+ - Makefile: run coccicheck on more source files
392
+ - Makefile: strip leading ./ in $(FIND_SOURCE_FILES)
393
+ - Makefile: define THIRD_PARTY_SOURCES
394
+ - Makefile: strip leading ./ in $(LIB_H)
395
+ (this branch uses dl/compat-cleanup.)
396
205
- The internal code originally invented for ".gitignore" processing
206
- got reshuffled and renamed to make it less tied to "excluding" and
207
- stress more that it is about "matching", as it has been reused for
208
- things like sparse checkout specification that want to check if a
209
- path is "included".
397
+ Coccinelle checks are done on more source files than before now.
398
399
Will merge to 'next'.
400
401
214
-* dt/remote-helper-doc-re-lock-option (2019-08-30) 1 commit
215
- - clarify documentation for remote helpers
402
+* dl/complete-rebase-and-archive (2019-09-12) 2 commits
403
+ - completion: teach archive to use __gitcomp_builtin
404
+ - completion: teach rebase to use __gitcomp_builtin
405
217
- Doc update.
406
+ The command line completion for "git archive" and "git rebase" are
407
+ now made less prone to go out of sync with the binary.
408
409
Will merge to 'next'.
410
411
222
-* en/filter-branch-deprecation (2019-09-05) 3 commits
223
- - t9902: use a non-deprecated command for testing
224
- - Recommend git-filter-repo instead of git-filter-branch
225
- - t6006: simplify, fix, and optimize empty message test
412
+* gs/commit-graph-progress (2019-09-18) 1 commit
413
+ - commit-graph: add --[no-]progress to write and verify
414
227
- Start discouraging the use of "git filter-branch".
415
+ Will merge to 'next'.
416
+
417
+
418
+* jk/disable-commit-graph-during-upload-pack (2019-09-12) 2 commits
419
+ - upload-pack: disable commit graph more gently for shallow traversal
420
+ - commit-graph: bump DIE_ON_LOAD check to actual load-time
421
+
422
+ The "upload-pack" (the counterpart of "git fetch") needs to disable
423
+ commit-graph when responding to a shallow clone/fetch request, but
424
+ the way this was done made Git panic, which has been corrected.
425
426
Will merge to 'next'.
427
428
232
-* en/merge-options-ff-and-friends (2019-09-01) 1 commit
233
- - merge-options.txt: clarify meaning of various ff-related options
429
+* jk/list-objects-optim-wo-trees (2019-09-12) 1 commit
430
+ - list-objects: don't queue root trees unless revs->tree_objects is set
431
235
- Doc update.
432
+ The object traversal machinery has been optimized not to load tree
433
+ objects when we are only interested in commit history.
434
435
Will merge to 'next'.
436
437
240
-* jc/test-cleanup (2019-09-05) 2 commits
241
- - t3005: remove unused variable
242
- - t: use LF variable defined in the test harness
438
+* mr/complete-more-for-log-etc (2019-09-12) 1 commit
439
+ - completion: add missing completions for log, diff, show
440
244
- Code cleanup.
441
+ Completion updates.
442
443
Will merge to 'next'.
444
445
249
-* jk/misc-uninitialized-fixes (2019-09-06) 6 commits
250
- - pack-objects: drop packlist index_pos optimization
251
- - test-read-cache: drop namelen variable
252
- - diff-delta: set size out-parameter to 0 for NULL delta
253
- - bulk-checkin: zero-initialize hashfile_checkpoint
254
- - pack-objects: use object_id in packlist_alloc()
255
- - git-am: handle missing "author" when parsing commit
446
+* ah/doc-submodule-ignore-submodules (2019-09-18) 1 commit
447
+ - doc: fix reference to --ignore-submodules
448
257
- Various fixes to codepaths gcc 9 had trouble following dataflow.
449
+ Docfix.
450
451
Will merge to 'next'.
452
453
262
-* js/partial-clone-sparse-blob (2019-08-30) 2 commits
263
- - list-objects-filter: handle unresolved sparse filter OID
264
- - list-objects-filter: only parse sparse OID when 'have_git_dir'
454
+* bc/doc-use-docbook-5 (2019-09-16) 1 commit
455
+ - Documentation: fix build with Asciidoctor 2
456
266
- Band-aid on "git clone --sparse:oid=X" that would hit BUG().
457
+ Start using DocBook 5 (instead of DocBook 4.5) as Asciidoctor 2.0
458
+ no longer works with the older one.
459
460
Will merge to 'next'.
461
462
271
-* js/visual-studio (2019-09-05) 1 commit
272
- - .gitignore: stop ignoring `.manifest` files
463
+* cc/svn-fe-py-shebang (2019-09-18) 1 commit
464
+ - contrib/svn-fe: fix shebang for svnrdump_sim.py
465
274
- Adjust .gitignore to unignore a path that we started to track.
466
+ Will merge to 'next'.
467
+
468
+
469
+* dl/submodule-set-branch (2019-09-16) 1 commit
470
+ - git-submodule.txt: fix AsciiDoc formatting error
471
+
472
+ Docfix.
473
474
Will merge to 'next'.
475
476
279
-* jt/cache-tree-avoid-lazy-fetch-during-merge (2019-09-03) 1 commit
280
- - cache-tree: do not lazy-fetch merge tree
477
+* en/clean-nested-with-ignored (2019-09-17) 12 commits
478
+ - clean: fix theoretical path corruption
479
+ - clean: rewrap overly long line
480
+ - clean: avoid removing untracked files in a nested git repository
481
+ - clean: disambiguate the definition of -d
482
+ - git-clean.txt: do not claim we will delete files with -n/--dry-run
483
+ - dir: add commentary explaining match_pathspec_item's return value
484
+ - dir: if our pathspec might match files under a dir, recurse into it
485
+ - dir: make the DO_MATCH_SUBMODULE code reusable for a non-submodule case
486
+ - dir: also check directories for matching pathspecs
487
+ - dir: fix off-by-one error in match_pathspec_item
488
+ - dir: fix typo in comment
489
+ - t7300: add testcases showing failure to clean specified pathspecs
490
+ (this branch uses sg/clean-nested-repo-with-ignored.)
491
282
- The cache-tree code has been taught to be less aggressive in
283
- attempting to see if a tree object it computed already exists in
284
- the repository.
492
+ "git clean" fixes.
493
286
- Expecting a clearified log message.
494
+ Will merge to 'next'.
495
496
289
-* ma/asciidoctor-refmiscinfo (2019-09-03) 2 commits
290
- - doc-diff: replace --cut-header-footer with --cut-footer
291
- - asciidoctor-extensions: provide `<refmiscinfo/>`
497
+* hb/hg-to-git-py3 (2019-09-18) 1 commit
498
+ - hg-to-git: make it compatible with both python3 and python2
499
293
- Update support for Asciidoctor documentation toolchain.
500
+ The hg-to-git script (in contrib/) has been updated to work with
501
+ Python 3.
502
503
Will merge to 'next'.
504
505
298
-* nd/switch-and-restore (2019-08-30) 1 commit
299
- - checkout: add simple check for 'git checkout -b'
506
+* jk/packfile-reuse-cleanup (2019-09-13) 10 commits
507
+ - pack-objects: improve partial packfile reuse
508
+ - builtin/pack-objects: introduce obj_is_packed()
509
+ - pack-objects: introduce pack.allowPackReuse
510
+ - csum-file: introduce hashfile_total()
511
+ - pack-bitmap: introduce bitmap_walk_contains()
512
+ - pack-bitmap: don't rely on bitmap_git->reuse_objects
513
+ - ewah/bitmap: always allocate 2 more words
514
+ - ewah/bitmap: introduce bitmap_word_alloc()
515
+ - packfile: expose get_delta_base()
516
+ - builtin/pack-objects: report reused packfile objects
517
301
- Resurrect a performance hack.
518
+ The way "git pack-objects" reuses objects stored in existing pack
519
+ to generate its result has been improved.
520
+
521
+
522
+* jk/partial-clone-sparse-blob (2019-09-16) 4 commits
523
+ - list-objects-filter: use empty string instead of NULL for sparse "base"
524
+ - list-objects-filter: give a more specific error sparse parsing error
525
+ - list-objects-filter: delay parsing of sparse oid
526
+ - t5616: test cloning/fetching with sparse:oid=<oid> filter
527
+
528
+ The name of the blob object that stores the filter specification
529
+ for sparse cloning/fetching was interpreted in a wrong place in the
530
+ code, causing Git to abort.
531
532
Will merge to 'next'.
533
534
306
-* rs/get-tagged-oid (2019-09-05) 2 commits
307
- - use get_tagged_oid()
308
- - tag: factor out get_tagged_oid()
535
+* rs/commit-graph-use-list-count (2019-09-16) 1 commit
536
+ - commit-graph: use commit_list_count()
537
538
Code cleanup.
539
540
Will merge to 'next'.
541
542
315
-* rs/help-unknown-ref-does-not-return (2019-08-30) 1 commit
316
- - help: make help_unknown_ref() NORETURN
543
+* js/doc-patch-text (2019-09-17) 2 commits
544
+ - diff, log doc: small grammer, format, and language fixes
545
+ - diff, log doc: say "patch text" instead of "patches"
546
318
- Code cleanup.
547
+ Docfix.
548
549
Will merge to 'next'.
550
551
323
-* rs/parse-tree-indirect (2019-09-03) 1 commit
324
- - tree: simplify parse_tree_indirect()
552
+* ms/fetch-follow-tag-optim (2019-09-16) 1 commit
553
+ - fetch: use oidset to keep the want OIDs for faster lookup
554
326
- Code cleanup.
555
+ The code used in following tags in "git fetch" has been optimized.
556
557
Will merge to 'next'.
558
559
331
-* sg/git-test-boolean (2019-09-06) 2 commits
332
- - ci: restore running httpd tests
333
- - t/lib-git-svn.sh: check GIT_TEST_SVN_HTTPD when running SVN HTTP tests
560
+* rs/nth-parent-parse (2019-09-16) 2 commits
561
+ - sha1-name: check for overflow of N in "foo^N" and "foo~N"
562
+ - rev-parse: demonstrate overflow of N for "foo^N" and "foo~N"
563
335
- Fix an earlier regression in the test suite, which mistakenly
336
- stopped running HTTPD tests.
564
+ The object name parser for "Nth parent" syntax has been made more
565
+ robust against integer overflows.
566
567
Will merge to 'next'.
568
569
341
-* tg/push-all-in-mirror-forbidden (2019-09-03) 1 commit
342
- - push: disallow --all and refspecs when remote.<name>.mirror is set
570
+* rs/nth-switch-code-simplification (2019-09-18) 1 commit
571
+ - sha1_name: simplify strbuf handling in interpret_nth_prior_checkout()
572
344
- Fix an earlier regression to "git push --all" which should have
345
- been forbidden when the target remote repository is set to be a
346
- mirror.
573
+ Code simplification.
574
575
Will merge to 'next'.
576
577
351
-* tg/stash-refresh-index (2019-09-05) 3 commits
352
- - stash: make sure to write refreshed cache
353
- - merge: use refresh_and_write_cache
354
- - factor out refresh_and_write_cache function
578
+* sg/progress-fix (2019-09-17) 2 commits
579
+ - Test the progress display
580
+ - Revert "progress: use term_clear_line()"
581
356
- "git stash" learned to write refreshed index back to disk.
582
+ Regression fix for progress output.
583
+
584
+ Will merge to 'next'.
585
358
- Needs coordination with js/builtin-add-i topic, as they both wants
359
- the same kind of enhancement to the same API function.
586
+
587
+* jc/git-gui-has-maintainer (2019-09-18) 1 commit
588
+ - SubmittingPatches: git-gui has a new maintainer
589
590
--------------------------------------------------
591
[Stalled]
@@ -419,41 +648,15 @@ of the repositories listed at
648
* mt/threaded-grep-in-object-store (2019-08-13) 4 commits
649
- grep: re-enable threads in some non-worktree cases
650
- grep: disable grep_read_mutex when possible
422
- - grep: allow locks to be enabled individually
423
- - object-store: add lock to read_object_file_extended()
424
-
425
- Traditionally, we avoided threaded grep while searching in objects
426
- (as opposed to files in the working tree) as accesses to the object
427
- layer is not thread-safe. This limitation is getting lifted.
428
-
429
- Comments?
430
- cf. <cover.1565468806.git.matheus.bernardino@usp.br>
431
-
432
-
433
-
434
-
435
-* pd/fetch-jobs (2019-08-13) 5 commits
436
- . fetch: make --jobs control submodules and remotes
437
- . fetch: add the --submodule-fetch-jobs option
438
- . fetch: add the fetch.jobs config key
439
- . fetch: add the "--fetch-jobs" option
440
- . fetch: rename max_children to max_children_for_submodules
441
-
442
- "git fetch --jobs" is getting taught to also run fetch jobs in
443
- parallel when fetching from multiple remote repositories.
444
-
445
- Comments?
446
-
447
-
448
-* js/trace2-json-schema (2019-07-25) 3 commits
449
- . ci: run trace2 schema validation in the CI suite
450
- . trace2: add a schema validator for trace2 events
451
- . trace2: add a JSON schema for trace2 events
651
+ - grep: allow locks to be enabled individually
652
+ - object-store: add lock to read_object_file_extended()
653
453
- The JSON output produced by "trace2" subsystem now has JSON schema
454
- defined on it, to allow us validate the output and catch deviation.
654
+ Traditionally, we avoided threaded grep while searching in objects
655
+ (as opposed to files in the working tree) as accesses to the object
656
+ layer is not thread-safe. This limitation is getting lifted.
657
456
- The CI integration may be a bit too heavy-handed.
658
+ Expecting a reroll.
659
+ cf. <CAHd-oW4LZTFcoPvqd+FU03+64y7MzesMurCT7tUFQrF_z9ocnQ@mail.gmail.com>
660
661
662
* jn/unknown-index-extensions (2018-11-21) 2 commits
@@ -512,383 +715,484 @@ of the repositories listed at
715
"unsigned long" for sizes of regions in memory, which have been
716
updated to use "size_t".
717
718
+--------------------------------------------------
719
+[Cooking]
720
516
-* dl/remote-save-to-push (2018-12-11) 1 commit
517
- - remote: add --save-to-push option to git remote set-url
721
+* ar/mingw-run-external-with-non-ascii-path (2019-08-26) 1 commit
722
+ (merged to 'next' on 2019-09-09 at 1973826628)
723
+ + mingw: fix launching of externals from Unicode paths
724
519
- "git remote set-url" learned a new option that moves existing value
520
- of the URL field to pushURL field of the remote before replacing
521
- the URL field with a new value.
725
+ Windows update.
726
523
- Anybody who wants to champion this topic?
524
- I am personally not yet quite convinced if this is worth pursuing.
727
+ Will merge to 'master'.
728
526
---------------------------------------------------
527
-[Cooking]
729
529
-* js/builtin-add-i (2019-08-30) 11 commits
530
- . built-in add -i: implement the `help` command
531
- . built-in add -i: use color in the main loop
532
- . built-in add -i: support `?` (prompt help)
533
- . built-in add -i: show unique prefixes of the commands
534
- . Add a function to determine unique prefixes for a list of strings
535
- . built-in add -i: implement the main loop
536
- . built-in add -i: color the header in the `status` command
537
- . built-in add -i: refresh the index before running `status`
538
- . built-in add -i: implement the `status` command
539
- . diff: export diffstat interface
540
- . Start to implement a built-in version of `git add --interactive`
730
+* cb/pcre1-cleanup (2019-08-26) 2 commits
731
+ - grep: refactor and simplify PCRE1 support
732
+ - grep: make sure NO_LIBPCRE1_JIT disable JIT in PCRE1
733
+ (this branch uses ab/pcre-jit-fixes.)
734
542
- The beginning of rewriting "git add -i" in C.
735
+ PCRE fixes.
736
544
- On hold, waiting for tg/stash-refresh-index to work well with this.
737
738
+* dl/complete-cherry-pick-revert-skip (2019-08-27) 3 commits
739
+ (merged to 'next' on 2019-09-18 at 7dd173f824)
740
+ + status: mention --skip for revert and cherry-pick
741
+ + completion: add --skip for cherry-pick and revert
742
+ + completion: merge options for cherry-pick and revert
743
547
-* jt/avoid-ls-refs-with-http (2019-08-22) 2 commits
548
- (merged to 'next' on 2019-09-07 at c6a4ce50a0)
549
- + transport: teach all vtables to allow fetch first
550
- + transport-helper: skip ls-refs if unnecessary
744
+ The command line completion support (in contrib/) learned about the
745
+ "--skip" option of "git revert" and "git cherry-pick".
746
552
- The http transport lacked some optimization the native transports
553
- learned to avoid unnecessary ref advertisement, which has been
554
- corrected.
747
+ Will merge to 'master'.
748
+
749
+
750
+* ew/hashmap (2019-08-26) 11 commits
751
+ - hashmap_get_next returns "struct hashmap_entry *"
752
+ - introduce container_of macro
753
+ - hashmap_put takes "struct hashmap_entry *"
754
+ - hashmap_remove takes "const struct hashmap_entry *"
755
+ - hashmap_get takes "const struct hashmap_entry *"
756
+ - hashmap_add takes "struct hashmap_entry *"
757
+ - hashmap_get_next takes "const struct hashmap_entry *"
758
+ - hashmap_entry: detect improper initialization
759
+ - hashmap_entry_init takes "struct hashmap_entry *"
760
+ - packfile: use hashmap_entry in delta_base_cache_entry
761
+ - diff: use hashmap_entry_init on moved_entry.ent
762
+
763
+ Code clean-up of the hashmap API, both users and implementation.
764
+
765
+ Expecting a reroll.
766
+ cf. <20190908074953.kux7zz4y7iolqko4@whir>
767
+
768
+
769
+* jk/fast-import-history-bugfix (2019-08-27) 2 commits
770
+ (merged to 'next' on 2019-09-09 at eeef864077)
771
+ + fast-import: duplicate into history rather than passing ownership
772
+ + fast-import: duplicate parsed encoding string
773
+
774
+ The memory ownership model of the "git fast-import" got
775
+ straightened out.
776
777
Will merge to 'master'.
778
779
559
-* cb/curl-use-xmalloc (2019-08-15) 1 commit
560
- (merged to 'next' on 2019-09-07 at 07da24f51c)
561
- + http: use xmalloc with cURL
562
- (this branch uses jk/drop-release-pack-memory.)
780
+* js/gitdir-at-unc-root (2019-08-26) 3 commits
781
+ (merged to 'next' on 2019-09-09 at 70ccc59b4b)
782
+ + setup_git_directory(): handle UNC root paths correctly
783
+ + Fix .git/ discovery at the root of UNC shares
784
+ + setup_git_directory(): handle UNC paths correctly
785
564
- Tell cURL library to use the same malloc() implementation, with the
565
- xmalloc() wrapper, as the rest of the system, for consistency.
786
+ On Windows, the root level of UNC share is now allowed to be used
787
+ just like any other directory.
788
789
Will merge to 'master'.
790
791
570
-* sg/diff-indent-heuristic-non-experimental (2019-08-15) 1 commit
571
- (merged to 'next' on 2019-08-23 at faab5e2a1e)
572
- + diff: 'diff.indentHeuristic' is no longer experimental
792
+* js/honor-cflags-in-hdr-check (2019-08-26) 1 commit
793
+ (merged to 'next' on 2019-09-09 at fcd9ee9f1b)
794
+ + hdr-check: make it work on Windows
795
574
- We promoted the "indent heuristics" that decides where to split
575
- diff hunks from experimental to the default a few years ago, but
576
- some stale documentation still marked it as experimental, which has
577
- been corrected.
796
+ Build fix to make sure hdr-check is run with the same preprocessor
797
+ macros predefined by the $(MAKE) procedure.
798
799
Will merge to 'master'.
800
801
582
-* en/checkout-mismerge-fix (2019-08-16) 1 commit
583
- (merged to 'next' on 2019-08-23 at 8ecb69414a)
584
- + checkout: remove duplicate code
802
+* mh/http-urlmatch-cleanup (2019-08-26) 1 commit
803
+ (merged to 'next' on 2019-09-09 at 9971b626f1)
804
+ + http: don't leak urlmatch_config.vars
805
586
- Fix a mismerge that happened in 2.22 timeframe.
806
+ Leakfix.
807
808
Will merge to 'master'.
809
810
591
-* en/merge-recursive-cleanup (2019-08-19) 24 commits
592
- - merge-recursive: alphabetize include list
593
- - merge-recursive: add sanity checks for relevant merge_options
594
- - merge-recursive: rename MERGE_RECURSIVE_* to MERGE_VARIANT_*
595
- - merge-recursive: split internal fields into a separate struct
596
- - merge-recursive: avoid losing output and leaking memory holding that output
597
- - merge-recursive: comment and reorder the merge_options fields
598
- - merge-recursive: consolidate unnecessary fields in merge_options
599
- - merge-recursive: move some definitions around to clean up the header
600
- - merge-recursive: rename merge_options argument to opt in header
601
- - merge-recursive: rename 'mrtree' to 'result_tree', for clarity
602
- - merge-recursive: use common name for ancestors/common/base_list
603
- - merge-recursive: fix some overly long lines
604
- - cache-tree: share code between functions writing an index as a tree
605
- - merge-recursive: don't force external callers to do our logging
606
- - merge-recursive: remove useless parameter in merge_trees()
607
- - merge-recursive: exit early if index != head
608
- - Ensure index matches head before invoking merge machinery, round N
609
- - merge-recursive: remove another implicit dependency on the_repository
610
- - merge-recursive: future-proof update_file_flags() against memory leaks
611
- - merge-recursive: introduce an enum for detect_directory_renames values
612
- - merge-recursive: provide a better label for diff3 common ancestor
613
- - merge-recursive: enforce opt->ancestor != NULL when calling merge_trees()
614
- - checkout: provide better conflict hunk description with detached HEAD
615
- - merge-recursive: be consistent with assert
811
+* mh/notes-duplicate-entries (2019-08-26) 2 commits
812
+ (merged to 'next' on 2019-09-09 at 6c44967c97)
813
+ + notes: avoid potential use-after-free during insertion
814
+ + notes: avoid leaking duplicate entries
815
617
- The merge-recursive machiery is one of the most complex parts of
618
- the system that accumulated cruft over time. This large series
619
- cleans up the implementation quite a bit.
816
+ A few implementation fixes in the notes API.
817
621
- Will merge to 'next'.
818
+ Will merge to 'master'.
819
820
624
-* bc/hash-independent-tests-part-5 (2019-08-26) 14 commits
625
- - t4009: make hash size independent
626
- - t4002: make hash independent
627
- - t4000: make hash size independent
628
- - t3903: abstract away SHA-1-specific constants
629
- - t3800: make hash-size independent
630
- - t3600: make hash size independent
631
- - t3506: make hash independent
632
- - t3430: avoid hard-coded object IDs
633
- - t3404: abstract away SHA-1-specific constants
634
- - t3306: abstract away SHA-1-specific constants
635
- - t3305: make hash size independent
636
- - t3301: abstract away SHA-1-specific constants
637
- - t3206: abstract away hash size constants
638
- - t3201: abstract away SHA-1-specific constants
821
+* mh/release-commit-memory-fix (2019-08-26) 1 commit
822
+ (merged to 'next' on 2019-09-09 at 9fb7485032)
823
+ + commit: free the right buffer in release_commit_memory
824
640
- Preparation for SHA-256 upgrade continues in the test department.
825
+ Leakfix.
826
642
- Will merge to 'next'.
827
+ Will merge to 'master'.
828
829
645
-* bm/repository-layout-typofix (2019-08-19) 1 commit
646
- (merged to 'next' on 2019-08-23 at 7b1fffbaea)
647
- + repository-layout.txt: correct pluralization of 'object'
830
+* rs/strbuf-detach (2019-08-26) 2 commits
831
+ (merged to 'next' on 2019-09-09 at f6bba7d52f)
832
+ + grep: use return value of strbuf_detach()
833
+ + log-tree: always use return value of strbuf_detach()
834
649
- Typofix.
835
+ Straighten out the use of strbuf_detach() API function.
836
837
Will merge to 'master'.
838
839
654
-* bw/rebase-autostash-keep-current-branch (2019-09-07) 2 commits
655
- - builtin/rebase.c: Remove pointless message
656
- - builtin/rebase.c: make sure the active branch isn't moved when autostashing
840
+* rs/trace2-dst-warning (2019-08-26) 1 commit
841
+ (merged to 'next' on 2019-09-09 at 13893cdf8c)
842
+ + trace2: use warning() directly in tr2_dst_malformed_warning()
843
658
- "git rebase --autostash <upstream> <branch>", when <branch> is
659
- different from the current branch, incorrectly moved the tip of the
660
- current branch, which has been corrected.
844
+ Code cleanup.
845
662
- Will merge to 'next'.
846
+ Will merge to 'master'.
847
848
665
-* dl/format-patch-doc-test-cleanup (2019-09-05) 13 commits
666
- - config/format.txt: specify default value of format.coverLetter
667
- - Doc: add more detail for git-format-patch
668
- - t4014: stop losing return codes of git commands
669
- - t4014: remove confusing pipe in check_threading()
670
- - t4014: use test_line_count() where possible
671
- - t4014: let sed open its own files
672
- - t4014: drop redirections to /dev/null
673
- - t4014: use indentable here-docs
674
- - t4014: remove spaces after redirect operators
675
- - t4014: use sq for test case names
676
- - t4014: move closing sq onto its own line
677
- - t4014: s/expected/expect/
678
- - t4014: drop unnecessary blank lines from test cases
679
- (this branch is used by dl/format-patch-cover-letter-subject.)
849
+* sg/clean-nested-repo-with-ignored (2019-08-26) 1 commit
850
+ (merged to 'next' on 2019-09-18 at 0da1269f07)
851
+ + t7300-clean: demonstrate deleting nested repo with an ignored file breakage
852
+ (this branch is used by en/clean-nested-with-ignored.)
853
681
- The documentation and tests for "git format-patch" have been
682
- cleaned up.
854
+ A bug documentation.
855
684
- Will merge to 'next'.
856
+ Will merge to 'master'.
857
858
687
-* ds/midx-expire-repack (2019-08-20) 1 commit
688
- (merged to 'next' on 2019-08-23 at a998356b3b)
689
- + packfile.h: drop extern from function declaration
859
+* tb/banned-vsprintf-namefix (2019-08-26) 1 commit
860
+ (merged to 'next' on 2019-09-09 at e0f6d18a10)
861
+ + banned.h: fix vsprintf()'s ban message
862
+
863
+ Error message fix.
864
+
865
+ Will merge to 'master'.
866
+
867
+
868
+* tb/file-url-to-unc-path (2019-08-26) 1 commit
869
+ (merged to 'next' on 2019-09-09 at 13d9c4000e)
870
+ + mingw: support UNC in git clone file://server/share/repo
871
+
872
+ Windows update.
873
+
874
+ Will merge to 'master'.
875
+
876
+
877
+* dl/compat-cleanup (2019-09-05) 2 commits
878
+ (merged to 'next' on 2019-09-09 at e33c896e16)
879
+ + compat/*.[ch]: remove extern from function declarations using spatch
880
+ + mingw: apply array.cocci rule
881
+ (this branch is used by dl/cocci-everywhere.)
882
883
Code cleanup.
884
885
Will merge to 'master'.
886
887
696
-* jt/diff-lazy-fetch-submodule-fix (2019-08-20) 1 commit
697
- (merged to 'next' on 2019-08-23 at 16997cac26)
698
- + diff: skip GITLINK when lazy fetching missing objs
888
+* dl/use-sq-from-test-lib (2019-09-06) 1 commit
889
+ (merged to 'next' on 2019-09-09 at 9a6619ddab)
890
+ + t: use common $SQ variable
891
700
- On-demand object fetching in lazy clone incorrectly tried to fetch
701
- commits from submodule projects, while still working in the
702
- superproject, which has been corrected.
892
+ Code cleanup.
893
894
Will merge to 'master'.
895
896
707
-* mp/for-each-ref-missing-name-or-email (2019-08-22) 1 commit
708
- (merged to 'next' on 2019-08-23 at d257cb2138)
709
- + ref-filter: initialize empty name or email fields
897
+* ds/commit-graph-on-fetch (2019-09-03) 1 commit
898
+ (merged to 'next' on 2019-09-18 at 10702dd989)
899
+ + fetch: add fetch.writeCommitGraph config setting
900
711
- "for-each-ref" and friends that shows refs did not protect themselves
712
- against ancient tags that did not record tagger names when asked to
713
- show "%(taggername)", which have been corrected.
901
+ A configuration variable tells "git fetch" to write the commit
902
+ graph after finishing.
903
904
Will merge to 'master'.
905
906
718
-* nd/diff-parseopt (2019-08-20) 1 commit
719
- (merged to 'next' on 2019-08-23 at d80a83b1e4)
720
- + parseopt: move definition of enum parse_opt_result up
907
+* ds/include-exclude (2019-09-05) 5 commits
908
+ (merged to 'next' on 2019-09-18 at 1a3655a089)
909
+ + unpack-trees: rename 'is_excluded_from_list()'
910
+ + treewide: rename 'exclude' methods to 'pattern'
911
+ + treewide: rename 'EXCL_FLAG_' to 'PATTERN_FLAG_'
912
+ + treewide: rename 'struct exclude_list' to 'struct pattern_list'
913
+ + treewide: rename 'struct exclude' to 'struct path_pattern'
914
722
- Compilation fix.
915
+ The internal code originally invented for ".gitignore" processing
916
+ got reshuffled and renamed to make it less tied to "excluding" and
917
+ stress more that it is about "matching", as it has been reused for
918
+ things like sparse checkout specification that want to check if a
919
+ path is "included".
920
921
Will merge to 'master'.
922
923
727
-* pw/rebase-i-show-HEAD-to-reword (2019-08-19) 3 commits
728
- - sequencer: simplify root commit creation
729
- - rebase -i: check for updated todo after squash and reword
730
- - rebase -i: always update HEAD before rewording
924
+* dt/remote-helper-doc-re-lock-option (2019-08-30) 1 commit
925
+ (merged to 'next' on 2019-09-09 at 970488992a)
926
+ + clarify documentation for remote helpers
927
732
- "git rebase -i" showed a wrong HEAD while "reword" open the editor.
928
+ Doc update.
929
734
- May want to split out the last one into a separate topic.
735
- Will merge to 'next'.
930
+ Will merge to 'master'.
931
932
738
-* rs/pax-extended-header-length-fix (2019-08-19) 4 commits
739
- (merged to 'next' on 2019-08-23 at de88e8e58a)
740
- + archive-tar: turn length miscalculation warning into BUG
741
- + archive-tar: use size_t in strbuf_append_ext_header()
742
- + archive-tar: fix pax extended header length calculation
743
- + archive-tar: report wrong pax extended header length
933
+* en/filter-branch-deprecation (2019-09-05) 3 commits
934
+ (merged to 'next' on 2019-09-09 at 311ed09ba8)
935
+ + t9902: use a non-deprecated command for testing
936
+ + Recommend git-filter-repo instead of git-filter-branch
937
+ + t6006: simplify, fix, and optimize empty message test
938
745
- "git archive" recorded incorrect length in extended pax header in
746
- some corner cases, which has been corrected.
939
+ Start discouraging the use of "git filter-branch".
940
941
Will merge to 'master'.
942
943
751
-* rs/sort-oid-array-thread-safe (2019-08-20) 1 commit
752
- (merged to 'next' on 2019-08-23 at 5ce3126af2)
753
- + sha1-name: make sort_ambiguous_oid_array() thread-safe
944
+* en/merge-options-ff-and-friends (2019-09-01) 1 commit
945
+ (merged to 'next' on 2019-09-09 at b3bcc2cbc7)
946
+ + merge-options.txt: clarify meaning of various ff-related options
947
755
- Prepare get_short_oid() codepath to be thread-safe.
948
+ Doc update.
949
+
950
+ Will merge to 'master'.
951
+
952
+
953
+* jc/test-cleanup (2019-09-05) 2 commits
954
+ (merged to 'next' on 2019-09-09 at 41ced23598)
955
+ + t3005: remove unused variable
956
+ + t: use LF variable defined in the test harness
957
+
958
+ Code cleanup.
959
+
960
+ Will merge to 'master'.
961
+
962
+
963
+* jk/misc-uninitialized-fixes (2019-09-06) 6 commits
964
+ (merged to 'next' on 2019-09-09 at 39ccd21475)
965
+ + pack-objects: drop packlist index_pos optimization
966
+ + test-read-cache: drop namelen variable
967
+ + diff-delta: set size out-parameter to 0 for NULL delta
968
+ + bulk-checkin: zero-initialize hashfile_checkpoint
969
+ + pack-objects: use object_id in packlist_alloc()
970
+ + git-am: handle missing "author" when parsing commit
971
+
972
+ Various fixes to codepaths gcc 9 had trouble following dataflow.
973
+
974
+ Will merge to 'master'.
975
+
976
+
977
+* js/visual-studio (2019-09-05) 1 commit
978
+ (merged to 'next' on 2019-09-09 at 5493ee9474)
979
+ + .gitignore: stop ignoring `.manifest` files
980
+
981
+ Adjust .gitignore to unignore a path that we started to track.
982
+
983
+ Will merge to 'master'.
984
+
985
+
986
+* jt/cache-tree-avoid-lazy-fetch-during-merge (2019-09-09) 1 commit
987
+ - cache-tree: do not lazy-fetch tentative tree
988
+
989
+ The cache-tree code has been taught to be less aggressive in
990
+ attempting to see if a tree object it computed already exists in
991
+ the repository.
992
+
993
+ Waiting for a response to an updated log message.
994
+
995
+
996
+* ma/asciidoctor-refmiscinfo (2019-09-16) 3 commits
997
+ - doc-diff: replace --cut-header-footer with --cut-footer
998
+ - asciidoctor-extensions: provide `<refmiscinfo/>`
999
+ - Doc/Makefile: give mansource/-version/-manual attributes
1000
+
1001
+ Update support for Asciidoctor documentation toolchain.
1002
+
1003
+ Expecting a reroll.
1004
+ cf. <CAN0heSq9B8NSr7-Bcqpiags6wyMm_3KUGeo+7GZA85nd7GnG=w@mail.gmail.com>
1005
+
1006
+
1007
+* nd/switch-and-restore (2019-08-30) 1 commit
1008
+ (merged to 'next' on 2019-09-09 at 97e7e06801)
1009
+ + checkout: add simple check for 'git checkout -b'
1010
+
1011
+ Resurrect a performance hack.
1012
+
1013
+ Will merge to 'master'.
1014
+
1015
+
1016
+* rs/get-tagged-oid (2019-09-05) 2 commits
1017
+ (merged to 'next' on 2019-09-09 at 0e9489a835)
1018
+ + use get_tagged_oid()
1019
+ + tag: factor out get_tagged_oid()
1020
+
1021
+ Code cleanup.
1022
1023
Will merge to 'master'.
1024
1025
760
-* sb/userdiff-dts (2019-08-21) 1 commit
761
- (merged to 'next' on 2019-08-23 at 2bce0b8f91)
762
- + userdiff: add a builtin pattern for dts files
1026
+* rs/help-unknown-ref-does-not-return (2019-08-30) 1 commit
1027
+ (merged to 'next' on 2019-09-09 at 4b00ea1ac9)
1028
+ + help: make help_unknown_ref() NORETURN
1029
764
- Device-tree files learned their own userdiff patterns.
1030
+ Code cleanup.
1031
1032
Will merge to 'master'.
1033
1034
769
-* sg/line-log-tree-diff-optim (2019-08-21) 2 commits
770
- (merged to 'next' on 2019-09-07 at 8d5b7053fd)
771
- + line-log: avoid unnecessary full tree diffs
772
- + line-log: extract pathspec parsing from line ranges into a helper function
1035
+* rs/parse-tree-indirect (2019-09-03) 1 commit
1036
+ (merged to 'next' on 2019-09-09 at 157e836dba)
1037
+ + tree: simplify parse_tree_indirect()
1038
774
- Optimize unnecessary full-tree diff away from "git log -L" machinery.
1039
+ Code cleanup.
1040
1041
Will merge to 'master'.
1042
1043
779
-* tg/t0021-racefix (2019-08-22) 1 commit
780
- (merged to 'next' on 2019-08-23 at 0a3290393f)
781
- + t0021: make sure clean filter runs
1044
+* sg/git-test-boolean (2019-09-06) 2 commits
1045
+ (merged to 'next' on 2019-09-09 at 90406d6375)
1046
+ + ci: restore running httpd tests
1047
+ + t/lib-git-svn.sh: check GIT_TEST_SVN_HTTPD when running SVN HTTP tests
1048
783
- A test fix.
1049
+ Fix an earlier regression in the test suite, which mistakenly
1050
+ stopped running HTTPD tests.
1051
1052
Will merge to 'master'.
1053
1054
788
-* py/git-gui-do-quit (2019-08-07) 2 commits
789
- (merged to 'next' on 2019-08-23 at 6544c9dbb3)
790
- + Merge branch 'py/call-do-quit-before-exit' of github.com:gitster/git-gui into py/git-gui-do-quit
791
- + git-gui: call do_quit before destroying the main window
1055
+* tg/push-all-in-mirror-forbidden (2019-09-03) 1 commit
1056
+ (merged to 'next' on 2019-09-09 at 9db61400c8)
1057
+ + push: disallow --all and refspecs when remote.<name>.mirror is set
1058
793
- "git gui" learned to call the clean-up procedure before exiting.
1059
+ Fix an earlier regression to "git push --all" which should have
1060
+ been forbidden when the target remote repository is set to be a
1061
+ mirror.
1062
1063
Will merge to 'master'.
1064
1065
798
-* bc/reread-attributes-during-rebase (2019-09-03) 2 commits
799
- (merged to 'next' on 2019-09-07 at 9f5e5db0b0)
800
- + am: reload .gitattributes after patching it
801
- + path: add a function to check for path suffix
1066
+* tg/stash-refresh-index (2019-09-05) 3 commits
1067
+ - stash: make sure to write refreshed cache
1068
+ - merge: use refresh_and_write_cache
1069
+ - factor out refresh_and_write_cache function
1070
803
- The "git am" based backend of "git rebase" ignored the result of
804
- updating ".gitattributes" done in one step when replaying
805
- subsequent steps.
1071
+ "git stash" learned to write refreshed index back to disk.
1072
807
- Will merge to 'master'.
1073
+ Needs coordination with js/builtin-add-i topic, as they both wants
1074
+ the same kind of enhancement to the same API function.
1075
1076
810
-* jk/drop-release-pack-memory (2019-08-13) 1 commit
811
- (merged to 'next' on 2019-09-07 at 30f841c42d)
812
- + packfile: drop release_pack_memory()
813
- (this branch is used by cb/curl-use-xmalloc.)
1077
+* js/builtin-add-i (2019-08-30) 11 commits
1078
+ . built-in add -i: implement the `help` command
1079
+ . built-in add -i: use color in the main loop
1080
+ . built-in add -i: support `?` (prompt help)
1081
+ . built-in add -i: show unique prefixes of the commands
1082
+ . Add a function to determine unique prefixes for a list of strings
1083
+ . built-in add -i: implement the main loop
1084
+ . built-in add -i: color the header in the `status` command
1085
+ . built-in add -i: refresh the index before running `status`
1086
+ . built-in add -i: implement the `status` command
1087
+ . diff: export diffstat interface
1088
+ . Start to implement a built-in version of `git add --interactive`
1089
815
- xmalloc() used to have a mechanism to ditch memory and address
816
- space resources as the last resort upon seeing an allocation
817
- failure from the underlying malloc(), which made the code complex
818
- and thread-unsafe with dubious benefit, as major memory resource
819
- users already do limit their uses with various other mechanisms.
820
- It has been simplified away.
1090
+ The beginning of rewriting "git add -i" in C.
1091
822
- Will merge to 'master'.
1092
+ On hold, waiting for tg/stash-refresh-index to work well with this.
1093
1094
825
-* sg/complete-configuration-variables (2019-08-13) 11 commits
826
- (merged to 'next' on 2019-09-07 at 9921f0e536)
827
- + completion: complete config variables and values for 'git clone --config='
828
- + completion: complete config variables names and values for 'git clone -c'
829
- + completion: complete values of configuration variables after 'git -c var='
830
- + completion: complete configuration sections and variable names for 'git -c'
831
- + completion: split _git_config()
832
- + completion: simplify inner 'case' pattern in __gitcomp()
833
- + completion: use 'sort -u' to deduplicate config variable names
834
- + completion: deduplicate configuration sections
835
- + completion: add tests for 'git config' completion
836
- + completion: complete more values of more 'color.*' configuration variables
837
- + completion: fix a typo in a comment
1095
+* en/merge-recursive-cleanup (2019-08-19) 24 commits
1096
+ (merged to 'next' on 2019-09-18 at f52cb08a14)
1097
+ + merge-recursive: alphabetize include list
1098
+ + merge-recursive: add sanity checks for relevant merge_options
1099
+ + merge-recursive: rename MERGE_RECURSIVE_* to MERGE_VARIANT_*
1100
+ + merge-recursive: split internal fields into a separate struct
1101
+ + merge-recursive: avoid losing output and leaking memory holding that output
1102
+ + merge-recursive: comment and reorder the merge_options fields
1103
+ + merge-recursive: consolidate unnecessary fields in merge_options
1104
+ + merge-recursive: move some definitions around to clean up the header
1105
+ + merge-recursive: rename merge_options argument to opt in header
1106
+ + merge-recursive: rename 'mrtree' to 'result_tree', for clarity
1107
+ + merge-recursive: use common name for ancestors/common/base_list
1108
+ + merge-recursive: fix some overly long lines
1109
+ + cache-tree: share code between functions writing an index as a tree
1110
+ + merge-recursive: don't force external callers to do our logging
1111
+ + merge-recursive: remove useless parameter in merge_trees()
1112
+ + merge-recursive: exit early if index != head
1113
+ + Ensure index matches head before invoking merge machinery, round N
1114
+ + merge-recursive: remove another implicit dependency on the_repository
1115
+ + merge-recursive: future-proof update_file_flags() against memory leaks
1116
+ + merge-recursive: introduce an enum for detect_directory_renames values
1117
+ + merge-recursive: provide a better label for diff3 common ancestor
1118
+ + merge-recursive: enforce opt->ancestor != NULL when calling merge_trees()
1119
+ + checkout: provide better conflict hunk description with detached HEAD
1120
+ + merge-recursive: be consistent with assert
1121
839
- Command line completion updates for "git -c var.name=val"
1122
+ The merge-recursive machiery is one of the most complex parts of
1123
+ the system that accumulated cruft over time. This large series
1124
+ cleans up the implementation quite a bit.
1125
1126
Will merge to 'master'.
1127
1128
844
-* cb/fetch-set-upstream (2019-08-19) 1 commit
845
- (merged to 'next' on 2019-08-23 at cf8c2ea0a0)
846
- + pull, fetch: add --set-upstream option
1129
+* bc/hash-independent-tests-part-5 (2019-08-26) 14 commits
1130
+ (merged to 'next' on 2019-09-09 at 49defc07af)
1131
+ + t4009: make hash size independent
1132
+ + t4002: make hash independent
1133
+ + t4000: make hash size independent
1134
+ + t3903: abstract away SHA-1-specific constants
1135
+ + t3800: make hash-size independent
1136
+ + t3600: make hash size independent
1137
+ + t3506: make hash independent
1138
+ + t3430: avoid hard-coded object IDs
1139
+ + t3404: abstract away SHA-1-specific constants
1140
+ + t3306: abstract away SHA-1-specific constants
1141
+ + t3305: make hash size independent
1142
+ + t3301: abstract away SHA-1-specific constants
1143
+ + t3206: abstract away hash size constants
1144
+ + t3201: abstract away SHA-1-specific constants
1145
848
- "git fetch" learned "--set-upstream" option to help those who first
849
- clone from their private fork they intend to push to, add the true
850
- upstream via "git remote add" and then "git fetch" from it.
1146
+ Preparation for SHA-256 upgrade continues in the test department.
1147
1148
Will merge to 'master'.
1149
1150
855
-* js/pre-merge-commit-hook (2019-08-07) 4 commits
856
- (merged to 'next' on 2019-09-07 at 0c9f25399c)
857
- + merge: --no-verify to bypass pre-merge-commit hook
858
- + git-merge: honor pre-merge-commit hook
859
- + merge: do no-verify like commit
860
- + t7503: verify proper hook execution
1151
+* bw/rebase-autostash-keep-current-branch (2019-09-07) 2 commits
1152
+ (merged to 'next' on 2019-09-18 at 6d8ed846ed)
1153
+ + builtin/rebase.c: Remove pointless message
1154
+ + builtin/rebase.c: make sure the active branch isn't moved when autostashing
1155
862
- A new "pre-merge-commit" hook has been introduced.
1156
+ "git rebase --autostash <upstream> <branch>", when <branch> is
1157
+ different from the current branch, incorrectly moved the tip of the
1158
+ current branch, which has been corrected.
1159
1160
Will merge to 'master'.
1161
1162
867
-* jk/eoo (2019-08-06) 3 commits
868
- (merged to 'next' on 2019-08-23 at 217e97127a)
869
- + gitcli: document --end-of-options
870
- + parse-options: allow --end-of-options as a synonym for "--"
871
- + revision: allow --end-of-options to end option parsing
1163
+* dl/format-patch-doc-test-cleanup (2019-09-05) 13 commits
1164
+ (merged to 'next' on 2019-09-09 at b3022b4002)
1165
+ + config/format.txt: specify default value of format.coverLetter
1166
+ + Doc: add more detail for git-format-patch
1167
+ + t4014: stop losing return codes of git commands
1168
+ + t4014: remove confusing pipe in check_threading()
1169
+ + t4014: use test_line_count() where possible
1170
+ + t4014: let sed open its own files
1171
+ + t4014: drop redirections to /dev/null
1172
+ + t4014: use indentable here-docs
1173
+ + t4014: remove spaces after redirect operators
1174
+ + t4014: use sq for test case names
1175
+ + t4014: move closing sq onto its own line
1176
+ + t4014: s/expected/expect/
1177
+ + t4014: drop unnecessary blank lines from test cases
1178
+ (this branch is used by dl/format-patch-cover-letter-subject.)
1179
873
- The command line parser learned "--end-of-options" notation; the
874
- standard convention for scripters to have hardcoded set of options
875
- first on the command line, and force the command to treat end-user
876
- input as non-options, has been to use "--" as the delimiter, but
877
- that would not work for commands that use "--" as a delimiter
878
- between revs and pathspec.
1180
+ The documentation and tests for "git format-patch" have been
1181
+ cleaned up.
1182
1183
Will merge to 'master'.
1184
1185
883
-* jk/repo-init-cleanup (2019-08-06) 3 commits
884
- (merged to 'next' on 2019-08-23 at 1a5e4c4f06)
885
- + config: stop checking whether the_repository is NULL
886
- + common-main: delay trace2 initialization
887
- + t1309: use short branch name in includeIf.onbranch test
1186
+* pw/rebase-i-show-HEAD-to-reword (2019-08-19) 3 commits
1187
+ - sequencer: simplify root commit creation
1188
+ - rebase -i: check for updated todo after squash and reword
1189
+ - rebase -i: always update HEAD before rewording
1190
+ (this branch is used by ra/rebase-i-more-options.)
1191
889
- Further clean-up of the initialization code.
1192
+ "git rebase -i" showed a wrong HEAD while "reword" open the editor.
1193
891
- Will merge to 'master'.
1194
+ May want to split out the last one into a separate topic.
1195
+ Will merge to 'next'.
1196
1197
1198
* cb/pcre2-chartables-leakfix (2019-08-06) 3 commits
@@ -900,32 +1204,17 @@ of the repositories listed at
1204
1205
1206
* jh/trace2-pretty-output (2019-08-09) 7 commits
903
- - trace2: cleanup whitespace in perf format
904
- - trace2: cleanup whitespace in normal format
905
- - quote: add sq_append_quote_argv_pretty()
906
- - trace2: trim trailing whitespace in normal format error message
907
- - trace2: remove dead code in maybe_add_string_va()
908
- - trace2: trim whitespace in region messages in perf target format
909
- - trace2: cleanup column alignment in perf target format
1207
+ (merged to 'next' on 2019-09-18 at 503974aa46)
1208
+ + trace2: cleanup whitespace in perf format
1209
+ + trace2: cleanup whitespace in normal format
1210
+ + quote: add sq_append_quote_argv_pretty()
1211
+ + trace2: trim trailing whitespace in normal format error message
1212
+ + trace2: remove dead code in maybe_add_string_va()
1213
+ + trace2: trim whitespace in region messages in perf target format
1214
+ + trace2: cleanup column alignment in perf target format
1215
1216
Output from trace2 subsystem is formatted more prettily now.
1217
913
- Will merge to 'next'.
914
-
915
-
916
-* ds/feature-macros (2019-08-13) 6 commits
917
- (merged to 'next' on 2019-08-23 at 115f0c8df9)
918
- + repo-settings: create feature.experimental setting
919
- + repo-settings: create feature.manyFiles setting
920
- + repo-settings: parse core.untrackedCache
921
- + commit-graph: turn on commit-graph by default
922
- + t6501: use 'git gc' in quiet mode
923
- + repo-settings: consolidate some config settings
924
- (this branch is used by ds/commit-graph-on-fetch.)
925
-
926
- A mechanism to affect the default setting for a (related) group of
927
- configuration variables is introduced.
928
-
1218
Will merge to 'master'.
1219
1220
@@ -938,13 +1227,14 @@ of the repositories listed at
1227
Expecting a reroll.
1228
1229
941
-* ra/rebase-i-more-options (2019-08-20) 6 commits
1230
+* ra/rebase-i-more-options (2019-09-09) 6 commits
1231
- rebase: add --reset-author-date
1232
- rebase -i: support --ignore-date
1233
- sequencer: rename amend_author to author_to_rename
1234
- rebase -i: support --committer-date-is-author-date
946
- - sequencer: add NULL checks under read_author_script
1235
+ - sequencer: allow callers of read_author_script() to ignore fields
1236
- rebase -i: add --ignore-whitespace flag
1237
+ (this branch uses pw/rebase-i-show-HEAD-to-reword.)
1238
1239
"git rebase -i" learned a few options that are known by "git
1240
rebase" proper.
@@ -952,32 +1242,6 @@ of the repositories listed at
1242
Looking good.
1243
1244
955
-* js/rebase-r-strategy (2019-09-05) 17 commits
956
- (merged to 'next' on 2019-09-07 at 71e2451f6c)
957
- + t3427: accelerate this test by using fast-export and fast-import
958
- + rebase -r: do not (re-)generate root commits with `--root` *and* `--onto`
959
- + t3418: test `rebase -r` with merge strategies
960
- + t/lib-rebase: prepare for testing `git rebase --rebase-merges`
961
- + rebase -r: support merge strategies other than `recursive`
962
- + t3427: fix another incorrect assumption
963
- + t3427: accommodate for the `rebase --merge` backend having been replaced
964
- + t3427: fix erroneous assumption
965
- + t3427: condense the unnecessarily repetitive test cases into three
966
- + t3427: move the `filter-branch` invocation into the `setup` case
967
- + t3427: simplify the `setup` test case significantly
968
- + t3427: add a clarifying comment
969
- + rebase: fold git-rebase--common into the -p backend
970
- + sequencer: the `am` and `rebase--interactive` scripts are gone
971
- + .gitignore: there is no longer a built-in `git-rebase--interactive`
972
- + t3400: stop referring to the scripted rebase
973
- + Drop unused git-rebase--am.sh
974
-
975
- "git rebase --rebase-merges" learned to drive different merge
976
- strategies and pass strategy specific options to them.
977
-
978
- Will merge to 'master'.
979
-
980
-
1245
* ab/pcre-jit-fixes (2019-08-19) 18 commits
1246
- grep: under --debug, show whether PCRE JIT is enabled
1247
- grep: do not enter PCRE2_UTF mode on fixed matching
@@ -1002,61 +1266,17 @@ of the repositories listed at
1266
A few simplification and bugfixes to PCRE interface.
1267
1268
1005
-* md/list-objects-filter-combo (2019-06-28) 10 commits
1006
- (merged to 'next' on 2019-09-07 at 076a48aa57)
1007
- + list-objects-filter-options: make parser void
1008
- + list-objects-filter-options: clean up use of ALLOC_GROW
1009
- + list-objects-filter-options: allow mult. --filter
1010
- + strbuf: give URL-encoding API a char predicate fn
1011
- + list-objects-filter-options: make filter_spec a string_list
1012
- + list-objects-filter-options: move error check up
1013
- + list-objects-filter: implement composite filters
1014
- + list-objects-filter-options: always supply *errbuf
1015
- + list-objects-filter: put omits set in filter struct
1016
- + list-objects-filter: encapsulate filter components
1017
- (this branch is used by ds/include-exclude.)
1018
-
1019
- The list-objects-filter API (used to create a sparse/lazy clone)
1020
- learned to take a combined filter specification.
1021
-
1022
- Will merge to 'master'.
1023
-
1024
-
1025
-* cc/multi-promisor (2019-06-25) 15 commits
1026
- (merged to 'next' on 2019-09-07 at 46faa86955)
1027
- + Move core_partial_clone_filter_default to promisor-remote.c
1028
- + Move repository_format_partial_clone to promisor-remote.c
1029
- + Remove fetch-object.{c,h} in favor of promisor-remote.{c,h}
1030
- + remote: add promisor and partial clone config to the doc
1031
- + partial-clone: add multiple remotes in the doc
1032
- + t0410: test fetching from many promisor remotes
1033
- + builtin/fetch: remove unique promisor remote limitation
1034
- + promisor-remote: parse remote.*.partialclonefilter
1035
- + Use promisor_remote_get_direct() and has_promisor_remote()
1036
- + promisor-remote: use repository_format_partial_clone
1037
- + promisor-remote: add promisor_remote_reinit()
1038
- + promisor-remote: implement promisor_remote_get_direct()
1039
- + Add initial support for many promisor remotes
1040
- + fetch-object: make functions return an error code
1041
- + t0410: remove pipes after git commands
1042
-
1043
- Teach the lazy clone machinery that there can be more than one
1044
- promisor remote and consult them in order when downloading missing
1045
- objects on demand.
1046
-
1047
- Will merge to 'master'.
1048
-
1049
-
1269
* dl/rebase-i-keep-base (2019-08-27) 9 commits
1051
- - rebase: teach rebase --keep-base
1052
- - rebase tests: test linear branch topology
1053
- - rebase: fast-forward --fork-point in more cases
1054
- - rebase: fast-forward --onto in more cases
1055
- - rebase: refactor can_fast_forward into goto tower
1056
- - t3432: test for --no-ff's interaction with fast-forward
1057
- - t3432: distinguish "noop-same" v.s. "work-same" in "same head" tests
1058
- - t3432: test rebase fast-forward behavior
1059
- - t3431: add rebase --fork-point tests
1270
+ (merged to 'next' on 2019-09-18 at f94f486724)
1271
+ + rebase: teach rebase --keep-base
1272
+ + rebase tests: test linear branch topology
1273
+ + rebase: fast-forward --fork-point in more cases
1274
+ + rebase: fast-forward --onto in more cases
1275
+ + rebase: refactor can_fast_forward into goto tower
1276
+ + t3432: test for --no-ff's interaction with fast-forward
1277
+ + t3432: distinguish "noop-same" v.s. "work-same" in "same head" tests
1278
+ + t3432: test rebase fast-forward behavior
1279
+ + t3431: add rebase --fork-point tests
1280
1281
"git rebase --keep-base <upstream>" tries to find the original base
1282
of the topic being rebased and rebase on top of that same base,
@@ -1066,7 +1286,7 @@ of the repositories listed at
1286
The command also has learned to fast-forward in more cases where it
1287
can instead of replaying to recreate identical commits.
1288
1069
- Will merge to 'next'.
1289
+ Will merge to 'master'.
1290
1291
1292
* jc/format-patch-noclobber (2019-02-22) 1 commit
@@ -1077,4 +1297,40 @@ of the repositories listed at
1297
1298
Will discard.
1299
1300
+--------------------------------------------------
1301
+[Discarded]
1302
+
1303
+* dl/remote-save-to-push (2018-12-11) 1 commit
1304
+ . remote: add --save-to-push option to git remote set-url
1305
+
1306
+ "git remote set-url" learned a new option that moves existing value
1307
+ of the URL field to pushURL field of the remote before replacing
1308
+ the URL field with a new value.
1309
+
1310
+ Anybody who wants to champion this topic?
1311
+ I am personally not yet quite convinced if this is worth pursuing.
1312
+
1313
+
1314
+* js/trace2-json-schema (2019-07-25) 3 commits
1315
+ . ci: run trace2 schema validation in the CI suite
1316
+ . trace2: add a schema validator for trace2 events
1317
+ . trace2: add a JSON schema for trace2 events
1318
+
1319
+ The JSON output produced by "trace2" subsystem now has JSON schema
1320
+ defined on it, to allow us validate the output and catch deviation.
1321
+
1322
+ Abandoned, at least for now.
1323
+ cf. <20190910182305.GA11186@google.com>
1324
+
1325
+
1326
+* pd/fetch-jobs (2019-08-13) 5 commits
1327
+ . fetch: make --jobs control submodules and remotes
1328
+ . fetch: add the --submodule-fetch-jobs option
1329
+ . fetch: add the fetch.jobs config key
1330
+ . fetch: add the "--fetch-jobs" option
1331
+ . fetch: rename max_children to max_children_for_submodules
1332
+
1333
+ "git fetch --jobs" is getting taught to also run fetch jobs in
1334
+ parallel when fetching from multiple remote repositories.
1335
1336
+ cf. <nycvar.QRO.7.76.6.1909111359150.5377@tvgsbejvaqbjf.bet>