What's cooking (2018/08 #04)
Junio C Hamano committed
Aug 17, 2018 at 15:41 UTC
0546aea0793b3105d4bd52ad3f90d563f8a8ae31
1 file changed
+450
-702
whats-cooking.txt
+450
-702
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Aug 2018, #03; Wed, 15)
4
-X-master-at: 63749b2dea5d1501ff85bab7b8a7f64911d21dea
5
-X-next-at: a543ac7ca4538799a4ba8d9b2640e17e2fdf406f
3
+Subject: What's cooking in git.git (Aug 2018, #04; Fri, 17)
4
+X-master-at: fa03cdc39b951d1cfbfd690fe6f3ac6c57ab6a44
5
+X-next-at: e017bf2cd19392a79e02d0636972bd4c284f89be
6
7
-What's cooking in git.git (Aug 2018, #03; Wed, 15)
7
+What's cooking in git.git (Aug 2018, #04; Fri, 17)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,6 +12,23 @@ 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
+Quite a many topics have graduated to 'master', and also a handful
16
+of topics have entered 'next'. I am planning to tag -rc0 over the
17
+weekend, and some topics that are in 'next' and marked for 'master'
18
+in this issue of "What's cooking" report may be reclassified to cook
19
+in 'next' during the pre-release period when that happens.
20
+
21
+Usually, I refrain from merging larger topics in 'next' down to
22
+'master' when we get close to -rc0, but I am wondering if it is
23
+better to merge all of them to 'master', even the ones on the larger
24
+and possibly undercooked side, expecting that we collectively spend
25
+effort on hunting and fixing bugs in them during the pre-release
26
+freeze period. If we were to go that route, I'd want everybody's
27
+buy-in and I'll promise to ignore any shiny new toys that appear on
28
+list that are not regression fixes to topics merged to 'master'
29
+since the end of the previous cycle to make sure people are not
30
+distracted.
31
+
32
You can find the changes described here in the integration branches
33
of the repositories listed at
34
@@ -20,308 +37,399 @@ of the repositories listed at
37
--------------------------------------------------
38
[Graduated to "master"]
39
23
-* bb/make-developer-pedantic (2018-07-25) 1 commit
24
- (merged to 'next' on 2018-08-02 at c738a84b7e)
25
- + Makefile: add a DEVOPTS flag to get pedantic compilation
40
+* ab/fetch-nego (2018-08-01) 3 commits
41
+ (merged to 'next' on 2018-08-08 at 87662bb344)
42
+ + fetch doc: cross-link two new negotiation options
43
+ + negotiator: unknown fetch.negotiationAlgorithm should error out
44
+ + Merge branch 'jt/fetch-nego-tip' into ab/fetch-nego
45
27
- "make DEVELOPER=1 DEVOPTS=pedantic" allows developers to compile
28
- with -pedantic option, which may catch more problematic program
29
- constructs and potential bugs.
46
+ Update to a few other topics around 'git fetch'.
47
48
32
-* bb/redecl-enum-fix (2018-07-26) 1 commit
33
- (merged to 'next' on 2018-08-06 at 828dc4b156)
34
- + packfile: ensure that enum object_type is defined
49
+* ab/fsck-transfer-updates (2018-07-27) 10 commits
50
+ (merged to 'next' on 2018-08-08 at d92085269f)
51
+ + fsck: test and document unknown fsck.<msg-id> values
52
+ + fsck: add stress tests for fsck.skipList
53
+ + fsck: test & document {fetch,receive}.fsck.* config fallback
54
+ + fetch: implement fetch.fsck.*
55
+ + transfer.fsckObjects tests: untangle confusing setup
56
+ + config doc: elaborate on fetch.fsckObjects security
57
+ + config doc: elaborate on what transfer.fsckObjects does
58
+ + config doc: unify the description of fsck.* and receive.fsck.*
59
+ + config doc: don't describe *.fetchObjects twice
60
+ + receive.fsck.<msg-id> tests: remove dead code
61
36
- Compilation fix.
62
+ The test performed at the receiving end of "git push" to prevent
63
+ bad objects from entering repository can be customized via
64
+ receive.fsck.* configuration variables; we now have gained a
65
+ counterpart to do the same on the "git fetch" side, with
66
+ fetch.fsck.* configuration variables.
67
68
39
-* bw/clone-ref-prefixes (2018-07-20) 1 commit
40
- (merged to 'next' on 2018-08-02 at c8ad140ab0)
41
- + clone: send ref-prefixes when using protocol v2
69
+* ab/sha1dc (2018-08-02) 1 commit
70
+ (merged to 'next' on 2018-08-08 at 920c190941)
71
+ + sha1dc: update from upstream
72
43
- The wire-protocol v2 relies on the client to send "ref prefixes" to
44
- limit the bandwidth spent on the initial ref advertisement. "git
45
- clone" when learned to speak v2 forgot to do so, which has been
46
- corrected.
73
+ AIX portability update for the SHA1DC hash, imported from upstream.
74
75
49
-* bw/fetch-pack-i18n (2018-07-23) 1 commit
50
- (merged to 'next' on 2018-08-02 at df72001755)
51
- + fetch-pack: mark die strings for translation
76
+* ab/test-must-be-empty (2018-07-30) 1 commit
77
+ (merged to 'next' on 2018-08-08 at 06599ebd1f)
78
+ + tests: make use of the test_must_be_empty function
79
53
- i18n updates.
80
+ Test updates.
81
82
56
-* bw/protocol-v2 (2018-07-24) 1 commit
57
- (merged to 'next' on 2018-08-02 at f4076b3e94)
58
- + pack-protocol: mention and point to docs for protocol v2
83
+* ar/t4150-am-scissors-test-fix (2018-08-06) 1 commit
84
+ (merged to 'next' on 2018-08-08 at e639183205)
85
+ + t4150: fix broken test for am --scissors
86
60
- Doc update.
87
+ Test fix.
88
89
63
-* cb/p4-pre-submit-hook (2018-08-01) 1 commit
64
- (merged to 'next' on 2018-08-06 at e40ae4af80)
65
- + git-p4: add the `p4-pre-submit` hook
90
+* en/abort-df-conflict-fixes (2018-07-31) 2 commits
91
+ (merged to 'next' on 2018-08-08 at a19cad0bb7)
92
+ + read-cache: fix directory/file conflict handling in read_index_unmerged()
93
+ + t1015: demonstrate directory/file conflict recovery failures
94
67
- "git p4 submit" learns to ask its own pre-submit hook if it should
68
- continue with submitting.
95
+ "git merge --abort" etc. did not clean things up properly when
96
+ there were conflicted entries in the index in certain order that
97
+ are involved in D/F conflicts. This has been corrected.
98
99
71
-* en/merge-recursive-skip-fix (2018-07-27) 2 commits
72
- (merged to 'next' on 2018-08-06 at 9ab321a15c)
73
- + merge-recursive: preserve skip_worktree bit when necessary
74
- + t3507: add a testcase showing failure with sparse checkout
100
+* en/t3031-title-fix (2018-08-06) 1 commit
101
+ (merged to 'next' on 2018-08-08 at 3913b03884)
102
+ + t3031: update test description to mention desired behavior
103
76
- When the sparse checkout feature is in use, "git cherry-pick" and
77
- other mergy operations lost the skip_worktree bit when a path that
78
- is excluded from checkout requires content level merge, which is
79
- resolved as the same as the HEAD version, without materializing the
80
- merge result in the working tree, which made the path appear as
81
- deleted. This has been corrected by preserving the skip_worktree
82
- bit (and not materializing the file in the working tree).
104
+ Test fix.
105
106
85
-* es/diff-color-moved-fix (2018-07-25) 1 commit
86
- (merged to 'next' on 2018-08-02 at 233bccfbfb)
87
- + diff: --color-moved: rename "dimmed_zebra" to "dimmed-zebra"
107
+* es/rebase-i-author-script-fix (2018-07-31) 4 commits
108
+ (merged to 'next' on 2018-08-08 at 6b34261b72)
109
+ + sequencer: don't die() on bogus user-edited timestamp
110
+ + sequencer: fix "rebase -i --root" corrupting author header timestamp
111
+ + sequencer: fix "rebase -i --root" corrupting author header timezone
112
+ + sequencer: fix "rebase -i --root" corrupting author header
113
+ (this branch is used by pw/rebase-i-author-script-fix.)
114
89
- One of the "diff --color-moved" mode "dimmed_zebra" that was named
90
- in an unusual way has been deprecated and replaced by
91
- "dimmed-zebra".
115
+ The "author-script" file "git rebase -i" creates got broken when
116
+ we started to move the command away from shell script, which is
117
+ getting fixed now.
118
119
94
-* es/mw-to-git-chain-fix (2018-07-31) 1 commit
95
- (merged to 'next' on 2018-08-06 at c10246e1c8)
96
- + mw-to-git/t9360: fix broken &&-chain
120
+* es/want-color-fd-defensive (2018-08-03) 1 commit
121
+ (merged to 'next' on 2018-08-08 at a11d90d26f)
122
+ + color: protect against out-of-bounds reads and writes
123
98
- Test fix.
124
+ Futureproofing a helper function that can easily be misused.
125
126
101
-* hs/gpgsm (2018-07-20) 7 commits
102
- (merged to 'next' on 2018-08-02 at db28bffe4f)
103
- + gpg-interface t: extend the existing GPG tests with GPGSM
104
- + gpg-interface: introduce new signature format "x509" using gpgsm
105
- + gpg-interface: introduce new config to select per gpg format program
106
- + gpg-interface: do not hardcode the key string len anymore
107
- + gpg-interface: introduce an abstraction for multiple gpg formats
108
- + t/t7510: check the validation of the new config gpg.format
109
- + gpg-interface: add new config to select how to sign a commit
127
+* hn/config-in-code-comment (2018-08-06) 1 commit
128
+ (merged to 'next' on 2018-08-08 at 1fae946a0f)
129
+ + config: document git config getter return value
130
111
- Teach "git tag -s" etc. a few configuration variables (gpg.format
112
- that can be set to "openpgp" or "x509", and gpg.<format>.program
113
- that is used to specify what program to use to deal with the format)
114
- to allow x.509 certs with CMS via "gpgsm" to be used instead of
115
- openpgp via "gnupg".
131
+ Header update.
132
133
118
-* jh/json-writer (2018-07-16) 1 commit
119
- (merged to 'next' on 2018-08-02 at d841450c7d)
120
- + json_writer: new routines to create JSON data
121
- (this branch is used by jh/structured-logging.)
134
+* jk/diff-rendered-docs (2018-08-06) 1 commit
135
+ (merged to 'next' on 2018-08-08 at fe6e1b4dbe)
136
+ + add a script to diff rendered documentation
137
123
- Preparatory code to later add json output for telemetry data.
138
+ The end result of documentation update has been made to be
139
+ inspected more easily to help developers.
140
141
126
-* jk/banned-function (2018-07-26) 5 commits
127
- (merged to 'next' on 2018-08-06 at 3dcd1999df)
128
- + banned.h: mark strncpy() as banned
129
- + banned.h: mark sprintf() as banned
130
- + banned.h: mark strcat() as banned
131
- + automatically ban strcpy()
132
- + Merge branch 'sb/blame-color' into jk/banned-function
142
+* jk/merge-subtree-heuristics (2018-08-02) 1 commit
143
+ (merged to 'next' on 2018-08-08 at 5126c2d717)
144
+ + score_trees(): fix iteration over trees with missing entries
145
134
- It is too easy to misuse system API functions such as strcat();
135
- these selected functions are now forbidden in this codebase and
136
- will cause a compilation failure.
146
+ The automatic tree-matching in "git merge -s subtree" was broken 5
147
+ years ago and nobody has noticed since then, which is now fixed.
148
149
139
-* jk/core-use-replace-refs (2018-07-18) 3 commits
140
- (merged to 'next' on 2018-08-02 at 90fb6b1056)
141
- + add core.usereplacerefs config option
142
- + check_replace_refs: rename to read_replace_refs
143
- + check_replace_refs: fix outdated comment
150
+* js/pull-rebase-type-shorthand (2018-08-06) 1 commit
151
+ (merged to 'next' on 2018-08-08 at 9213756b36)
152
+ + pull --rebase=<type>: allow single-letter abbreviations for the type
153
145
- A new configuration variable core.usereplacerefs has been added,
146
- primarily to help server installations that want to ignore the
147
- replace mechanism altogether.
154
+ "git pull --rebase=interactive" learned "i" as a short-hand for
155
+ "interactive".
156
157
150
-* jk/size-t (2018-07-24) 6 commits
151
- (merged to 'next' on 2018-08-02 at 6f861e05f0)
152
- + strbuf_humanise: use unsigned variables
153
- + pass st.st_size as hint for strbuf_readlink()
154
- + strbuf_readlink: use ssize_t
155
- + strbuf: use size_t for length in intermediate variables
156
- + reencode_string: use size_t for string lengths
157
- + reencode_string: use st_add/st_mult helpers
158
+* jt/refspec-dwim-precedence-fix (2018-08-02) 1 commit
159
+ (merged to 'next' on 2018-08-08 at 34d0484d3a)
160
+ + remote: make refspec follow the same disambiguation rule as local refs
161
159
- Code clean-up to use size_t/ssize_t when they are the right type.
162
+ "git fetch $there refs/heads/s" ought to fetch the tip of the
163
+ branch 's', but when "refs/heads/refs/heads/s", i.e. a branch whose
164
+ name is "refs/heads/s" exists at the same time, fetched that one
165
+ instead by mistake. This has been corrected to honor the usual
166
+ disambiguation rules for abbreviated refnames.
167
168
162
-* jk/ui-color-always-to-auto (2018-07-18) 1 commit
163
- (merged to 'next' on 2018-08-02 at 1a054baf0e)
164
- + Documentation: fix --color option formatting
169
+* mk/http-backend-content-length (2018-07-30) 4 commits
170
+ (merged to 'next' on 2018-08-08 at 0091062ec4)
171
+ + t5562: avoid non-portable "export FOO=bar" construct
172
+ + http-backend: respect CONTENT_LENGTH for receive-pack
173
+ + http-backend: respect CONTENT_LENGTH as specified by rfc3875
174
+ + http-backend: cleanup writing to child process
175
166
- Doc formatting fix.
176
+ The http-backend (used for smart-http transport) used to slurp the
177
+ whole input until EOF, without paying attention to CONTENT_LENGTH
178
+ that is supplied in the environment and instead expecting the Web
179
+ server to close the input stream. This has been fixed.
180
181
169
-* jn/subtree-test-fixes (2018-07-30) 2 commits
170
- (merged to 'next' on 2018-08-06 at 62f21c328f)
171
- + subtree test: simplify preparation of expected results
172
- + subtree test: add missing && to &&-chain
182
+* nd/complete-config-vars (2018-08-06) 1 commit
183
+ (merged to 'next' on 2018-08-08 at ffc8e1a3cd)
184
+ + Makefile: add missing dependency for command-list.h
185
174
- Test fix.
186
+ Build fix.
187
188
177
-* js/t7406-recursive-submodule-update-order-fix (2018-07-23) 1 commit
178
- (merged to 'next' on 2018-08-02 at 217ea36a37)
179
- + t7406: avoid failures solely due to timing issues
189
+* nd/config-blame-sort (2018-08-06) 1 commit
190
+ (merged to 'next' on 2018-08-08 at 34ebb9888f)
191
+ + config.txt: reorder blame stuff to keep config keys sorted
192
181
- Test fix.
193
+ Doc fix.
194
195
184
-* js/vscode (2018-07-30) 9 commits
185
- (merged to 'next' on 2018-08-06 at 5c578b63a8)
186
- + vscode: let cSpell work on commit messages, too
187
- + vscode: add a dictionary for cSpell
188
- + vscode: use 8-space tabs, no trailing ws, etc for Git's source code
189
- + vscode: wrap commit messages at column 72 by default
190
- + vscode: only overwrite C/C++ settings
191
- + mingw: define WIN32 explicitly
192
- + cache.h: extract enum declaration from inside a struct declaration
193
- + vscode: hard-code a couple defines
194
- + contrib: add a script to initialize VS Code configuration
196
+* nd/no-extern (2018-08-03) 12 commits
197
+ (merged to 'next' on 2018-08-08 at bcce75766b)
198
+ + submodule.h: drop extern from function declaration
199
+ + revision.h: drop extern from function declaration
200
+ + repository.h: drop extern from function declaration
201
+ + rerere.h: drop extern from function declaration
202
+ + line-range.h: drop extern from function declaration
203
+ + diff.h: remove extern from function declaration
204
+ + diffcore.h: drop extern from function declaration
205
+ + convert.h: drop 'extern' from function declaration
206
+ + cache-tree.h: drop extern from function declaration
207
+ + blame.h: drop extern on func declaration
208
+ + attr.h: drop extern from function declaration
209
+ + apply.h: drop extern on func declaration
210
+ (this branch is used by nd/no-the-index.)
211
196
- Add a script (in contrib/) to help users of VSCode work better with
197
- our codebase.
212
+ Noiseword "extern" has been removed from function decls in the
213
+ header files.
214
215
200
-* jt/connectivity-check-after-unshallow (2018-08-01) 1 commit
201
- (merged to 'next' on 2018-08-06 at 1932418f46)
202
- + fetch-pack: unify ref in and out param
216
+* ot/ref-filter-object-info (2018-07-17) 5 commits
217
+ (merged to 'next' on 2018-08-08 at 9ed619941b)
218
+ + ref-filter: use oid_object_info() to get object
219
+ + ref-filter: merge get_obj and get_object
220
+ + ref-filter: initialize eaten variable
221
+ + ref-filter: fill empty fields with empty values
222
+ + ref-filter: add info_source to valid_atom
223
204
- "git fetch" sometimes failed to update the remote-tracking refs,
205
- which has been corrected.
224
+ A few atoms like %(objecttype) and %(objectsize) in the format
225
+ specifier of "for-each-ref --format=<format>" can be filled without
226
+ getting the full contents of the object, but just with the object
227
+ header. These cases have been optimized by calling
228
+ oid_object_info() API (instead of reading and inspecting the data).
229
230
208
-* jt/tag-following-with-proto-v2-fix (2018-07-24) 2 commits
209
- (merged to 'next' on 2018-08-02 at d9eabdea95)
210
- + fetch: send "refs/tags/" prefix upon CLI refspecs
211
- + t5702: test fetch with multiple refspecs at a time
231
+* rs/parse-opt-lithelp (2018-08-03) 7 commits
232
+ (merged to 'next' on 2018-08-08 at 3a4e0142fe)
233
+ + parse-options: automatically infer PARSE_OPT_LITERAL_ARGHELP
234
+ + shortlog: correct option help for -w
235
+ + send-pack: specify --force-with-lease argument help explicitly
236
+ + pack-objects: specify --index-version argument help explicitly
237
+ + difftool: remove angular brackets from argument help
238
+ + add, update-index: fix --chmod argument help
239
+ + push: use PARSE_OPT_LITERAL_ARGHELP instead of unbalanced brackets
240
213
- The wire-protocol v2 relies on the client to send "ref prefixes" to
214
- limit the bandwidth spent on the initial ref advertisement. "git
215
- fetch $remote branch:branch" that asks tags that point into the
216
- history leading to the "branch" automatically followed sent to
217
- narrow prefix and broke the tag following, which has been fixed.
241
+ The parse-options machinery learned to refrain from enclosing
242
+ placeholder string inside a "<bra" and "ket>" pair automatically
243
+ without PARSE_OPT_LITERAL_ARGHELP. Existing help text for option
244
+ arguments that are not formatted correctly have been identified and
245
+ fixed.
246
247
220
-* ms/http-proto-doc (2018-07-30) 1 commit
221
- (merged to 'next' on 2018-08-06 at df1cac9945)
222
- + doc: fix want-capability separator
248
+* sb/indent-heuristic-optim (2018-08-01) 1 commit
249
+ (merged to 'next' on 2018-08-08 at 539dcc967a)
250
+ + xdiff: reduce indent heuristic overhead
251
224
- Doc fix.
252
+ "git diff --indent-heuristic" had a bad corner case performance.
253
254
+--------------------------------------------------
255
+[New Topics]
256
227
-* nd/i18n (2018-07-23) 23 commits
228
- (merged to 'next' on 2018-08-02 at 904a22a5d1)
229
- + transport-helper.c: mark more strings for translation
230
- + transport.c: mark more strings for translation
231
- + sha1-file.c: mark more strings for translation
232
- + sequencer.c: mark more strings for translation
233
- + replace-object.c: mark more strings for translation
234
- + refspec.c: mark more strings for translation
235
- + refs.c: mark more strings for translation
236
- + pkt-line.c: mark more strings for translation
237
- + object.c: mark more strings for translation
238
- + exec-cmd.c: mark more strings for translation
239
- + environment.c: mark more strings for translation
240
- + dir.c: mark more strings for translation
241
- + convert.c: mark more strings for translation
242
- + connect.c: mark more strings for translation
243
- + config.c: mark more strings for translation
244
- + commit-graph.c: mark more strings for translation
245
- + builtin/replace.c: mark more strings for translation
246
- + builtin/pack-objects.c: mark more strings for translation
247
- + builtin/grep.c: mark strings for translation
248
- + builtin/config.c: mark more strings for translation
249
- + archive-zip.c: mark more strings for translation
250
- + archive-tar.c: mark more strings for translation
251
- + Update messages in preparation for i18n
252
-
253
- Many more strings are prepared for l10n.
254
-
255
-
256
-* nd/pack-objects-threading-doc (2018-07-30) 1 commit
257
- (merged to 'next' on 2018-08-06 at cc8c305191)
258
- + pack-objects: document about thread synchronization
257
+* ep/worktree-quiet-option (2018-08-17) 1 commit
258
+ - worktree: add --quiet option
259
260
- Doc fix.
260
+ "git worktree" command learned "--quiet" option to make it less
261
+ verbose.
262
263
+ Will merge to 'next'.
264
263
-* rs/remote-mv-leakfix (2018-08-01) 1 commit
264
- (merged to 'next' on 2018-08-06 at 999fe6d3e5)
265
- + remote: clear string_list after use in mv()
265
267
- Leakfix.
266
+* nd/cherry-pick-quit-fix (2018-08-16) 1 commit
267
+ (merged to 'next' on 2018-08-17 at b270179855)
268
+ + cherry-pick: fix --quit not deleting CHERRY_PICK_HEAD
269
270
+ "git cherry-pick --quit" failed to remove CHERRY_PICK_HEAD even
271
+ though we won't be in a cherry-pick session after it returns, which
272
+ has been corrected.
273
270
-* sb/histogram-less-memory (2018-07-23) 4 commits
271
- (merged to 'next' on 2018-08-02 at cfb02aa3b5)
272
- + xdiff/histogram: remove tail recursion
273
- + xdiff/xhistogram: move index allocation into find_lcs
274
- + xdiff/xhistogram: factor out memory cleanup into free_index()
275
- + xdiff/xhistogram: pass arguments directly to fall_back_to_classic_diff
274
+ Will merge to 'master'.
275
277
- "git diff --histogram" had a bad memory usage pattern, which has
278
- been rearranged to reduce the peak usage.
276
277
+* nd/config-core-checkstat-doc (2018-08-17) 1 commit
278
+ - config.txt: clarify core.checkStat
279
281
-* sb/trailers-docfix (2018-07-20) 1 commit
282
- (merged to 'next' on 2018-08-02 at ba348fafcd)
283
- + Documentation/git-interpret-trailers: explain possible values
280
+ The meaning of the possible values the "core.checkStat"
281
+ configuration variable can take were not adequately documented,
282
+ which has been fixed.
283
285
- Doc update.
284
+ Will merge to 'next'.
285
286
288
-* sg/coccicheck-updates (2018-07-23) 5 commits
289
- (merged to 'next' on 2018-08-02 at b5548ff3a9)
290
- + coccinelle: extract dedicated make target to clean Coccinelle's results
291
- + coccinelle: put sane filenames into output patches
292
- + coccinelle: exclude sha1dc source files from static analysis
293
- + coccinelle: use $(addsuffix) in 'coccicheck' make target
294
- + coccinelle: mark the 'coccicheck' make target as .PHONY
287
+* pw/rebase-i-merge-segv-fix (2018-08-16) 2 commits
288
+ (merged to 'next' on 2018-08-17 at c8823e4511)
289
+ + rebase -i: fix SIGSEGV when 'merge <branch>' fails
290
+ + t3430: add conflicting commit
291
296
- Update the way we use Coccinelle to find out-of-style code that
297
- need to be modernised.
292
+ "git rebase -i", when a 'merge <branch>' insn in its todo list
293
+ fails, segfaulted, which has been (minimally) corrected.
294
295
+ Will merge to 'master'.
296
300
-* sg/fast-import-dump-refs-on-checkpoint-fix (2018-07-20) 1 commit
301
- (merged to 'next' on 2018-08-02 at f5c05b5a2c)
302
- + t9300: wait for background fast-import process to die after killing it
297
304
- Test update.
298
+* sb/submodule-cleanup (2018-08-16) 2 commits
299
+ (merged to 'next' on 2018-08-17 at ca9d8aaef4)
300
+ + builtin/submodule--helper: remove stray new line
301
+ + t7410: update to new style
302
303
+ A few preliminary minor clean-ups in the area around submodules.
304
307
-* sg/travis-cocci-diagnose-failure (2018-07-23) 2 commits
308
- (merged to 'next' on 2018-08-02 at 54808a8778)
309
- + travis-ci: fail if Coccinelle static analysis found something to transform
310
- + travis-ci: run Coccinelle static analysis with two parallel jobs
305
+ Will merge to 'master'.
306
312
- Update the way we run static analysis tool at TravisCI to make it
313
- easier to use its findings.
307
308
+* sm/branch-sort-config (2018-08-16) 1 commit
309
+ - branch: support configuring --sort via .gitconfig
310
316
-* sg/travis-retrieve-trash-upon-failure (2018-08-01) 1 commit
317
- (merged to 'next' on 2018-08-06 at d67def2a92)
318
- + travis-ci: include the trash directories of failed tests in the trace log
311
+ "git branch --list" learned to take the default sort order from the
312
+ 'branch.sort' configuration variable, just like "git tag --list"
313
+ pays attention to 'tag.sort'.
314
320
- The Travis CI scripts were taught to ship back the test data from
321
- failed tests.
315
+ Will merge to 'next'.
316
+
317
+
318
+* ab/unconditional-free-and-null (2018-08-17) 1 commit
319
+ - refactor various if (x) FREE_AND_NULL(x) to just FREE_AND_NULL(x)
320
+
321
+ Code clean-up.
322
+
323
+ Will merge to 'next'.
324
325
--------------------------------------------------
324
-[New Topics]
326
+[Stalled]
327
+
328
+* sl/commit-dry-run-with-short-output-fix (2018-07-30) 4 commits
329
+ . commit: fix exit code when doing a dry run
330
+ . wt-status: teach wt_status_collect about merges in progress
331
+ . wt-status: rename commitable to committable
332
+ . t7501: add coverage for flags which imply dry runs
333
+
334
+ "git commit --dry-run" gave a correct exit status even during a
335
+ conflict resolution toward a merge, but it did not with the
336
+ "--short" option, which has been corrected.
337
+
338
+ Seems to break 7512, 3404 and 7060 in 'pu'.
339
+
340
+
341
+* ma/wrapped-info (2018-05-28) 2 commits
342
+ - usage: prefix all lines in `vreportf()`, not just the first
343
+ - usage: extract `prefix_suffix_lines()` from `advise()`
344
+
345
+ An attempt to help making multi-line messages fed to warning(),
346
+ error(), and friends more easily translatable.
347
+
348
+ Will discard and wait for a cleaned-up rewrite.
349
+ cf. <20180529213957.GF7964@sigill.intra.peff.net>
350
+
351
+
352
+* hn/bisect-first-parent (2018-04-21) 1 commit
353
+ - bisect: create 'bisect_flags' parameter in find_bisection()
354
+
355
+ Preliminary code update to allow passing more flags down the
356
+ bisection codepath in the future.
357
+
358
+ We do not add random code that does not have real users to our
359
+ codebase, so let's have it wait until such a real code materializes
360
+ before too long.
361
+
362
+
363
+* av/fsmonitor-updates (2018-01-04) 6 commits
364
+ - fsmonitor: use fsmonitor data in `git diff`
365
+ - fsmonitor: remove debugging lines from t/t7519-status-fsmonitor.sh
366
+ - fsmonitor: make output of test-dump-fsmonitor more concise
367
+ - fsmonitor: update helper tool, now that flags are filled later
368
+ - fsmonitor: stop inline'ing mark_fsmonitor_valid / _invalid
369
+ - dir.c: update comments to match argument name
370
+
371
+ Code clean-up on fsmonitor integration, plus optional utilization
372
+ of the fsmonitor data in diff-files.
373
+
374
+ Waiting for an update.
375
+ cf. <alpine.DEB.2.21.1.1801042335130.32@MININT-6BKU6QN.europe.corp.microsoft.com>
376
+
377
+
378
+* pb/bisect-helper-2 (2018-07-23) 8 commits
379
+ - t6030: make various test to pass GETTEXT_POISON tests
380
+ - bisect--helper: `bisect_start` shell function partially in C
381
+ - bisect--helper: `get_terms` & `bisect_terms` shell function in C
382
+ - bisect--helper: `bisect_next_check` shell function in C
383
+ - bisect--helper: `check_and_set_terms` shell function in C
384
+ - wrapper: move is_empty_file() and rename it as is_empty_or_missing_file()
385
+ - bisect--helper: `bisect_write` shell function in C
386
+ - bisect--helper: `bisect_reset` shell function in C
387
+
388
+ Expecting a reroll.
389
+ cf. <0102015f5e5ee171-f30f4868-886f-47a1-a4e4-b4936afc545d-000000@eu-west-1.amazonses.com>
390
+
391
+ I just rebased the topic to a newer base as it did not build
392
+ standalone with the base I originally queued the topic on, but
393
+ otherwise there is no update to address any of the review comments
394
+ in the thread above---we are still waiting for a reroll.
395
+
396
+
397
+* jk/drop-ancient-curl (2017-08-09) 5 commits
398
+ - http: #error on too-old curl
399
+ - curl: remove ifdef'd code never used with curl >=7.19.4
400
+ - http: drop support for curl < 7.19.4
401
+ - http: drop support for curl < 7.16.0
402
+ - http: drop support for curl < 7.11.1
403
+
404
+ Some code in http.c that has bitrot is being removed.
405
+
406
+ Expecting a reroll.
407
+
408
+
409
+* mk/use-size-t-in-zlib (2017-08-10) 1 commit
410
+ . zlib.c: use size_t for size
411
+
412
+ The wrapper to call into zlib followed our long tradition to use
413
+ "unsigned long" for sizes of regions in memory, which have been
414
+ updated to use "size_t".
415
+
416
+ Needs resurrecting by making sure the fix is good and still applies
417
+ (or adjusted to today's codebase).
418
+
419
+--------------------------------------------------
420
+[Cooking]
421
+
422
+* bp/checkout-new-branch-optim (2018-08-16) 1 commit
423
+ - checkout: optimize "git checkout -b <new_branch>"
424
+
425
+ "git checkout -b newbranch [HEAD]" should not have to do as much as
426
+ checking out a commit different from HEAD. An attempt is made to
427
+ optimize this special case.
428
+
429
+ So... what is the status of this thing? Is the other "optimize
430
+ unpack-trees" effort turning out to be a safer and less hacky way
431
+ to achieve similar gain and this no longer is needed?
432
+
433
434
* en/t7406-fixes (2018-08-08) 5 commits
435
(merged to 'next' on 2018-08-15 at c6a740d828)
@@ -365,15 +473,16 @@ of the repositories listed at
473
474
475
* jt/repack-promisor-packs (2018-08-09) 2 commits
368
- - repack: repack promisor objects if -a or -A is set
369
- - repack: refactor setup of pack-objects cmd
476
+ (merged to 'next' on 2018-08-17 at 6869b53a69)
477
+ + repack: repack promisor objects if -a or -A is set
478
+ + repack: refactor setup of pack-objects cmd
479
480
After a partial clone, repeated fetches from promisor remote would
481
have accumulated many packfiles marked with .promisor bit without
482
getting them coalesced into fewer packfiles, hurting performance.
483
"git repack" now learned to repack them.
484
376
- Will merge to 'next'.
485
+ Will merge to 'master'.
486
487
488
* sk/instaweb-rh-update (2018-08-08) 2 commits
@@ -388,11 +497,12 @@ of the repositories listed at
497
498
499
* ab/submodule-relative-url-tests (2018-08-14) 1 commit
391
- - submodule: add more exhaustive up-path testing
500
+ (merged to 'next' on 2018-08-17 at 17b28d8262)
501
+ + submodule: add more exhaustive up-path testing
502
503
Test updates.
504
395
- Will merge to 'next'.
505
+ Will merge to 'master'.
506
507
508
* ao/submodule-wo-gitmodules-checked-out (2018-08-14) 7 commits
@@ -425,15 +535,14 @@ of the repositories listed at
535
Will merge to 'next'.
536
537
428
-* cc/delta-islands (2018-08-10) 8 commits
538
+* cc/delta-islands (2018-08-16) 7 commits
539
- pack-objects: move 'layer' into 'struct packing_data'
540
- pack-objects: move tree_depth into 'struct packing_data'
431
- - t5320: delta islands tests
541
+ - t5320: tests for delta islands
542
- repack: add delta-islands support
543
- pack-objects: add delta-islands support
544
- pack-objects: refactor code into compute_layer_order()
545
- Add delta-islands.{c,h}
436
- - packfile: make get_delta_base() non static
546
547
Lift code from GitHub to restrict delta computation so that an
548
object that exists in one fork is not made into a delta against
@@ -452,16 +561,17 @@ of the repositories listed at
561
562
563
* en/incl-forward-decl (2018-08-15) 6 commits
455
- - Remove forward declaration of an enum
456
- - compat/precompose_utf8.h: use more common include guard style
457
- - urlmatch.h: fix include guard
458
- - Move definition of enum branch_track from cache.h to branch.h
459
- - alloc: make allocate_alloc_state and clear_alloc_state more consistent
460
- - Add missing includes and forward declarations
564
+ (merged to 'next' on 2018-08-17 at 04fc9c11bb)
565
+ + Remove forward declaration of an enum
566
+ + compat/precompose_utf8.h: use more common include guard style
567
+ + urlmatch.h: fix include guard
568
+ + Move definition of enum branch_track from cache.h to branch.h
569
+ + alloc: make allocate_alloc_state and clear_alloc_state more consistent
570
+ + Add missing includes and forward declarations
571
572
Code hygiene improvement for the header files.
573
464
- Will merge to 'next'.
574
+ Will merge to 'master'.
575
576
577
* es/chain-lint-more (2018-08-13) 6 commits
@@ -556,7 +666,7 @@ of the repositories listed at
666
Will merge to 'master'.
667
668
559
-* md/filter-trees (2018-08-15) 6 commits
669
+* md/filter-trees (2018-08-16) 6 commits
670
- list-objects-filter: implement filter tree:0
671
- revision: mark non-user-given objects instead
672
- rev-list: handle missing tree objects properly
@@ -567,8 +677,6 @@ of the repositories listed at
677
The "rev-list --filter" feature learned to exclude all trees via
678
"tree:0" filter.
679
570
- Expecting a reroll.
571
-
680
681
* nd/no-the-index (2018-08-13) 24 commits
682
(merged to 'next' on 2018-08-15 at 41e53dc53b)
@@ -596,7 +704,6 @@ of the repositories listed at
704
+ attr: remove an implicit dependency on the_index
705
+ cache-tree: wrap the_index based wrappers with #ifdef
706
+ diff.c: move read_index() code back to the caller
599
- (this branch uses nd/no-extern.)
707
708
The more library-ish parts of the codebase learned to work on the
709
in-core index-state instance that is passed in by their callers,
@@ -667,326 +774,105 @@ of the repositories listed at
774
(this branch is used by pk/rebase-in-c-5-test and pk/rebase-in-c-6-final; uses pk/rebase-in-c, pk/rebase-in-c-2-basic and pk/rebase-in-c-3-acts.)
775
776
670
-* pk/rebase-in-c-5-test (2018-08-10) 6 commits
671
- - builtin rebase: error out on incompatible option/mode combinations
672
- - builtin rebase: use no-op editor when interactive is "implied"
673
- - builtin rebase: show progress when connected to a terminal
674
- - builtin rebase: fast-forward to onto if it is a proper descendant
675
- - builtin rebase: optionally pass custom reflogs to reset_head()
676
- - builtin rebase: optionally auto-detect the upstream
677
- (this branch is used by pk/rebase-in-c-6-final; uses pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts and pk/rebase-in-c-4-opts.)
678
-
679
-
680
-* pk/rebase-in-c-6-final (2018-08-10) 1 commit
681
- - rebase: default to using the builtin rebase
682
- (this branch uses pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts, pk/rebase-in-c-4-opts and pk/rebase-in-c-5-test.)
683
-
684
-
685
-* ps/stash-in-c (2018-08-08) 26 commits
686
- - stash: replace all "git apply" child processes with API calls
687
- - stash: replace all `write-tree` child processes with API calls
688
- - stash: optimize `get_untracked_files()` and `check_changes()`
689
- - stash: convert `stash--helper.c` into `stash.c`
690
- - stash: convert save to builtin
691
- - stash: replace spawning `git ls-files` child process
692
- - stash: add tests for `git stash push -q`
693
- - stash: make push to be quiet
694
- - stash: convert push to builtin
695
- - stash: avoid spawning a "diff-index" process
696
- - stash: replace spawning a "read-tree" process
697
- - stash: convert create to builtin
698
- - stash: convert store to builtin
699
- - stash: update `git stash show` documentation
700
- - stash: refactor `show_stash()` to use the diff API
701
- - stash: change `git stash show` usage text and documentation
702
- - stash: convert show to builtin
703
- - stash: implement the "list" command in the builtin
704
- - stash: convert pop to builtin
705
- - stash: convert branch to builtin
706
- - stash: convert drop and clear to builtin
707
- - stash: convert apply to builtin
708
- - stash: renamed test cases to be more descriptive
709
- - stash: update test cases conform to coding guidelines
710
- - stash: improve option parsing test coverage
711
- - sha1-name.c: added 'get_oidf', which acts like 'get_oid'
712
-
713
-
714
-* pw/rebase-i-squash-number-fix (2018-08-15) 2 commits
715
- - squash??? if this is easier to read
716
- - rebase -i: fix numbering in squash message
717
-
718
- When "git rebase -i" is told to squash two or more commits into
719
- one, it labeled the log message for each commit with its number.
720
- It correctly called the first one "1st commit", but the next one
721
- was "commit #1", which was off-by-one. This has been corrected.
722
-
723
- Will merge to 'next' after dropping the clean-up at the tip.
724
-
725
-
726
-* sb/pull-rebase-submodule (2018-08-14) 1 commit
727
- (merged to 'next' on 2018-08-15 at 07c7b55cc9)
728
- + git-submodule.sh: accept verbose flag in cmd_update to be non-quiet
729
-
730
- "git pull --rebase -v" in a repository with a submodule barfed as
731
- an intermediate process did not understand what "-v(erbose)" flag
732
- meant, which has been fixed.
733
-
734
- Will merge to 'master'.
735
-
736
-
737
-* sg/t5310-empty-input-fix (2018-08-14) 1 commit
738
- (merged to 'next' on 2018-08-15 at c3c03973a0)
739
- + t5310-pack-bitmaps: fix bogus 'pack-objects to file can use bitmap' test
740
-
741
- Test fix.
742
-
743
- Will merge to 'master'.
744
-
745
---------------------------------------------------
746
-[Stalled]
747
-
748
-* bp/checkout-new-branch-optim (2018-07-31) 1 commit
749
- - checkout: optimize "git checkout -b <new_branch>"
750
-
751
- "git checkout -b newbranch [HEAD]" should not have to do as much as
752
- checking out a commit different from HEAD. An attempt is made to
753
- optimize this special case.
754
-
755
- So... what is the status of this thing? Is the other "optimize
756
- unpack-trees" effort turning out to be a safer and less hacky way
757
- to achieve similar gain and this no longer is needed?
758
-
759
-
760
-* sl/commit-dry-run-with-short-output-fix (2018-07-30) 4 commits
761
- . commit: fix exit code when doing a dry run
762
- . wt-status: teach wt_status_collect about merges in progress
763
- . wt-status: rename commitable to committable
764
- . t7501: add coverage for flags which imply dry runs
765
-
766
- "git commit --dry-run" gave a correct exit status even during a
767
- conflict resolution toward a merge, but it did not with the
768
- "--short" option, which has been corrected.
769
-
770
- Seems to break 7512, 3404 and 7060 in 'pu'.
771
-
772
-
773
-* ma/wrapped-info (2018-05-28) 2 commits
774
- - usage: prefix all lines in `vreportf()`, not just the first
775
- - usage: extract `prefix_suffix_lines()` from `advise()`
776
-
777
- An attempt to help making multi-line messages fed to warning(),
778
- error(), and friends more easily translatable.
779
-
780
- Will discard and wait for a cleaned-up rewrite.
781
- cf. <20180529213957.GF7964@sigill.intra.peff.net>
782
-
783
-
784
-* hn/bisect-first-parent (2018-04-21) 1 commit
785
- - bisect: create 'bisect_flags' parameter in find_bisection()
786
-
787
- Preliminary code update to allow passing more flags down the
788
- bisection codepath in the future.
789
-
790
- We do not add random code that does not have real users to our
791
- codebase, so let's have it wait until such a real code materializes
792
- before too long.
793
-
794
-
795
-* av/fsmonitor-updates (2018-01-04) 6 commits
796
- - fsmonitor: use fsmonitor data in `git diff`
797
- - fsmonitor: remove debugging lines from t/t7519-status-fsmonitor.sh
798
- - fsmonitor: make output of test-dump-fsmonitor more concise
799
- - fsmonitor: update helper tool, now that flags are filled later
800
- - fsmonitor: stop inline'ing mark_fsmonitor_valid / _invalid
801
- - dir.c: update comments to match argument name
802
-
803
- Code clean-up on fsmonitor integration, plus optional utilization
804
- of the fsmonitor data in diff-files.
805
-
806
- Waiting for an update.
807
- cf. <alpine.DEB.2.21.1.1801042335130.32@MININT-6BKU6QN.europe.corp.microsoft.com>
808
-
809
-
810
-* pb/bisect-helper-2 (2018-07-23) 8 commits
811
- - t6030: make various test to pass GETTEXT_POISON tests
812
- - bisect--helper: `bisect_start` shell function partially in C
813
- - bisect--helper: `get_terms` & `bisect_terms` shell function in C
814
- - bisect--helper: `bisect_next_check` shell function in C
815
- - bisect--helper: `check_and_set_terms` shell function in C
816
- - wrapper: move is_empty_file() and rename it as is_empty_or_missing_file()
817
- - bisect--helper: `bisect_write` shell function in C
818
- - bisect--helper: `bisect_reset` shell function in C
819
-
820
- Expecting a reroll.
821
- cf. <0102015f5e5ee171-f30f4868-886f-47a1-a4e4-b4936afc545d-000000@eu-west-1.amazonses.com>
822
-
823
- I just rebased the topic to a newer base as it did not build
824
- standalone with the base I originally queued the topic on, but
825
- otherwise there is no update to address any of the review comments
826
- in the thread above---we are still waiting for a reroll.
827
-
828
-
829
-* jk/drop-ancient-curl (2017-08-09) 5 commits
830
- - http: #error on too-old curl
831
- - curl: remove ifdef'd code never used with curl >=7.19.4
832
- - http: drop support for curl < 7.19.4
833
- - http: drop support for curl < 7.16.0
834
- - http: drop support for curl < 7.11.1
835
-
836
- Some code in http.c that has bitrot is being removed.
837
-
838
- Expecting a reroll.
839
-
840
-
841
-* mk/use-size-t-in-zlib (2017-08-10) 1 commit
842
- . zlib.c: use size_t for size
843
-
844
- The wrapper to call into zlib followed our long tradition to use
845
- "unsigned long" for sizes of regions in memory, which have been
846
- updated to use "size_t".
847
-
848
- Needs resurrecting by making sure the fix is good and still applies
849
- (or adjusted to today's codebase).
850
-
851
---------------------------------------------------
852
-[Cooking]
853
-
854
-* js/rebase-merges-exec-fix (2018-08-09) 2 commits
855
- (merged to 'next' on 2018-08-15 at 9de975d92d)
856
- + rebase --exec: make it work with --rebase-merges
857
- + t3430: demonstrate what -r, --autosquash & --exec should do
858
-
859
- The "--exec" option to "git rebase --rebase-merges" placed the exec
860
- commands at wrong places, which has been corrected.
861
-
862
- Will merge to 'master'.
863
-
864
-
865
-* nd/no-extern (2018-08-03) 12 commits
866
- (merged to 'next' on 2018-08-08 at bcce75766b)
867
- + submodule.h: drop extern from function declaration
868
- + revision.h: drop extern from function declaration
869
- + repository.h: drop extern from function declaration
870
- + rerere.h: drop extern from function declaration
871
- + line-range.h: drop extern from function declaration
872
- + diff.h: remove extern from function declaration
873
- + diffcore.h: drop extern from function declaration
874
- + convert.h: drop 'extern' from function declaration
875
- + cache-tree.h: drop extern from function declaration
876
- + blame.h: drop extern on func declaration
877
- + attr.h: drop extern from function declaration
878
- + apply.h: drop extern on func declaration
879
- (this branch is used by nd/no-the-index.)
880
-
881
- Noiseword "extern" has been removed from function decls in the
882
- header files.
883
-
884
- Will merge to 'master'.
885
-
886
-
887
-* ar/t4150-am-scissors-test-fix (2018-08-06) 1 commit
888
- (merged to 'next' on 2018-08-08 at e639183205)
889
- + t4150: fix broken test for am --scissors
890
-
891
- Test fix.
892
-
893
- Will merge to 'master'.
894
-
895
-
896
-* en/t3031-title-fix (2018-08-06) 1 commit
897
- (merged to 'next' on 2018-08-08 at 3913b03884)
898
- + t3031: update test description to mention desired behavior
899
-
900
- Test fix.
777
+* pk/rebase-in-c-5-test (2018-08-10) 6 commits
778
+ - builtin rebase: error out on incompatible option/mode combinations
779
+ - builtin rebase: use no-op editor when interactive is "implied"
780
+ - builtin rebase: show progress when connected to a terminal
781
+ - builtin rebase: fast-forward to onto if it is a proper descendant
782
+ - builtin rebase: optionally pass custom reflogs to reset_head()
783
+ - builtin rebase: optionally auto-detect the upstream
784
+ (this branch is used by pk/rebase-in-c-6-final; uses pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts and pk/rebase-in-c-4-opts.)
785
902
- Will merge to 'master'.
786
787
+* pk/rebase-in-c-6-final (2018-08-10) 1 commit
788
+ - rebase: default to using the builtin rebase
789
+ (this branch uses pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts, pk/rebase-in-c-4-opts and pk/rebase-in-c-5-test.)
790
905
-* hn/config-in-code-comment (2018-08-06) 1 commit
906
- (merged to 'next' on 2018-08-08 at 1fae946a0f)
907
- + config: document git config getter return value
791
+ With "rebase -i" machinery being rewritten to C, with a different
792
+ interface between "rebase" proper and its backends, this and the
793
+ other topics need a bit more work to play with each other better.
794
909
- Header update.
795
911
- Will merge to 'master'.
796
+* ps/stash-in-c (2018-08-08) 26 commits
797
+ - stash: replace all "git apply" child processes with API calls
798
+ - stash: replace all `write-tree` child processes with API calls
799
+ - stash: optimize `get_untracked_files()` and `check_changes()`
800
+ - stash: convert `stash--helper.c` into `stash.c`
801
+ - stash: convert save to builtin
802
+ - stash: replace spawning `git ls-files` child process
803
+ - stash: add tests for `git stash push -q`
804
+ - stash: make push to be quiet
805
+ - stash: convert push to builtin
806
+ - stash: avoid spawning a "diff-index" process
807
+ - stash: replace spawning a "read-tree" process
808
+ - stash: convert create to builtin
809
+ - stash: convert store to builtin
810
+ - stash: update `git stash show` documentation
811
+ - stash: refactor `show_stash()` to use the diff API
812
+ - stash: change `git stash show` usage text and documentation
813
+ - stash: convert show to builtin
814
+ - stash: implement the "list" command in the builtin
815
+ - stash: convert pop to builtin
816
+ - stash: convert branch to builtin
817
+ - stash: convert drop and clear to builtin
818
+ - stash: convert apply to builtin
819
+ - stash: renamed test cases to be more descriptive
820
+ - stash: update test cases conform to coding guidelines
821
+ - stash: improve option parsing test coverage
822
+ - sha1-name.c: added 'get_oidf', which acts like 'get_oid'
823
824
914
-* jk/diff-rendered-docs (2018-08-06) 1 commit
915
- (merged to 'next' on 2018-08-08 at fe6e1b4dbe)
916
- + add a script to diff rendered documentation
825
+* pw/rebase-i-squash-number-fix (2018-08-15) 1 commit
826
+ (merged to 'next' on 2018-08-17 at ac54dfa51a)
827
+ + rebase -i: fix numbering in squash message
828
918
- Developer support to allow the end result of documentation update
919
- to be inspected more easily.
829
+ When "git rebase -i" is told to squash two or more commits into
830
+ one, it labeled the log message for each commit with its number.
831
+ It correctly called the first one "1st commit", but the next one
832
+ was "commit #1", which was off-by-one. This has been corrected.
833
834
Will merge to 'master'.
835
836
924
-* js/pull-rebase-type-shorthand (2018-08-06) 1 commit
925
- (merged to 'next' on 2018-08-08 at 9213756b36)
926
- + pull --rebase=<type>: allow single-letter abbreviations for the type
837
+* sb/pull-rebase-submodule (2018-08-14) 1 commit
838
+ (merged to 'next' on 2018-08-15 at 07c7b55cc9)
839
+ + git-submodule.sh: accept verbose flag in cmd_update to be non-quiet
840
928
- "git pull --rebase=interactive" learned "i" as a short-hand for
929
- "interactive".
841
+ "git pull --rebase -v" in a repository with a submodule barfed as
842
+ an intermediate process did not understand what "-v(erbose)" flag
843
+ meant, which has been fixed.
844
845
Will merge to 'master'.
846
847
934
-* nd/complete-config-vars (2018-08-06) 1 commit
935
- (merged to 'next' on 2018-08-08 at ffc8e1a3cd)
936
- + Makefile: add missing dependency for command-list.h
848
+* sg/t5310-empty-input-fix (2018-08-14) 1 commit
849
+ (merged to 'next' on 2018-08-15 at c3c03973a0)
850
+ + t5310-pack-bitmaps: fix bogus 'pack-objects to file can use bitmap' test
851
938
- Build fix.
852
+ Test fix.
853
854
Will merge to 'master'.
855
856
943
-* nd/config-blame-sort (2018-08-06) 1 commit
944
- (merged to 'next' on 2018-08-08 at 34ebb9888f)
945
- + config.txt: reorder blame stuff to keep config keys sorted
857
+* js/rebase-merges-exec-fix (2018-08-09) 2 commits
858
+ (merged to 'next' on 2018-08-15 at 9de975d92d)
859
+ + rebase --exec: make it work with --rebase-merges
860
+ + t3430: demonstrate what -r, --autosquash & --exec should do
861
947
- Doc fix.
862
+ The "--exec" option to "git rebase --rebase-merges" placed the exec
863
+ commands at wrong places, which has been corrected.
864
865
Will merge to 'master'.
866
867
868
* wc/make-funnynames-shared-lazy-prereq (2018-08-06) 1 commit
953
- - t: factor out FUNNYNAMES as shared lazy prereq
869
+ (merged to 'next' on 2018-08-17 at b932a0894b)
870
+ + t: factor out FUNNYNAMES as shared lazy prereq
871
872
A test prerequisite defined by various test scripts with slightly
956
- different sematics has been consolidated into a single copy and
873
+ different semantics has been consolidated into a single copy and
874
made into a lazily defined one.
875
959
- Will merge to 'next'.
960
-
961
-
962
-* ab/fsck-transfer-updates (2018-07-27) 10 commits
963
- (merged to 'next' on 2018-08-08 at d92085269f)
964
- + fsck: test and document unknown fsck.<msg-id> values
965
- + fsck: add stress tests for fsck.skipList
966
- + fsck: test & document {fetch,receive}.fsck.* config fallback
967
- + fetch: implement fetch.fsck.*
968
- + transfer.fsckObjects tests: untangle confusing setup
969
- + config doc: elaborate on fetch.fsckObjects security
970
- + config doc: elaborate on what transfer.fsckObjects does
971
- + config doc: unify the description of fsck.* and receive.fsck.*
972
- + config doc: don't describe *.fetchObjects twice
973
- + receive.fsck.<msg-id> tests: remove dead code
974
-
975
- The test performed at the receiving end of "git push" to prevent
976
- bad objects from entering repository can be customized via
977
- receive.fsck.* configuration variables; we now have gained a
978
- counterpart to do the same on the "git fetch" side, with
979
- fetch.fsck.* configuration variables.
980
-
981
- Will merge to 'master'.
982
-
983
-
984
-* ab/test-must-be-empty (2018-07-30) 1 commit
985
- (merged to 'next' on 2018-08-08 at 06599ebd1f)
986
- + tests: make use of the test_must_be_empty function
987
-
988
- Test updates.
989
-
876
Will merge to 'master'.
877
878
@@ -999,22 +885,8 @@ of the repositories listed at
885
Will merge to 'master'.
886
887
1002
-* es/rebase-i-author-script-fix (2018-07-31) 4 commits
1003
- (merged to 'next' on 2018-08-08 at 6b34261b72)
1004
- + sequencer: don't die() on bogus user-edited timestamp
1005
- + sequencer: fix "rebase -i --root" corrupting author header timestamp
1006
- + sequencer: fix "rebase -i --root" corrupting author header timezone
1007
- + sequencer: fix "rebase -i --root" corrupting author header
1008
- (this branch is used by pw/rebase-i-author-script-fix.)
1009
-
1010
- The "author-script" file "git rebase -i" creates got broken when
1011
- we started to move the command away from shell script, which is
1012
- getting fixed now.
1013
-
1014
- Will merge to 'master'.
1015
-
1016
-
1017
-* hn/highlight-sideband-keywords (2018-08-08) 1 commit
888
+* hn/highlight-sideband-keywords (2018-08-17) 2 commits
889
+ - sideband: do not read beyond the end of input
890
(merged to 'next' on 2018-08-15 at f8945f3be5)
891
+ sideband: highlight keywords in remote sideband output
892
@@ -1024,26 +896,6 @@ of the repositories listed at
896
Will merge to 'master'.
897
898
1027
-* sb/indent-heuristic-optim (2018-08-01) 1 commit
1028
- (merged to 'next' on 2018-08-08 at 539dcc967a)
1029
- + xdiff: reduce indent heuristic overhead
1030
-
1031
- "git diff --indent-heuristic" had a bad corner case performance.
1032
-
1033
- Will merge to 'master'.
1034
-
1035
-
1036
-* ab/fetch-nego (2018-08-01) 3 commits
1037
- (merged to 'next' on 2018-08-08 at 87662bb344)
1038
- + fetch doc: cross-link two new negotiation options
1039
- + negotiator: unknown fetch.negotiationAlgorithm should error out
1040
- + Merge branch 'jt/fetch-nego-tip' into ab/fetch-nego
1041
-
1042
- Update to a few other topics.
1043
-
1044
- Will merge to 'master'.
1045
-
1046
-
899
* ab/fetch-tags-noclobber (2018-08-13) 7 commits
900
(merged to 'next' on 2018-08-15 at eca0ac8afa)
901
+ pull doc: fix a long-standing grammar error
@@ -1059,31 +911,7 @@ of the repositories listed at
911
Will merge to 'master'.
912
913
1062
-* jk/merge-subtree-heuristics (2018-08-02) 1 commit
1063
- (merged to 'next' on 2018-08-08 at 5126c2d717)
1064
- + score_trees(): fix iteration over trees with missing entries
1065
-
1066
- The automatic tree-matching in "git merge -s subtree" was broken 5
1067
- years ago and nobody has noticed since then, which is now fixed.
1068
-
1069
- Will merge to 'master'.
1070
-
1071
-
1072
-* jt/refspec-dwim-precedence-fix (2018-08-02) 1 commit
1073
- (merged to 'next' on 2018-08-08 at 34d0484d3a)
1074
- + remote: make refspec follow the same disambiguation rule as local refs
1075
-
1076
- "git fetch $there refs/heads/s" ought to fetch the tip of the
1077
- branch 's', but when "refs/heads/refs/heads/s", i.e. a branch whose
1078
- name is "refs/heads/s" exists at the same time, fetched that one
1079
- instead by mistake. This has been corrected to honor the usual
1080
- disambiguation rules for abbreviated refnames.
1081
-
1082
- Will merge to 'master'.
1083
-
1084
-
1085
-* nd/clone-case-smashing-warning (2018-08-14) 2 commits
1086
- - mark_colliding_entries(): fix incorrect #if...#endif guard
914
+* nd/clone-case-smashing-warning (2018-08-17) 1 commit
915
- clone: report duplicate entries on case-insensitive filesystems
916
917
Running "git clone" against a project that contain two files with
@@ -1092,8 +920,7 @@ of the repositories listed at
920
underlying filesystem is incapable of holding both at the same
921
time. An attempt is made to detect such a case and warn.
922
1095
- Expecting a new round of discussion.
1096
- cf. <20180815190816.GA26521@tor.lan>
923
+ Will merge to 'next'.
924
925
926
* nd/unpack-trees-with-cache-tree (2018-08-13) 5 commits
@@ -1115,15 +942,15 @@ of the repositories listed at
942
943
944
* sb/config-write-fix (2018-08-08) 3 commits
1118
- - git-config: document accidental multi-line setting in deprecated syntax
1119
- - config: fix case sensitive subsection names on writing
1120
- - t1300: document current behavior of setting options
945
+ (merged to 'next' on 2018-08-17 at 7d9c7ce81f)
946
+ + git-config: document accidental multi-line setting in deprecated syntax
947
+ + config: fix case sensitive subsection names on writing
948
+ + t1300: document current behavior of setting options
949
950
Recent update to "git config" broke updating variable in a
951
subsection, which has been corrected.
952
1125
- Expecting a reroll.
1126
- cf. <CAGZ79kZ1R8sxmtfgPOQcpoWM7GWV1qiRaqMq_zhGyKBB3ARLjg@mail.gmail.com>
953
+ Will merge to 'master'.
954
955
956
* sb/range-diff-colors (2018-08-14) 8 commits
@@ -1147,28 +974,9 @@ of the repositories listed at
974
An attempt to unflake a test a bit.
975
976
1150
-* ab/sha1dc (2018-08-02) 1 commit
1151
- (merged to 'next' on 2018-08-08 at 920c190941)
1152
- + sha1dc: update from upstream
1153
-
1154
- AIX portability update for SHA1DC hash, imported from upstream.
1155
-
1156
- Will merge to 'master'.
1157
-
1158
-
1159
-* es/want-color-fd-defensive (2018-08-03) 1 commit
1160
- (merged to 'next' on 2018-08-08 at a11d90d26f)
1161
- + color: protect against out-of-bounds reads and writes
1162
-
1163
- Futureproofing a helper function that can easily misused.
1164
-
1165
- Will merge to 'master'.
1166
-
1167
-
977
* pw/rebase-i-author-script-fix (2018-08-07) 2 commits
978
- sequencer: fix quoting in write_author_script
979
- sequencer: handle errors from read_author_ident()
1171
- (this branch uses es/rebase-i-author-script-fix.)
980
981
Recent "git rebase -i" update started to write bogusly formatted
982
author-script, with a matching broken reading code. These are
@@ -1179,25 +987,6 @@ of the repositories listed at
987
script written by bad writer" approach?
988
989
1182
-* rs/parse-opt-lithelp (2018-08-03) 7 commits
1183
- (merged to 'next' on 2018-08-08 at 3a4e0142fe)
1184
- + parse-options: automatically infer PARSE_OPT_LITERAL_ARGHELP
1185
- + shortlog: correct option help for -w
1186
- + send-pack: specify --force-with-lease argument help explicitly
1187
- + pack-objects: specify --index-version argument help explicitly
1188
- + difftool: remove angular brackets from argument help
1189
- + add, update-index: fix --chmod argument help
1190
- + push: use PARSE_OPT_LITERAL_ARGHELP instead of unbalanced brackets
1191
-
1192
- The parse-options machinery learned to refrain from enclosing
1193
- placeholder string inside a "<bra" and "ket>" pair automatically
1194
- without PARSE_OPT_LITERAL_ARGHELP. Existing help text for option
1195
- arguments that are not formatted correctly have been identified and
1196
- fixed.
1197
-
1198
- Will merge to 'master'.
1199
-
1200
-
990
* pw/add-p-select (2018-07-26) 4 commits
991
- add -p: optimize line selection for short hunks
992
- add -p: allow line selection to be inverted
@@ -1214,21 +1003,6 @@ of the repositories listed at
1003
end-user complaints, but let's see.
1004
1005
1217
-* mk/http-backend-content-length (2018-07-30) 4 commits
1218
- (merged to 'next' on 2018-08-08 at 0091062ec4)
1219
- + t5562: avoid non-portable "export FOO=bar" construct
1220
- + http-backend: respect CONTENT_LENGTH for receive-pack
1221
- + http-backend: respect CONTENT_LENGTH as specified by rfc3875
1222
- + http-backend: cleanup writing to child process
1223
-
1224
- The http-backend (used for smart-http transport) used to slurp the
1225
- whole input until EOF, without paying attention to CONTENT_LENGTH
1226
- that is supplied in the environment and instead expecting the Web
1227
- server to close the input stream. This has been fixed.
1228
-
1229
- Will merge to 'master'.
1230
-
1231
-
1006
* ds/commit-graph-with-grafts (2018-07-19) 8 commits
1007
(merged to 'next' on 2018-08-02 at 0ee624e329)
1008
+ commit-graph: close_commit_graph before shallow walk
@@ -1246,9 +1020,8 @@ of the repositories listed at
1020
based on its use (and updating existing commit-graph) when these
1021
incompatible features are in use in the repository.
1022
1249
- Perhaps eject and replace with another reroll when it comes.
1250
- cf. <a3640919-95cf-cca4-d552-4715a031dd7f@gmail.com>
1251
- cf. <86bmap7l7a.fsf@gmail.com>
1023
+ Eject and replace with another reroll when it comes.
1024
+ cf. <85c6eb4c-a083-4fb7-4860-b01a8ce9fa4f@gmail.com>
1025
1026
1027
* ds/reachable (2018-07-20) 18 commits
@@ -1366,18 +1139,6 @@ of the repositories listed at
1139
Will merge to 'next'.
1140
1141
1369
-* en/abort-df-conflict-fixes (2018-07-31) 2 commits
1370
- (merged to 'next' on 2018-08-08 at a19cad0bb7)
1371
- + read-cache: fix directory/file conflict handling in read_index_unmerged()
1372
- + t1015: demonstrate directory/file conflict recovery failures
1373
-
1374
- "git merge --abort" etc. did not clean things up properly when
1375
- there were conflicted entries in certain order that are involved
1376
- in D/F conflicts. This has been corrected.
1377
-
1378
- Will merge to 'master'.
1379
-
1380
-
1142
* jn/gc-auto (2018-07-17) 3 commits
1143
- gc: do not return error for prior errors in daemonized mode
1144
- gc: exit with status 128 on failure
@@ -1395,36 +1156,38 @@ of the repositories listed at
1156
1157
1158
* sb/submodule-update-in-c (2018-08-14) 7 commits
1398
- - submodule--helper: introduce new update-module-mode helper
1399
- - submodule--helper: replace connect-gitdir-workingtree by ensure-core-worktree
1400
- - builtin/submodule--helper: factor out method to update a single submodule
1401
- - builtin/submodule--helper: store update_clone information in a struct
1402
- - builtin/submodule--helper: factor out submodule updating
1403
- - git-submodule.sh: rename unused variables
1404
- - git-submodule.sh: align error reporting for update mode to use path
1159
+ (merged to 'next' on 2018-08-17 at 23c81e5ff7)
1160
+ + submodule--helper: introduce new update-module-mode helper
1161
+ + submodule--helper: replace connect-gitdir-workingtree by ensure-core-worktree
1162
+ + builtin/submodule--helper: factor out method to update a single submodule
1163
+ + builtin/submodule--helper: store update_clone information in a struct
1164
+ + builtin/submodule--helper: factor out submodule updating
1165
+ + git-submodule.sh: rename unused variables
1166
+ + git-submodule.sh: align error reporting for update mode to use path
1167
1168
"git submodule update" is getting rewritten piece-by-piece into C.
1169
1408
- Will merge to and cook in 'next'.
1170
+ Will cook in 'next'.
1171
1172
1173
* tg/rerere (2018-08-06) 11 commits
1412
- - rerere: recalculate conflict ID when unresolved conflict is committed
1413
- - rerere: teach rerere to handle nested conflicts
1414
- - rerere: return strbuf from handle path
1415
- - rerere: factor out handle_conflict function
1416
- - rerere: only return whether a path has conflicts or not
1417
- - rerere: fix crash with files rerere can't handle
1418
- - rerere: add documentation for conflict normalization
1419
- - rerere: mark strings for translation
1420
- - rerere: wrap paths in output in sq
1421
- - rerere: lowercase error messages
1422
- - rerere: unify error messages when read_cache fails
1174
+ (merged to 'next' on 2018-08-17 at 919a958cdc)
1175
+ + rerere: recalculate conflict ID when unresolved conflict is committed
1176
+ + rerere: teach rerere to handle nested conflicts
1177
+ + rerere: return strbuf from handle path
1178
+ + rerere: factor out handle_conflict function
1179
+ + rerere: only return whether a path has conflicts or not
1180
+ + rerere: fix crash with files rerere can't handle
1181
+ + rerere: add documentation for conflict normalization
1182
+ + rerere: mark strings for translation
1183
+ + rerere: wrap paths in output in sq
1184
+ + rerere: lowercase error messages
1185
+ + rerere: unify error messages when read_cache fails
1186
1187
Fixes to "git rerere" corner cases, especially when conflict
1188
markers cannot be parsed in the file.
1189
1427
- Will merge to and cook in 'next'.
1190
+ Will cook in 'next'.
1191
1192
1193
* ag/rebase-i-in-c (2018-08-10) 20 commits
@@ -1451,7 +1214,9 @@ of the repositories listed at
1214
1215
Rewrite of the remaining "rebase -i" machinery in C.
1216
1454
- Will merge to 'next'.
1217
+ With "rebase -i" machinery being rewritten to C, with a different
1218
+ interface between "rebase" proper and its backends, this and the
1219
+ other topics need a bit more work to play with each other better.
1220
1221
1222
* js/range-diff (2018-08-13) 21 commits
@@ -1496,23 +1261,6 @@ of the repositories listed at
1261
format.
1262
1263
1499
-* ot/ref-filter-object-info (2018-07-17) 5 commits
1500
- (merged to 'next' on 2018-08-08 at 9ed619941b)
1501
- + ref-filter: use oid_object_info() to get object
1502
- + ref-filter: merge get_obj and get_object
1503
- + ref-filter: initialize eaten variable
1504
- + ref-filter: fill empty fields with empty values
1505
- + ref-filter: add info_source to valid_atom
1506
-
1507
- A few atoms like %(objecttype) and %(objectsize) in the format
1508
- specifier of "for-each-ref --format=<format>" can be filled without
1509
- getting the full contents of the object, but just with the object
1510
- header. These cases have been optimzied by calling
1511
- oid_object_info() API.
1512
-
1513
- Will merge to 'master'.
1514
-
1515
-
1264
* pk/rebase-in-c (2018-08-06) 3 commits
1265
- builtin/rebase: support running "git rebase <upstream>"
1266
- rebase: refactor common shell functions into their own file
@@ -1528,7 +1276,7 @@ of the repositories listed at
1276
1277
Updated plan to repurpose the "-l" option to "git branch".
1278
1531
- Will merge to and cook in 'next'.
1279
+ Will cook in 'next'.
1280
1281
1282
* ds/multi-pack-index (2018-07-20) 23 commits
@@ -1562,7 +1310,7 @@ of the repositories listed at
1310
consulting many pack .idx files; a new mechanism to have a single
1311
file that consolidates all of these .idx files is introduced.
1312
1565
- Will merge to and cook in 'next'.
1313
+ Will cook in 'next'.
1314
1315
--------------------------------------------------
1316
[Discarded]