What's cooking (2018/01 #01)

Junio C Hamano committed Jan 5, 2018 at 15:14 UTC dd0040b2fc6e4a485d988f2e7583003b7beb8136
1 file changed +521 -493
whats-cooking.txt
+521 -493
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Dec 2017, #05; Wed, 27)
4 -X-master-at: 29533fb16899725af9306e0c3b83da8954c0e48a
5 -X-next-at: 6967081ed51529cca3ee7e069552338903ad0b30
3 +Subject: What's cooking in git.git (Jan 2018, #01; Fri, 5)
4 +X-master-at: 36438dc19dd2a305dddebd44bf7a65f1a220075b
5 +X-next-at: 530d649a790d987a1100dafee4f7a635c11cd855
6
7 -What's cooking in git.git (Dec 2017, #05; Wed, 27)
7 +What's cooking in git.git (Jan 2018, #01; Fri, 5)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -12,6 +12,11 @@ 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 'master' has been tagged as 2.16-rc1; I am aware that a
16 +handful of larger topics are on the list, yet to be picked up, but
17 +now we are pretty much in feature-freeze mode before the release;
18 +please shift your attention to fixes from shiny new toys.
19 +
20 You can find the changes described here in the integration branches
21 of the repositories listed at
22
@@ -20,319 +25,509 @@ of the repositories listed at
25 --------------------------------------------------
26 [Graduated to "master"]
27
23 -* bw/submodule-sans-cache-compat (2017-12-12) 3 commits
24 - (merged to 'next' on 2017-12-14 at 6893bdeed3)
25 - + submodule: convert get_next_submodule to not rely on the_index
26 - + submodule: used correct index in is_staging_gitmodules_ok
27 - + submodule: convert stage_updated_gitmodules to take a struct index_state
28 +* bp/fsmonitor (2017-12-18) 1 commit
29 + (merged to 'next' on 2017-12-27 at ce216e2978)
30 + + p7519: improve check for prerequisite WATCHMAN
31
29 - Code clean-up.
32 + Test fix.
33
34
32 -* db/doc-workflows-neuter-the-maintainer (2017-12-08) 1 commit
33 - (merged to 'next' on 2017-12-14 at 740788d890)
34 - + doc: reword gitworkflows.txt for neutrality
35 +* bw/path-doc (2017-12-13) 1 commit
36 + (merged to 'next' on 2017-12-19 at 2cddee77ca)
37 + + path: document path functions
38
36 - Docfix.
39 + Doc updates.
40 +
41 +
42 +* cc/skip-to-optional-val (2017-12-11) 7 commits
43 + (merged to 'next' on 2017-12-27 at 1b189d8556)
44 + + t4045: reindent to make helpers readable
45 + + diff: add tests for --relative without optional prefix value
46 + + diff: use skip_to_optional_arg_default() in parsing --relative
47 + + diff: use skip_to_optional_arg_default()
48 + + diff: use skip_to_optional_arg()
49 + + index-pack: use skip_to_optional_arg()
50 + + git-compat-util: introduce skip_to_optional_arg()
51 +
52 + Introduce a helper to simplify code to parse a common pattern that
53 + expects either "--key" or "--key=<something>".
54 +
55 +
56 +* db/doc-config-section-names-with-bs (2017-12-22) 1 commit
57 + (merged to 'next' on 2017-12-28 at e744b99449)
58 + + config.txt: document behavior of backslashes in subsections
59 +
60 + Doc update.
61
62
39 -* es/clone-shared-worktree (2017-12-11) 1 commit
40 - (merged to 'next' on 2017-12-14 at 248ef92bda)
41 - + clone: support 'clone --shared' from a worktree
63 +* ew/empty-merge-with-dirty-index (2017-12-22) 1 commit
64 + (merged to 'next' on 2017-12-28 at 17aa5ec010)
65 + + Merge branch 'ew/empty-merge-with-dirty-index-maint' into ew/empty-merge-with-dirty-index
66 + (this branch uses ew/empty-merge-with-dirty-index-maint.)
67
43 - "git clone --shared" to borrow from a (secondary) worktree did not
44 - work, even though "git clone --local" did. Both are now accepted.
68 + "git merge -s recursive" did not correctly abort when the index is
69 + dirty, if the merged tree happened to be the same as the current
70 + HEAD, which has been fixed.
71 +
72 +
73 +* ew/empty-merge-with-dirty-index-maint (2017-12-22) 3 commits
74 + + merge-recursive: avoid incorporating uncommitted changes in a merge
75 + + move index_has_changes() from builtin/am.c to merge.c for reuse
76 + + t6044: recursive can silently incorporate dirty changes in a merge
77 + (this branch is used by ew/empty-merge-with-dirty-index.)
78 +
79 + "git merge -s recursive" did not correctly abort when the index is
80 + dirty, if the merged tree happened to be the same as the current
81 + HEAD, which has been fixed.
82 +
83 +
84 +* ew/svn-crlf (2017-12-14) 2 commits
85 + (merged to 'next' on 2017-12-27 at 1b81bd634d)
86 + + Merge branch 'svn-crlf' of git://bogomips.org/git-svn into ew/svn-crlf
87 + + git-svn: convert CRLF to LF in commit message to SVN
88
89 + "git svn" has been updated to strip CRs in the commit messages, as
90 + recent versions of Subversion rejects them.
91
47 -* es/worktree-checkout-hook (2017-12-07) 1 commit
48 - (merged to 'next' on 2017-12-14 at 907d958351)
49 - + worktree: invoke post-checkout hook (unless --no-checkout)
92
51 - "git worktree add" learned to run the post-checkout hook, just like
52 - "git checkout" does, after the initial checkout.
93 +* hi/merge-verify-sig-config (2017-12-19) 3 commits
94 + (merged to 'next' on 2017-12-27 at 34360fb1c1)
95 + + t5573, t7612: clean up after unexpected success of 'pull' and 'merge'
96 + (merged to 'next' on 2017-12-14 at cdc511dc36)
97 + + t: add tests for pull --verify-signatures
98 + + merge: add config option for verifySignatures
99
100 + "git merge" learned to pay attention to merge.verifySignatures
101 + configuration variable and pretend as if '--verify-signatures'
102 + option was given from the command line.
103
55 -* jh/object-filtering (2017-12-05) 9 commits
56 - (merged to 'next' on 2017-12-05 at 3a56b51085)
57 - + rev-list: support --no-filter argument
58 - + list-objects-filter-options: support --no-filter
59 - + list-objects-filter-options: fix 'keword' typo in comment
60 - (merged to 'next' on 2017-11-27 at e5008c3b28)
61 - + pack-objects: add list-objects filtering
62 - + rev-list: add list-objects filtering support
63 - + list-objects: filter objects in traverse_commit_list
64 - + oidset: add iterator methods to oidset
65 - + oidmap: add oidmap iterator methods
66 - + dir: allow exclusions from blob in addition to file
67 - (this branch is used by jh/fsck-promisors and jh/partial-clone.)
104
69 - In preparation for implementing narrow/partial clone, the object
70 - walking machinery has been taught a way to tell it to "filter" some
71 - objects from enumeration.
105 +* jd/fix-strbuf-add-urlencode-bytes (2017-12-22) 1 commit
106 + (merged to 'next' on 2017-12-28 at 7f4f291966)
107 + + strbuf: fix urlencode format string on signed char
108
109 + Bytes with high-bit set were encoded incorrectly and made
110 + credential helper fail.
111
74 -* jk/cvsimport-quoting (2017-12-08) 1 commit
75 - (merged to 'next' on 2017-12-14 at ea99dc966c)
76 - + cvsimport: apply shell-quoting regex globally
112
78 - Typo/Logico fix.
113 +* jh/memihash-opt (2017-12-22) 1 commit
114 + (merged to 'next' on 2017-12-28 at bf96e0d849)
115 + + t/helper/test-lazy-name-hash: fix compilation
116
117 + Squelch compiler warning.
118
81 -* jt/decorate-api (2017-12-08) 1 commit
82 - (merged to 'next' on 2017-12-14 at b14858df40)
83 - + decorate: clean up and document API
119
85 - A few structures and variables that are implementation details of
86 - the decorate API have been renamed and then the API got documented
87 - better.
120 +* jh/partial-clone-doc (2017-12-14) 1 commit
121 + (merged to 'next' on 2017-12-27 at 3695847773)
122 + + partial-clone: design doc
123
124
90 -* jt/transport-no-more-rsync (2017-12-12) 1 commit
91 - (merged to 'next' on 2017-12-14 at 456913ad25)
92 - + transport: remove unused "push" in vtable
93 - (this branch is used by jt/transport-hide-vtable.)
125 +* jk/test-suite-tracing (2017-12-08) 4 commits
126 + (merged to 'next' on 2017-12-27 at 7034a51474)
127 + + t/Makefile: introduce TEST_SHELL_PATH
128 + + test-lib: make "-x" work with "--verbose-log"
129 + + t5615: avoid re-using descriptor 4
130 + + test-lib: silence "-x" cleanup under bash
131
95 - Code clean-up.
132 + Assorted fixes around running tests with "-x" tracing option.
133
134
98 -* ks/branch-cleanup (2017-12-07) 4 commits
99 - (merged to 'next' on 2017-12-14 at af0a906984)
100 - + builtin/branch: strip refs/heads/ using skip_prefix
101 - + branch: update warning message shown when copying a misnamed branch
102 - + branch: group related arguments of create_branch()
103 - + branch: improve documentation and naming of create_branch() parameters
135 +* js/enhanced-version-info (2017-12-14) 2 commits
136 + (merged to 'next' on 2017-12-27 at a95dd96a78)
137 + + version --build-options: report commit, too, if possible
138 + + version --build-options: also report host CPU
139
105 - Code clean-up.
140 + "git version --build-options" learned to report the host CPU and
141 + the exact commit object name the binary was built from.
142
143
108 -* lb/rebase-i-short-command-names (2017-12-05) 9 commits
109 - (merged to 'next' on 2017-12-14 at 0637be0782)
110 - + t3404: add test case for abbreviated commands
111 - + rebase -i: learn to abbreviate command names
112 - + rebase -i -x: add exec commands via the rebase--helper
113 - + rebase -i: update functions to use a flags parameter
114 - + rebase -i: replace reference to sha1 with oid
115 - + rebase -i: refactor transform_todo_ids
116 - + rebase -i: set commit to null in exec commands
117 - + Documentation: use preferred name for the 'todo list' script
118 - + Documentation: move rebase.* configs to new file
144 +* js/sequencer-cleanups (2017-12-27) 5 commits
145 + (merged to 'next' on 2017-12-28 at 23c10afb09)
146 + + sequencer: do not invent whitespace when transforming OIDs
147 + + sequencer: report when noop has an argument
148 + + sequencer: remove superfluous conditional
149 + + sequencer: strip bogus LF at end of error messages
150 + + rebase: do not continue when the todo list generation failed
151
120 - With a configuration variable rebase.abbreviateCommands set,
121 - "git rebase -i" produces the todo list with a single-letter
122 - command names.
152 + Code cleanup.
153
154
125 -* ot/pretty (2017-12-12) 2 commits
126 - (merged to 'next' on 2017-12-14 at d80fe80aed)
127 - + format: create docs for pretty.h
128 - + format: create pretty.h file
155 +* jt/transport-hide-vtable (2017-12-14) 2 commits
156 + (merged to 'next' on 2017-12-27 at 8dc27cfb53)
157 + + transport: make transport vtable more private
158 + + clone, fetch: remove redundant transport check
159
160 Code clean-up.
161
162
133 -* rb/quick-install-doc (2017-12-12) 1 commit
134 - (merged to 'next' on 2017-12-14 at 96c17a83fa)
135 - + install-doc-quick: allow specifying what ref to install
163 +* ks/doc-previous-checkout (2017-12-19) 1 commit
164 + (merged to 'next' on 2017-12-27 at c706239a69)
165 + + Doc/check-ref-format: clarify information about @{-N} syntax
166 +
167 + Doc update.
168 +
169
137 - The build procedure now allows not just the repositories but also
138 - the refs to be used to take pre-formatted manpages and html
139 - documents to install.
170 +* ks/rebase-error-messages (2017-12-19) 3 commits
171 + (merged to 'next' on 2017-12-27 at 80c62260ad)
172 + + rebase: rebasing can also be done when HEAD is detached
173 + + rebase: distinguish user input by quoting it
174 + + rebase: consistently use branch_name variable
175
176 + Error messages from "git rebase" have been somewhat cleaned up.
177
142 -* rs/am-builtin-leakfix (2017-12-07) 1 commit
143 - (merged to 'next' on 2017-12-14 at 30bf70d2cb)
144 - + am: release strbuf after use in split_mail_mbox()
178
146 - Leakfix.
179 +* ld/p4-multiple-shelves (2017-12-22) 1 commit
180 + (merged to 'next' on 2017-12-28 at 6c29703427)
181 + + git-p4: update multiple shelved change lists
182
183 + "git p4" update.
184
149 -* rs/fmt-merge-msg-leakfix (2017-12-08) 1 commit
150 - (merged to 'next' on 2017-12-14 at b87794d837)
151 - + transport-helper: plug strbuf and string_list leaks
185
153 - Leakfix.
186 +* nm/imap-send-quote-server-folder-name (2017-12-18) 1 commit
187 + (merged to 'next' on 2017-12-27 at 79326a0b77)
188 + + imap-send: URI encode server folder
189 +
190 + "git imap-send" did not correctly quote the folder name when
191 + making a request to the server, which has been corrected.
192 +
193 +
194 +* ra/prompt-eread-fix (2017-12-06) 2 commits
195 + (merged to 'next' on 2017-12-27 at ae870af11d)
196 + + git-prompt: fix reading files with windows line endings
197 + + git-prompt: make __git_eread intended use explicit
198
199 + Update the shell prompt script (in contrib/) to strip trailing CR
200 + from strings read from various "state" files.
201
156 -* rs/fmt-merge-msg-string-leak-fix (2017-12-07) 1 commit
157 - (merged to 'next' on 2017-12-14 at 26fa3fe23e)
158 - + fmt-merge-msg: avoid leaking strbuf in shortlog()
202
160 - Leakfix.
203 +* rs/use-argv-array-in-child-process (2017-12-22) 2 commits
204 + (merged to 'next' on 2017-12-28 at 829a621ace)
205 + + send-pack: use internal argv_array of struct child_process
206 + + http: use internal argv_array of struct child_process
207
208 + Code cleanup.
209
163 -* rs/strbuf-read-once-reset-length (2017-12-07) 1 commit
164 - (merged to 'next' on 2017-12-14 at 6d12e08217)
165 - + strbuf: release memory on read error in strbuf_read_once()
210
167 - Leakfix.
211 +* sb/describe-blob (2017-12-19) 7 commits
212 + (merged to 'next' on 2017-12-27 at 1249ca9213)
213 + + builtin/describe.c: describe a blob
214 + + builtin/describe.c: factor out describe_commit
215 + + builtin/describe.c: print debug statements earlier
216 + + builtin/describe.c: rename `oid` to avoid variable shadowing
217 + + revision.h: introduce blob/tree walking in order of the commits
218 + + list-objects.c: factor out traverse_trees_and_blobs
219 + + t6120: fix typo in test name
220
221 + "git describe" was taught to dig trees deeper to find a
222 + <commit-ish>:<path> that refers to a given blob object.
223
170 -* sb/test-helper-excludes (2017-12-12) 1 commit
171 - (merged to 'next' on 2017-12-14 at 3bfbc1c65e)
172 - + t/helper: ignore everything but sources
224
174 - Simplify the ignore rules for t/helper directory.
225 +* sr/http-sslverify-config-doc (2017-12-18) 1 commit
226 + (merged to 'next' on 2017-12-27 at 84a461c4b5)
227 + + config: document default value of http.sslVerify
228
229 + Docfix.
230
177 -* tb/check-crlf-for-safe-crlf (2017-12-08) 2 commits
178 - (merged to 'next' on 2017-12-08 at 5279b80103)
179 - + t0027: Adapt the new MIX tests to Windows
180 - (merged to 'next' on 2017-12-05 at 7adaa1fe01)
181 - + convert: tighten the safe autocrlf handling
231
183 - The "safe crlf" check incorrectly triggered for contents that does
184 - not use CRLF as line endings, which has been corrected.
232 +* tb/test-lint-wc-l (2017-12-22) 1 commit
233 + (merged to 'next' on 2017-12-28 at 4d91ed6d51)
234 + + check-non-portable-shell.pl: `wc -l` may have leading WS
235
236 + Test update.
237
187 -* tb/delimit-pretty-trailers-args-with-comma (2017-12-08) 1 commit
188 - (merged to 'next' on 2017-12-14 at 7bf4f561ad)
189 - + docs/pretty-formats: mention commas in %(trailers) syntax
238
191 - Doc updates.
239 +* tz/lib-git-svn-svnserve-tests (2017-12-14) 2 commits
240 + (merged to 'next' on 2017-12-27 at 54513f6e20)
241 + + t/lib-git-svn.sh: improve svnserve tests with parallel make test
242 + + t/lib-git-svn: cleanup inconsistent tab/space usage
243 +
244 +
245 +* ws/curl-http-proxy-over-https (2017-12-19) 1 commit
246 + (merged to 'next' on 2017-12-27 at 895bf2f94b)
247 + + http: support CURLPROXY_HTTPS
248 +
249 + Git has been taught to support an https:// URL used for http.proxy
250 + when using recent versions of libcurl.
251
252 --------------------------------------------------
253 [New Topics]
254
196 -* ab/commit-m-with-fixup (2017-12-22) 2 commits
197 - - commit: add support for --fixup <commit> -m"<extra message>"
198 - - commit doc: document that -c, -C, -F and --fixup with -m error
255 +* ab/dc-sha1-loose-ends (2017-12-28) 1 commit
256 + (merged to 'next' on 2018-01-05 at 7186e81793)
257 + + Makefile: NO_OPENSSL=1 should no longer imply BLK_SHA1=1
258
200 - "git commit --fixup" did not allow "-m<message>" option to be used
201 - at the same time; allow it to annotate resulting commit with more
202 - text.
259 + Tying loose ends for the recent integration work of
260 + collision-detecting SHA-1 implementation.
261
262 + Will merge to 'master'.
263
205 -* db/doc-config-section-names-with-bs (2017-12-22) 1 commit
206 - - config.txt: document behavior of backslashes in subsections
264
208 - Doc update.
265 +* ab/wildmatch-tests (2018-01-04) 7 commits
266 + - wildmatch test: create & test files on disk in addition to in-memory
267 + - wildmatch test: perform all tests under all wildmatch() modes
268 + - wildmatch test: remove dead fnmatch() test code
269 + - wildmatch test: use a paranoia pattern from nul_match()
270 + - wildmatch test: don't try to vertically align our output
271 + - wildmatch test: use more standard shell style
272 + - wildmatch test: indent with tabs, not spaces
273 +
274 + More tests for wildmatch functions.
275
276 Will merge to 'next'.
277
278
213 -* ew/empty-merge-with-dirty-index (2017-12-22) 1 commit
214 - - Merge branch 'ew/empty-merge-with-dirty-index-maint' into ew/empty-merge-with-dirty-index
215 - (this branch uses ew/empty-merge-with-dirty-index-maint.)
279 +* cc/codespeed (2018-01-05) 7 commits
280 + - perf/run: read GIT_PERF_REPO_NAME from perf.repoName
281 + - perf/run: learn to send output to codespeed server
282 + - perf/run: learn about perf.codespeedOutput
283 + - perf/run: add conf_opts argument to get_var_from_env_or_config()
284 + - perf/aggregate: implement codespeed JSON output
285 + - perf/aggregate: refactor printing results
286 + - perf/aggregate: fix checking ENV{GIT_PERF_SUBSECTION}
287
217 - "git merge -s recursive" did not correctly abort when the index is
218 - dirty, if the merged tree happened to be the same as the current
219 - HEAD, which has been fixed.
288 + "perf" test output can be sent to codespeed server.
289
290 Will merge to 'next'.
291
292
224 -* ew/empty-merge-with-dirty-index-maint (2017-12-22) 3 commits
225 - - merge-recursive: avoid incorporating uncommitted changes in a merge
226 - - move index_has_changes() from builtin/am.c to merge.c for reuse
227 - - t6044: recursive can silently incorporate dirty changes in a merge
228 - (this branch is used by ew/empty-merge-with-dirty-index.)
293 +* rs/lose-leak-pending (2017-12-28) 9 commits
294 + (merged to 'next' on 2018-01-05 at 05305f7f2f)
295 + + commit: remove unused function clear_commit_marks_for_object_array()
296 + + revision: remove the unused flag leak_pending
297 + + checkout: avoid using the rev_info flag leak_pending
298 + + bundle: avoid using the rev_info flag leak_pending
299 + + bisect: avoid using the rev_info flag leak_pending
300 + + object: add clear_commit_marks_all()
301 + + ref-filter: use clear_commit_marks_many() in do_merge_filter()
302 + + commit: use clear_commit_marks_many() in remove_redundant()
303 + + commit: avoid allocation in clear_commit_marks_many()
304
230 - "git merge -s recursive" did not correctly abort when the index is
231 - dirty, if the merged tree happened to be the same as the current
232 - HEAD, which has been fixed.
305 + API clean-up around revision traversal.
306
234 - Will merge to 'next'.
307 + Will cook in 'next'.
308
309
237 -* jd/fix-strbuf-add-urlencode-bytes (2017-12-22) 1 commit
238 - - strbuf: fix urlencode format string on signed char
310 +* sb/diff-blobfind-pickaxe (2018-01-04) 6 commits
311 + - diff: use HAS_MULTI_BITS instead of counting bits manually
312 + - diff: properly error out when combining multiple pickaxe options
313 + - diffcore: add a pickaxe option to find a specific blob
314 + - diff: introduce DIFF_PICKAXE_KINDS_MASK
315 + - diff: migrate diff_flags.pickaxe_ignore_case to a pickaxe_opts bit
316 + - diff.h: make pickaxe_opts an unsigned bit field
317
240 - Bytes with high-bit set were encoded incorrectly and made
241 - credential helper fail.
318 + "diff" family of commands learned "--find-object=<object-id>" option
319 + to limit the findings to changes that involve the named object.
320
321 Will merge to 'next'.
322
323
246 -* ld/p4-multiple-shelves (2017-12-22) 1 commit
247 - - git-p4: update multiple shelved change lists
324 +* ab/perf-grep-threads (2018-01-04) 1 commit
325 + - perf: amend the grep tests to test grep.threads
326
249 - "git p4" update.
327 + More perf tests for threaded grep
328
329 Will merge to 'next'.
330
331
254 -* rs/use-argv-array-in-child-process (2017-12-22) 2 commits
255 - - send-pack: use internal argv_array of struct child_process
256 - - http: use internal argv_array of struct child_process
332 +* bc/submitting-patches-in-asciidoc (2018-01-03) 1 commit
333 + (merged to 'next' on 2018-01-05 at 92dd960a56)
334 + + doc/SubmittingPatches: improve text formatting
335
258 - Code cleanup.
336 + Doc readability update.
337
260 - Will merge to 'next'.
338 + Will merge to 'master'.
339
340
263 -* tb/test-lint-wc-l (2017-12-22) 1 commit
264 - - check-non-portable-shell.pl: `wc -l` may have leading WS
341 +* bw/protocol-v1 (2018-01-04) 1 commit
342 + (merged to 'next' on 2018-01-05 at 47a5e0039a)
343 + + http: fix v1 protocol tests with apache httpd < 2.4
344
266 - Test update.
345 + Test fix for a topic already in 'master'.
346
268 - Will merge to 'next'.
347 + Will merge to 'master'.
348
349
271 -* bw/oidmap-autoinit (2017-12-27) 1 commit
272 - - oidmap: ensure map is initialized
350 +* bw/protocol-v2 (2018-01-04) 26 commits
351 + - remote-curl: implement connect-half-duplex command
352 + - remote-curl: create copy of the service name
353 + - pkt-line: add packet_buf_write_len function
354 + - transport-helper: introduce connect-half-duplex
355 + - transport-helper: refactor process_connect_service
356 + - transport-helper: remove name parameter
357 + - fetch-pack: perform a fetch using v2
358 + - upload-pack: introduce fetch server command
359 + - push: pass ref patterns when pushing
360 + - fetch: pass ref patterns when fetching
361 + - ls-remote: pass ref patterns when requesting a remote's refs
362 + - transport: convert transport_get_remote_refs to take a list of ref patterns
363 + - transport: convert get_refs_list to take a list of ref patterns
364 + - connect: request remote refs using v2
365 + - ls-refs: introduce ls-refs server command
366 + - serve: introduce git-serve
367 + - protocol: introduce enum protocol_version value protocol_v2
368 + - transport: store protocol version
369 + - connect: discover protocol version outside of get_remote_heads
370 + - connect: convert get_remote_heads to use struct packet_reader
371 + - transport: use get_refs_via_connect to get refs
372 + - upload-pack: factor out processing lines
373 + - upload-pack: convert to a builtin
374 + - pkt-line: add delim packet support
375 + - pkt-line: introduce struct packet_reader
376 + - pkt-line: introduce packet_read_with_status
377 +
378 +
379 +* jh/status-no-ahead-behind (2018-01-04) 4 commits
380 + - status: support --no-ahead-behind in long format
381 + - status: update short status to respect --no-ahead-behind
382 + - status: add --[no-]ahead-behind to status and commit for V2 format.
383 + - stat_tracking_info: return +1 when branches not equal
384 +
385 +
386 +* jk/abort-clone-with-existing-dest (2018-01-03) 4 commits
387 + - clone: do not clean up directories we didn't create
388 + - clone: factor out dir_exists() helper
389 + - t5600: modernize style
390 + - t5600: fix outdated comment about unborn HEAD
391 +
392 +
393 +* jk/doc-diff-options (2018-01-04) 1 commit
394 + (merged to 'next' on 2018-01-05 at 11a42ea807)
395 + + docs/diff-options: clarify scope of diff-filter types
396
397 + Doc update.
398
275 -* dk/describe-all-output-fix (2017-12-27) 1 commit
276 - - describe: prepend "tags/" when describing tags with embedded name
399 + Will merge to 'master'.
400
278 - An old regression in "git describe --all $annotated_tag^0" has been
279 - fixed.
401
281 - Will merge to 'next'.
402 +* js/test-with-ws-in-path (2018-01-03) 2 commits
403 + (merged to 'next' on 2018-01-05 at 6438e1c186)
404 + + t0302 & t3900: add forgotten quotes
405 + + Allow the test suite to pass in a directory whose name contains spaces
406
407 + Test fixes.
408
284 -* js/sequencer-cleanups (2017-12-27) 5 commits
285 - - sequencer: do not invent whitespace when transforming OIDs
286 - - sequencer: report when noop has an argument
287 - - sequencer: remove superfluous conditional
288 - - sequencer: strip bogus LF at end of error messages
289 - - rebase: do not continue when the todo list generation failed
409 + Will merge to 'master'.
410
291 - Code cleanup.
411 +
412 +* ls/checkout-encoding (2018-01-04) 6 commits
413 + - utf8.c: mark utf{16,32}_{be,le}_bom symbols static
414 + - convert: add support for 'checkout-encoding' attribute
415 + - utf8: add function to detect a missing UTF-16/32 BOM
416 + - utf8: add function to detect prohibited UTF-16/32 BOM
417 + - strbuf: add xstrdup_toupper()
418 + - convert_to_git(): checksafe becomes an integer
419 +
420 + The new "checkout-encoding" attribute can ask Git to convert the
421 + contents to the specified encoding when checking out to the working
422 + tree (and the other way around when checking in).
423 +
424 +
425 +* ma/bisect-leakfix (2018-01-03) 1 commit
426 + - bisect: fix a regression causing a segfault
427
428 Will merge to 'next'.
429
430
296 -* nd/fix-untracked-cache-invalidation (2017-12-27) 3 commits
297 - - update-index doc: note a fixed bug in the untracked cache
298 - - dir.c: fix missing dir invalidation in untracked code
299 - - status: add a failing test showing a core.untrackedCache bug
431 +* mm/send-email-fallback-to-local-mail-address (2018-01-05) 3 commits
432 + - send-email: add test for Linux's get_maintainer.pl
433 + - Remove now useless email-address parsing code
434 + - send-email: add and use a local copy of Mail::Address
435
436 + Instead of maintaining home-grown email address parsing code, ship
437 + a copy of reasonably recent Mail::Address to be used as a fallback
438 + in 'git send-email' when the platform lacks it.
439
302 -* nd/ita-wt-renames-in-status (2017-12-27) 6 commits
303 - - wt-status.c: handle worktree renames
304 - - wt-status.c: rename rename-related fields in wt_status_change_data
305 - - wt-status.c: catch unhandled diff status codes
306 - - wt-status.c: coding style fix
307 - - Use DIFF_DETECT_RENAME for detect_rename assignments
308 - - t2203: test status output with porcelain v2 format
440
310 - "git status" after moving a path in the working tree (hence making
311 - it appear "removed") and then adding with the -N option (hence
312 - making that appear "added") detected it as a rename, but did not
313 - report the old and new pathnames correctly.
441 +* sb/submodule-update-reset-fix (2018-01-05) 4 commits
442 + - submodule: submodule_move_head omits old argument in forced case
443 + - unpack-trees: oneway_merge to update submodules
444 + - t/lib-submodule-update.sh: fix test ignoring ignored files in submodules
445 + - t/lib-submodule-update.sh: clarify test
446
315 - Will merge to 'next'.
447 + When resetting the working tree files recursively, the working tree
448 + of submodules are now also reset to match.
449
450
318 -* sg/travis-skip-identical-test (2017-12-27) 2 commits
319 - - travis-ci: record and skip successfully built trees
320 - - travis-ci: don't try to create the cache directory unnecessarily
321 - (this branch uses sg/travis-fixes.)
451 +* sg/travis-check-untracked (2018-01-03) 2 commits
452 + (merged to 'next' on 2018-01-05 at 424bed2fb0)
453 + + travis-ci: check that all build artifacts are .gitignore-d
454 + + travis-ci: don't store P4 and Git LFS in the working tree
455 + (this branch uses sg/travis-fixes and sg/travis-skip-identical-test.)
456
323 - Avoid repeatedly testing the same tree in TravisCI that have been
324 - tested successfully already.
457 + Will merge to 'master'.
458 +
459 +
460 +* js/fix-merge-arg-quoting-in-rebase-p (2018-01-05) 1 commit
461 + - rebase -p: fix quoting when calling `git merge`
462 +
463 + "git rebase -p -X<option>" did not propagate the option properly
464 + down to underlying merge strategy backend.
465 +
466 + Will merge to 'next' and then to 'master'.
467
468 --------------------------------------------------
469 [Stalled]
470
329 -* jc/merge-symlink-ours-theirs (2017-09-26) 1 commit
330 - - merge: teach -Xours/-Xtheirs to symbolic link merge
471 +* pb/bisect-helper-2 (2017-10-28) 8 commits
472 + - t6030: make various test to pass GETTEXT_POISON tests
473 + - bisect--helper: `bisect_start` shell function partially in C
474 + - bisect--helper: `get_terms` & `bisect_terms` shell function in C
475 + - bisect--helper: `bisect_next_check` shell function in C
476 + - bisect--helper: `check_and_set_terms` shell function in C
477 + - wrapper: move is_empty_file() and rename it as is_empty_or_missing_file()
478 + - bisect--helper: `bisect_write` shell function in C
479 + - bisect--helper: `bisect_reset` shell function in C
480
332 - "git merge -Xours/-Xtheirs" learned to use our/their version when
333 - resolving a conflicting updates to a symbolic link.
481 + Expecting a reroll.
482 + cf. <0102015f5e5ee171-f30f4868-886f-47a1-a4e4-b4936afc545d-000000@eu-west-1.amazonses.com>
483 +
484 +
485 +* dj/runtime-prefix (2017-12-05) 4 commits
486 + . exec_cmd: RUNTIME_PREFIX on some POSIX systems
487 + . Makefile: add Perl runtime prefix support
488 + . Makefile: add support for "perllibdir"
489 + . Makefile: generate Perl header from template file
490 +
491 + A build-time option has been added to allow Git to be told to refer
492 + to its associated files relative to the main binary, in the same
493 + way that has been possible on Windows for quite some time, for
494 + Linux, BSDs and Darwin.
495 +
496 + Tentatively kicked out of 'next' to see how well another topic
497 + ab/simplify-perl-makefile that heavily conflicts with this fares.
498 +
499 +
500 +* mk/http-backend-content-length (2017-11-27) 4 commits
501 + - SQUASH???
502 + - t5560-http-backend-noserver.sh: add CONTENT_LENGTH cases
503 + - SQUASH???
504 + - http-backend: respect CONTENT_LENGTH as specified by rfc3875
505 +
506 + The http-backend (used for smart-http transport) used to slurp the
507 + whole input until EOF, without paying attention to CONTENT_LENGTH
508 + that is supplied in the environment and instead expecting the Web
509 + server to close the input stream. This has been fixed.
510 +
511 + Expecting a reroll.
512 + Suggested fixes to be used when rerolling is queued, but I'd
513 + prefer _not_ squashing them myself.
514 +
515 + Also, it may be too complex solution for the problem.
516 + cf. <20171204171308.GA13332@sigill.intra.peff.net>
517
335 - Needs review.
518 +
519 +* cc/require-tcl-tk-for-build (2017-11-29) 2 commits
520 + - travis-ci: avoid new tcl/tk build requirement
521 + - Makefile: check that tcl/tk is installed
522 +
523 + A first-time builder of Git may have installed neither tclsh nor
524 + msgfmt, in which case git-gui and gitk part will fail and break the
525 + build. As a workaround, refuse to run a build when tclsh is not
526 + installed and NO_TCLTK is not set.
527 +
528 + Undecided.
529 + I still feel that requring tclsh to be installed, with or without
530 + "escape hatch" for experts, may be too heavy-handed.
531
532
533 * mg/merge-base-fork-point (2017-09-17) 3 commits
@@ -377,224 +572,148 @@ of the repositories listed at
572 * mk/use-size-t-in-zlib (2017-08-10) 1 commit
573 . zlib.c: use size_t for size
574
380 - The wrapper to call into zlib followed our long tradition to use
381 - "unsigned long" for sizes of regions in memory, which have been
382 - updated to use "size_t".
383 -
384 - Needs resurrecting by making sure the fix is good and still applies
385 - (or adjusted to today's codebase).
386 -
387 -
388 -* mg/status-in-progress-info (2017-05-10) 2 commits
389 - - status --short --inprogress: spell it as --in-progress
390 - - status: show in-progress info for short status
391 -
392 - "git status" learns an option to report various operations
393 - (e.g. "merging") that the user is in the middle of.
394 -
395 - cf. <xmqqmvakcdqw.fsf@gitster.mtv.corp.google.com>
396 -
397 -
398 -* nd/worktree-move (2017-04-20) 6 commits
399 - - worktree remove: new command
400 - - worktree move: refuse to move worktrees with submodules
401 - - worktree move: accept destination as directory
402 - - worktree move: new command
403 - - worktree.c: add update_worktree_location()
404 - - worktree.c: add validate_worktree()
405 -
406 - "git worktree" learned move and remove subcommands.
407 -
408 - Expecting a reroll.
409 - cf. <20170420101024.7593-1-pclouds@gmail.com>
410 - cf. <20170421145916.mknekgqzhxffu7di@sigill.intra.peff.net>
411 - cf. <d0e81b1e-5869-299e-f462-4d43dc997bd1@ramsayjones.plus.com>
412 -
413 ---------------------------------------------------
414 -[Cooking]
415 -
416 -* ew/svn-crlf (2017-12-14) 2 commits
417 - (merged to 'next' on 2017-12-27 at 1b81bd634d)
418 - + Merge branch 'svn-crlf' of git://bogomips.org/git-svn into ew/svn-crlf
419 - + git-svn: convert CRLF to LF in commit message to SVN
420 -
421 - "git svn" has been updated to strip CRs in the commit messages, as
422 - recent versions of Subversion rejects them.
423 -
424 - Will merge to 'master'.
425 -
426 -
427 -* tz/lib-git-svn-svnserve-tests (2017-12-14) 2 commits
428 - (merged to 'next' on 2017-12-27 at 54513f6e20)
429 - + t/lib-git-svn.sh: improve svnserve tests with parallel make test
430 - + t/lib-git-svn: cleanup inconsistent tab/space usage
431 -
432 - Will merge to 'master'.
433 -
434 -
435 -* bp/fsmonitor (2017-12-18) 1 commit
436 - (merged to 'next' on 2017-12-27 at ce216e2978)
437 - + p7519: improve check for prerequisite WATCHMAN
438 -
439 - Test fix.
440 -
441 - Will merge to 'master'.
442 -
443 -
444 -* js/enhanced-version-info (2017-12-14) 2 commits
445 - (merged to 'next' on 2017-12-27 at a95dd96a78)
446 - + version --build-options: report commit, too, if possible
447 - + version --build-options: also report host CPU
448 -
449 - "git version --build-options" learned to report the host CPU and
450 - the exact commit object name the binary was built from.
451 -
452 - Will merge to 'master'.
453 -
454 -
455 -* jt/transport-hide-vtable (2017-12-14) 2 commits
456 - (merged to 'next' on 2017-12-27 at 8dc27cfb53)
457 - + transport: make transport vtable more private
458 - + clone, fetch: remove redundant transport check
459 -
460 - Code clean-up.
461 -
462 - Will merge to 'master'.
463 -
464 -
465 -* ks/rebase-error-messages (2017-12-19) 3 commits
466 - (merged to 'next' on 2017-12-27 at 80c62260ad)
467 - + rebase: rebasing can also be done when HEAD is detached
468 - + rebase: distinguish user input by quoting it
469 - + rebase: consistently use branch_name variable
470 -
471 - Error messages from "git rebase" have been somewhat cleaned up.
472 -
473 - Will merge to 'master'.
575 + The wrapper to call into zlib followed our long tradition to use
576 + "unsigned long" for sizes of regions in memory, which have been
577 + updated to use "size_t".
578
579 + Needs resurrecting by making sure the fix is good and still applies
580 + (or adjusted to today's codebase).
581
476 -* nm/imap-send-quote-server-folder-name (2017-12-18) 1 commit
477 - (merged to 'next' on 2017-12-27 at 79326a0b77)
478 - + imap-send: URI encode server folder
582
480 - "git imap-send" did not correctly quote the folder name when
481 - making a request to the server, which has been corrected.
583 +* mg/status-in-progress-info (2017-05-10) 2 commits
584 + - status --short --inprogress: spell it as --in-progress
585 + - status: show in-progress info for short status
586
483 - Will merge to 'master'.
587 + "git status" learns an option to report various operations
588 + (e.g. "merging") that the user is in the middle of.
589
590 + cf. <xmqqmvakcdqw.fsf@gitster.mtv.corp.google.com>
591
486 -* np/send-email-header-parsing (2017-12-15) 1 commit
487 - - send-email: extract email-parsing code into a subroutine
592
489 - Code refactoring.
593 +* nd/worktree-move (2017-04-20) 6 commits
594 + - worktree remove: new command
595 + - worktree move: refuse to move worktrees with submodules
596 + - worktree move: accept destination as directory
597 + - worktree move: new command
598 + - worktree.c: add update_worktree_location()
599 + - worktree.c: add validate_worktree()
600
491 - Undecided.
601 + "git worktree" learned move and remove subcommands.
602
603 + Expecting a reroll.
604 + cf. <20170420101024.7593-1-pclouds@gmail.com>
605 + cf. <20170421145916.mknekgqzhxffu7di@sigill.intra.peff.net>
606 + cf. <d0e81b1e-5869-299e-f462-4d43dc997bd1@ramsayjones.plus.com>
607
494 -* sr/http-sslverify-config-doc (2017-12-18) 1 commit
495 - (merged to 'next' on 2017-12-27 at 84a461c4b5)
496 - + config: document default value of http.sslVerify
608 +--------------------------------------------------
609 +[Cooking]
610
498 - Docfix.
611 +* jc/merge-symlink-ours-theirs (2018-01-03) 1 commit
612 + (merged to 'next' on 2018-01-05 at 63ebfc45eb)
613 + + merge: teach -Xours/-Xtheirs to symbolic link merge
614
500 - Will merge to 'master'.
615 + "git merge -Xours/-Xtheirs" learned to use our/their version when
616 + resolving a conflicting updates to a symbolic link.
617
618 + Will cook in 'next'.
619
503 -* jh/memihash-opt (2017-12-22) 1 commit
504 - - t/helper/test-lazy-name-hash: fix compilation
620
506 - Squelch compiler warning.
621 +* ab/commit-m-with-fixup (2017-12-22) 2 commits
622 + - commit: add support for --fixup <commit> -m"<extra message>"
623 + - commit doc: document that -c, -C, -F and --fixup with -m error
624
508 - Will merge to 'next'.
625 + "git commit --fixup" did not allow "-m<message>" option to be used
626 + at the same time; allow it to annotate resulting commit with more
627 + text.
628
629
511 -* ks/doc-previous-checkout (2017-12-19) 1 commit
512 - (merged to 'next' on 2017-12-27 at c706239a69)
513 - + Doc/check-ref-format: clarify information about @{-N} syntax
630 +* bw/oidmap-autoinit (2017-12-27) 1 commit
631 + - oidmap: ensure map is initialized
632
515 - Doc update.
633
517 - Will merge to 'master'.
634 +* dk/describe-all-output-fix (2017-12-27) 1 commit
635 + (merged to 'next' on 2017-12-28 at c6254494e3)
636 + + describe: prepend "tags/" when describing tags with embedded name
637
638 + An old regression in "git describe --all $annotated_tag^0" has been
639 + fixed.
640
520 -* rs/revision-keep-pending (2017-12-19) 1 commit
521 - (merged to 'next' on 2017-12-27 at 20a9527941)
522 - + revision: introduce prepare_revision_walk_extended()
641 + Will cook in 'next'.
642
524 - Code clean-up.
643
526 - Will merge to 'master'.
644 +* nd/fix-untracked-cache-invalidation (2018-01-04) 5 commits
645 + - dir.c: stop ignoring opendir() error in open_cached_dir()
646 + - update-index doc: note a fixed bug in the untracked cache
647 + - dir.c: fix missing dir invalidation in untracked code
648 + - dir.c: avoid stat() in valid_cached_dir()
649 + - status: add a failing test showing a core.untrackedCache bug
650
651 + Some bugs around "untracked cache" feature have been fixed.
652
529 -* ws/curl-http-proxy-over-https (2017-12-19) 1 commit
530 - (merged to 'next' on 2017-12-27 at 895bf2f94b)
531 - + http: support CURLPROXY_HTTPS
653
533 - Git has been taught to support an https:// URL used for http.proxy
534 - when using recent versions of libcurl.
654 +* nd/ita-wt-renames-in-status (2017-12-27) 6 commits
655 + (merged to 'next' on 2017-12-28 at 7610331a11)
656 + + wt-status.c: handle worktree renames
657 + + wt-status.c: rename rename-related fields in wt_status_change_data
658 + + wt-status.c: catch unhandled diff status codes
659 + + wt-status.c: coding style fix
660 + + Use DIFF_DETECT_RENAME for detect_rename assignments
661 + + t2203: test status output with porcelain v2 format
662
536 - Will merge to 'master'.
663 + "git status" after moving a path in the working tree (hence making
664 + it appear "removed") and then adding with the -N option (hence
665 + making that appear "added") detected it as a rename, but did not
666 + report the old and new pathnames correctly.
667
668 + Will cook in 'next'.
669
539 -* av/fsmonitor-updates (2017-12-19) 5 commits
540 - - fsmonitor: Remove debugging lines from t/t7519-status-fsmonitor.sh
541 - - fsmonitor: complete the last line of test-dump-fsmonitor output
542 - - fsmonitor: update helper tool, now that flags are filled later
543 - - fsmonitor: include dir.h for untracked_cache_invalidate_path()
544 - - dir.c: update comments to match argument name
670
671 +* sg/travis-skip-identical-test (2018-01-02) 3 commits
672 + (merged to 'next' on 2018-01-05 at 41914fc43e)
673 + + travis-ci: record and skip successfully built trees
674 + + travis-ci: create the cache directory early in the build process
675 + + travis-ci: print the "tip of branch is exactly at tag" message in color
676 + (this branch is used by sg/travis-check-untracked; uses sg/travis-fixes.)
677
547 -* jh/partial-clone-doc (2017-12-14) 1 commit
548 - (merged to 'next' on 2017-12-27 at 3695847773)
549 - + partial-clone: design doc
678 + Avoid repeatedly testing the same tree in TravisCI that have been
679 + tested successfully already.
680
681 Will merge to 'master'.
682
683
554 -* jk/test-suite-tracing (2017-12-08) 4 commits
555 - (merged to 'next' on 2017-12-27 at 7034a51474)
556 - + t/Makefile: introduce TEST_SHELL_PATH
557 - + test-lib: make "-x" work with "--verbose-log"
558 - + t5615: avoid re-using descriptor 4
559 - + test-lib: silence "-x" cleanup under bash
684 +* np/send-email-header-parsing (2017-12-15) 1 commit
685 + - send-email: extract email-parsing code into a subroutine
686
561 - Assorted fixes around running tests with "-x" tracing option.
687 + Code refactoring.
688
563 - Will merge to 'master'.
689 + Undecided.
690
691
566 -* hi/merge-verify-sig-config (2017-12-19) 3 commits
567 - (merged to 'next' on 2017-12-27 at 34360fb1c1)
568 - + t5573, t7612: clean up after unexpected success of 'pull' and 'merge'
569 - (merged to 'next' on 2017-12-14 at cdc511dc36)
570 - + t: add tests for pull --verify-signatures
571 - + merge: add config option for verifySignatures
692 +* av/fsmonitor-updates (2018-01-04) 6 commits
693 + - fsmonitor: use fsmonitor data in `git diff`
694 + - fsmonitor: remove debugging lines from t/t7519-status-fsmonitor.sh
695 + - fsmonitor: make output of test-dump-fsmonitor more concise
696 + - fsmonitor: update helper tool, now that flags are filled later
697 + - fsmonitor: stop inline'ing mark_fsmonitor_valid / _invalid
698 + - dir.c: update comments to match argument name
699
573 - "git merge" learned to pay attention to merge.verifySignatures
574 - configuration variable and pretend as if '--verify-signatures'
575 - option was given from the command line.
700 + Code clean-up on fsmonitor integration, plus optional utilization
701 + of the fsmonitor data in diff-files.
702
577 - Will merge to 'master'.
703 + Undecided.
704 + cf. <alpine.DEB.2.21.1.1801042335130.32@MININT-6BKU6QN.europe.corp.microsoft.com>
705
706
707 * sg/travis-fixes (2017-12-27) 4 commits
581 - - travis-ci: only print test failures if there are test results available
582 - - travis-ci: save prove state for the 32 bit Linux build
583 - - travis-ci: don't install default addon packages for the 32 bit Linux build
584 - - travis-ci: fine tune the use of 'set -x' in 'ci/*' scripts
585 - (this branch is used by sg/travis-skip-identical-test.)
708 + (merged to 'next' on 2017-12-28 at 6496308a5b)
709 + + travis-ci: only print test failures if there are test results available
710 + + travis-ci: save prove state for the 32 bit Linux build
711 + + travis-ci: don't install default addon packages for the 32 bit Linux build
712 + + travis-ci: fine tune the use of 'set -x' in 'ci/*' scripts
713 + (this branch is used by sg/travis-check-untracked and sg/travis-skip-identical-test.)
714
715 Assorted updates for TravisCI integration.
716
589 - Will merge to 'next'.
590 -
591 -
592 -* bw/path-doc (2017-12-13) 1 commit
593 - (merged to 'next' on 2017-12-19 at 2cddee77ca)
594 - + path: document path functions
595 -
596 - Doc updates.
597 -
717 Will merge to 'master'.
718
719
@@ -611,75 +730,18 @@ of the repositories listed at
730 cf. <xmqqk1xw6c24.fsf@gitster.mtv.corp.google.com>
731
732
614 -* ab/simplify-perl-makefile (2017-12-22) 2 commits
615 - - perl: avoid *.pmc and fix Error.pm further
733 +* ab/simplify-perl-makefile (2018-01-03) 3 commits
734 + (merged to 'next' on 2018-01-03 at ecd1f51af2)
735 + + perl: treat PERLLIB_EXTRA as an extra path again
736 + (merged to 'next' on 2017-12-28 at d189d91ec6)
737 + + perl: avoid *.pmc and fix Error.pm further
738 (merged to 'next' on 2017-12-13 at 1b791d2503)
739 + Makefile: replace perl/Makefile.PL with simple make rules
740
741 The build procedure for perl/ part has been greatly simplified by
742 weaning ourselves off of MakeMaker.
743
622 - Waiting for an Ack.
623 -
624 -
625 -* cc/skip-to-optional-val (2017-12-11) 7 commits
626 - (merged to 'next' on 2017-12-27 at 1b189d8556)
627 - + t4045: reindent to make helpers readable
628 - + diff: add tests for --relative without optional prefix value
629 - + diff: use skip_to_optional_arg_default() in parsing --relative
630 - + diff: use skip_to_optional_arg_default()
631 - + diff: use skip_to_optional_arg()
632 - + index-pack: use skip_to_optional_arg()
633 - + git-compat-util: introduce skip_to_optional_arg()
634 -
635 - Introduce a helper to simplify code to parse a common pattern that
636 - expects either "--key" or "--key=<something>".
637 -
638 - Will merge to 'master'.
639 -
640 -
641 -* ra/prompt-eread-fix (2017-12-06) 2 commits
642 - (merged to 'next' on 2017-12-27 at ae870af11d)
643 - + git-prompt: fix reading files with windows line endings
644 - + git-prompt: make __git_eread intended use explicit
645 -
646 - Update the shell prompt script (in contrib/) to strip trailing CR
647 - from strings read from various "state" files.
648 -
649 - Will merge to 'master'.
650 -
651 -
652 -* cc/require-tcl-tk-for-build (2017-11-29) 2 commits
653 - - travis-ci: avoid new tcl/tk build requirement
654 - - Makefile: check that tcl/tk is installed
655 -
656 - A first-time builder of Git may have installed neither tclsh nor
657 - msgfmt, in which case git-gui and gitk part will fail and break the
658 - build. As a workaround, refuse to run a build when tclsh is not
659 - installed and NO_TCLTK is not set.
660 -
661 - Undecided.
662 - I still feel that requring tclsh to be installed, with or without
663 - "escape hatch" for experts, may be too heavy-handed.
664 -
665 -
666 -* mk/http-backend-content-length (2017-11-27) 4 commits
667 - - SQUASH???
668 - - t5560-http-backend-noserver.sh: add CONTENT_LENGTH cases
669 - - SQUASH???
670 - - http-backend: respect CONTENT_LENGTH as specified by rfc3875
671 -
672 - The http-backend (used for smart-http transport) used to slurp the
673 - whole input until EOF, without paying attention to CONTENT_LENGTH
674 - that is supplied in the environment and instead expecting the Web
675 - server to close the input stream. This has been fixed.
676 -
677 - Expecting a reroll.
678 - Suggested fixes to be used when rerolling is queued, but I'd
679 - prefer _not_ squashing them myself.
680 -
681 - Also, it may be too complex solution for the problem.
682 - cf. <20171204171308.GA13332@sigill.intra.peff.net>
744 + Will cook in 'next'.
745
746
747 * en/rename-directory-detection (2017-12-13) 35 commits
@@ -725,22 +787,12 @@ of the repositories listed at
787 want to move to z/d by taking the hint that the entire directory
788 'x' moved to 'z'.
789
728 - Needs review.
729 -
730 -
731 -* sb/diff-blobfind (2017-12-12) 1 commit
732 - (merged to 'next' on 2017-12-13 at 9a27a20c5f)
733 - + diffcore: add a filter to find a specific blob
734 -
735 - "git diff" family of commands learned --blobfind=<object-name> that
736 - allows you to limit the output only to a change that involves the
737 - named blob object (either changing the contents from or to it).
738 -
739 - Will merge to 'master'.
790 + A rerolled version exists; it needs to be picked up.
791
792
793 * pw/sequencer-in-process-commit (2017-12-22) 11 commits
743 - - sequencer: assign only free()able strings to gpg_sign
794 + (merged to 'next' on 2017-12-28 at c496b3fa29)
795 + + sequencer: assign only free()able strings to gpg_sign
796 (merged to 'next' on 2017-12-13 at ec4d2b9c84)
797 + sequencer: improve config handling
798 (merged to 'next' on 2017-12-06 at a4212f7ebd)
@@ -761,22 +813,7 @@ of the repositories listed at
813 gives performance boost for a few tens of percents in some sample
814 scenarios.
815
764 - Will merge to 'next'.
765 -
766 -
767 -* dj/runtime-prefix (2017-12-05) 4 commits
768 - . exec_cmd: RUNTIME_PREFIX on some POSIX systems
769 - . Makefile: add Perl runtime prefix support
770 - . Makefile: add support for "perllibdir"
771 - . Makefile: generate Perl header from template file
772 -
773 - A build-time option has been added to allow Git to be told to refer
774 - to its associated files relative to the main binary, in the same
775 - way that has been possible on Windows for quite some time, for
776 - Linux, BSDs and Darwin.
777 -
778 - Tentatively kicked out of 'next' to see how well another topic
779 - ab/simplify-perl-makefile that heavily conflicts with this fares.
816 + Will cook in 'next'.
817
818
819 * jh/fsck-promisors (2017-12-08) 10 commits
@@ -823,36 +860,6 @@ of the repositories listed at
860 introduced by the jh/fsck-promisors topic.
861
862
826 -* sb/describe-blob (2017-12-19) 7 commits
827 - (merged to 'next' on 2017-12-27 at 1249ca9213)
828 - + builtin/describe.c: describe a blob
829 - + builtin/describe.c: factor out describe_commit
830 - + builtin/describe.c: print debug statements earlier
831 - + builtin/describe.c: rename `oid` to avoid variable shadowing
832 - + revision.h: introduce blob/tree walking in order of the commits
833 - + list-objects.c: factor out traverse_trees_and_blobs
834 - + t6120: fix typo in test name
835 -
836 - "git describe" was taught to dig trees deeper to find a
837 - <commit-ish>:<path> that refers to a given blob object.
838 -
839 - Will merge to 'master'.
840 -
841 -
842 -* pb/bisect-helper-2 (2017-10-28) 8 commits
843 - - t6030: make various test to pass GETTEXT_POISON tests
844 - - bisect--helper: `bisect_start` shell function partially in C
845 - - bisect--helper: `get_terms` & `bisect_terms` shell function in C
846 - - bisect--helper: `bisect_next_check` shell function in C
847 - - bisect--helper: `check_and_set_terms` shell function in C
848 - - wrapper: move is_empty_file() and rename it as is_empty_or_missing_file()
849 - - bisect--helper: `bisect_write` shell function in C
850 - - bisect--helper: `bisect_reset` shell function in C
851 -
852 - Expecting a reroll.
853 - cf. <0102015f5e5ee171-f30f4868-886f-47a1-a4e4-b4936afc545d-000000@eu-west-1.amazonses.com>
854 -
855 -
863 * ot/mru-on-list (2017-10-01) 1 commit
864 - mru: use double-linked list from list.h
865
@@ -863,13 +870,34 @@ of the repositories listed at
870
871
872 * jm/svn-pushmergeinfo-fix (2017-09-17) 1 commit
866 - - git-svn: fix svn.pushmergeinfo handling of svn+ssh usernames.
873 + (merged to 'next' on 2018-01-05 at 6cb237ea44)
874 + + git-svn: fix svn.pushmergeinfo handling of svn+ssh usernames.
875
876 "git svn dcommit" did not take into account the fact that a
877 svn+ssh:// URL with a username@ (typically used for pushing) refers
878 to the same SVN repository without the username@ and failed when
879 svn.pushmergeinfo option is set.
880
873 - Needs a test, perhaps as a follow-up patch.
881 + Will cook in 'next'.
882
875 - Will merge to 'next'.
883 +--------------------------------------------------
884 +[Discarded]
885 +
886 +* rs/revision-keep-pending (2017-12-19) 1 commit
887 + (merged to 'next' on 2017-12-27 at 20a9527941)
888 + + revision: introduce prepare_revision_walk_extended()
889 +
890 + Reverted out of 'next' to give a chance to its reworked successor,
891 + queued on the rs/lose-leak-pending topic.
892 +
893 +
894 +* sb/diff-blobfind (2017-12-12) 1 commit
895 + (merged to 'next' on 2017-12-13 at 9a27a20c5f)
896 + + diffcore: add a filter to find a specific blob
897 +
898 + "git diff" family of commands learned --blobfind=<object-name> that
899 + allows you to limit the output only to a change that involves the
900 + named blob object (either changing the contents from or to it).
901 +
902 + Reverted out of 'next' to give a chance to its reworked successor,
903 + queued on the sb/diff-blobfind-pickaxe topic.