What's cooking (2018/01 #03)

Junio C Hamano committed Jan 23, 2018 at 14:33 UTC cba7d60fc895ad7cffe77f0c17dcc263e320bcde
1 file changed +406 -527
whats-cooking.txt
+406 -527
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Jan 2018, #02; Tue, 9)
4 -X-master-at: 6366dd9000a3f67e47a30d94375a88dabc18ec6f
5 -X-next-at: 55033e839aa0788e7eca704bfa5a1834e6ee1cde
3 +Subject: What's cooking in git.git (Jan 2018, #03; Tue, 23)
4 +X-master-at: 5be1f00a9a701532232f57958efab4be8c959a29
5 +X-next-at: de0f0111ea2ad3a2b03a378e6272c2ee476a26ed
6
7 -What's cooking in git.git (Jan 2018, #02; Tue, 9)
7 +What's cooking in git.git (Jan 2018, #03; Tue, 23)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -12,6 +12,10 @@ 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 +Many topics in 'next' have been merged to 'master' while others are
16 +tentatively kicked back to 'pu', to give them a chance to be rerolled
17 +if the authors of them wish to do so.
18 +
19 You can find the changes described here in the integration branches
20 of the repositories listed at
21
@@ -20,523 +24,439 @@ of the repositories listed at
24 --------------------------------------------------
25 [Graduated to "master"]
26
23 -* ab/dc-sha1-loose-ends (2017-12-28) 1 commit
24 - (merged to 'next' on 2018-01-05 at 7186e81793)
25 - + Makefile: NO_OPENSSL=1 should no longer imply BLK_SHA1=1
26 -
27 - Tying loose ends for the recent integration work of
28 - collision-detecting SHA-1 implementation.
29 -
30 -
31 -* bc/submitting-patches-in-asciidoc (2018-01-03) 1 commit
32 - (merged to 'next' on 2018-01-05 at 92dd960a56)
33 - + doc/SubmittingPatches: improve text formatting
34 -
35 - Doc readability update.
36 -
37 -
38 -* bp/fsmonitor (2017-12-18) 1 commit
39 - (merged to 'next' on 2017-12-27 at ce216e2978)
40 - + p7519: improve check for prerequisite WATCHMAN
41 -
42 - Test fix.
43 -
44 -
45 -* bw/path-doc (2017-12-13) 1 commit
46 - (merged to 'next' on 2017-12-19 at 2cddee77ca)
47 - + path: document path functions
27 +* ab/commit-m-with-fixup (2017-12-22) 2 commits
28 + (merged to 'next' on 2018-01-11 at 41255c464f)
29 + + commit: add support for --fixup <commit> -m"<extra message>"
30 + + commit doc: document that -c, -C, -F and --fixup with -m error
31
49 - Doc updates.
32 + "git commit --fixup" did not allow "-m<message>" option to be used
33 + at the same time; allow it to annotate resulting commit with more
34 + text.
35
36
52 -* bw/protocol-v1 (2018-01-04) 1 commit
53 - (merged to 'next' on 2018-01-05 at 47a5e0039a)
54 - + http: fix v1 protocol tests with apache httpd < 2.4
37 +* ab/doc-cat-file-e-still-shows-errors (2018-01-10) 1 commit
38 + (merged to 'next' on 2018-01-12 at 080bb1d397)
39 + + cat-file doc: document that -e will return some output
40
56 - Test fix for a topic already in 'master'.
41 + Doc update.
42
43
59 -* cc/skip-to-optional-val (2017-12-11) 7 commits
60 - (merged to 'next' on 2017-12-27 at 1b189d8556)
61 - + t4045: reindent to make helpers readable
62 - + diff: add tests for --relative without optional prefix value
63 - + diff: use skip_to_optional_arg_default() in parsing --relative
64 - + diff: use skip_to_optional_arg_default()
65 - + diff: use skip_to_optional_arg()
66 - + index-pack: use skip_to_optional_arg()
67 - + git-compat-util: introduce skip_to_optional_arg()
44 +* ab/perf-grep-threads (2018-01-04) 1 commit
45 + (merged to 'next' on 2018-01-09 at 91889574fb)
46 + + perf: amend the grep tests to test grep.threads
47
69 - Introduce a helper to simplify code to parse a common pattern that
70 - expects either "--key" or "--key=<something>".
48 + More perf tests for threaded grep
49
50
73 -* db/doc-config-section-names-with-bs (2017-12-22) 1 commit
74 - (merged to 'next' on 2017-12-28 at e744b99449)
75 - + config.txt: document behavior of backslashes in subsections
51 +* as/read-tree-prefix-doc-fix (2018-01-09) 1 commit
52 + (merged to 'next' on 2018-01-12 at 895c72e5c3)
53 + + doc/read-tree: remove obsolete remark
54
55 Doc update.
56
57
80 -* ew/svn-crlf (2017-12-14) 2 commits
81 - (merged to 'next' on 2017-12-27 at 1b81bd634d)
82 - + Merge branch 'svn-crlf' of git://bogomips.org/git-svn into ew/svn-crlf
83 - + git-svn: convert CRLF to LF in commit message to SVN
84 -
85 - "git svn" has been updated to strip CRs in the commit messages, as
86 - recent versions of Subversion rejects them.
87 -
58 +* bw/oidmap-autoinit (2017-12-27) 1 commit
59 + (merged to 'next' on 2018-01-11 at f941e013b4)
60 + + oidmap: ensure map is initialized
61
89 -* hi/merge-verify-sig-config (2017-12-19) 3 commits
90 - (merged to 'next' on 2017-12-27 at 34360fb1c1)
91 - + t5573, t7612: clean up after unexpected success of 'pull' and 'merge'
92 - (merged to 'next' on 2017-12-14 at cdc511dc36)
93 - + t: add tests for pull --verify-signatures
94 - + merge: add config option for verifySignatures
62 + Code clean-up.
63
96 - "git merge" learned to pay attention to merge.verifySignatures
97 - configuration variable and pretend as if '--verify-signatures'
98 - option was given from the command line.
64
65 +* cc/codespeed (2018-01-05) 7 commits
66 + (merged to 'next' on 2018-01-09 at 8578089a2b)
67 + + perf/run: read GIT_PERF_REPO_NAME from perf.repoName
68 + + perf/run: learn to send output to codespeed server
69 + + perf/run: learn about perf.codespeedOutput
70 + + perf/run: add conf_opts argument to get_var_from_env_or_config()
71 + + perf/aggregate: implement codespeed JSON output
72 + + perf/aggregate: refactor printing results
73 + + perf/aggregate: fix checking ENV{GIT_PERF_SUBSECTION}
74
101 -* jd/fix-strbuf-add-urlencode-bytes (2017-12-22) 1 commit
102 - (merged to 'next' on 2017-12-28 at 7f4f291966)
103 - + strbuf: fix urlencode format string on signed char
75 + "perf" test output can be sent to codespeed server.
76
105 - Bytes with high-bit set were encoded incorrectly and made
106 - credential helper fail.
77
78 +* dk/describe-all-output-fix (2017-12-27) 1 commit
79 + (merged to 'next' on 2017-12-28 at c6254494e3)
80 + + describe: prepend "tags/" when describing tags with embedded name
81
109 -* jh/memihash-opt (2017-12-22) 1 commit
110 - (merged to 'next' on 2017-12-28 at bf96e0d849)
111 - + t/helper/test-lazy-name-hash: fix compilation
82 + An old regression in "git describe --all $annotated_tag^0" has been
83 + fixed.
84
113 - Squelch compiler warning.
85
86 +* ew/empty-merge-with-dirty-index (2018-01-09) 1 commit
87 + (merged to 'next' on 2018-01-09 at 6bcda11248)
88 + + Merge branch 'ew/empty-merge-with-dirty-index-maint' into ew/empty-merge-with-dirty-index
89 + (this branch uses ew/empty-merge-with-dirty-index-maint.)
90
116 -* jh/partial-clone-doc (2017-12-14) 1 commit
117 - (merged to 'next' on 2017-12-27 at 3695847773)
118 - + partial-clone: design doc
91 + "git merge -s recursive" did not correctly abort when the index is
92 + dirty, if the merged tree happened to be the same as the current
93 + HEAD, which has been fixed.
94
95
121 -* jk/doc-diff-options (2018-01-04) 1 commit
122 - (merged to 'next' on 2018-01-05 at 11a42ea807)
123 - + docs/diff-options: clarify scope of diff-filter types
96 +* jc/merge-symlink-ours-theirs (2018-01-03) 1 commit
97 + (merged to 'next' on 2018-01-05 at 63ebfc45eb)
98 + + merge: teach -Xours/-Xtheirs to symbolic link merge
99
125 - Doc update.
100 + "git merge -Xours/-Xtheirs" learned to use our/their version when
101 + resolving a conflicting updates to a symbolic link.
102
103
128 -* jk/test-suite-tracing (2017-12-08) 4 commits
129 - (merged to 'next' on 2017-12-27 at 7034a51474)
130 - + t/Makefile: introduce TEST_SHELL_PATH
131 - + test-lib: make "-x" work with "--verbose-log"
132 - + t5615: avoid re-using descriptor 4
133 - + test-lib: silence "-x" cleanup under bash
104 +* jh/object-filtering (2018-01-08) 1 commit
105 + (merged to 'next' on 2018-01-11 at 56808f6969)
106 + + oidset: don't return value from oidset_init
107
135 - Assorted fixes around running tests with "-x" tracing option.
108 + Hotfix for a topic already in 'master'.
109
110
138 -* js/enhanced-version-info (2017-12-14) 2 commits
139 - (merged to 'next' on 2017-12-27 at a95dd96a78)
140 - + version --build-options: report commit, too, if possible
141 - + version --build-options: also report host CPU
111 +* jk/abort-clone-with-existing-dest (2018-01-03) 4 commits
112 + (merged to 'next' on 2018-01-09 at 3c8e83c3a7)
113 + + clone: do not clean up directories we didn't create
114 + + clone: factor out dir_exists() helper
115 + + t5600: modernize style
116 + + t5600: fix outdated comment about unborn HEAD
117
143 - "git version --build-options" learned to report the host CPU and
144 - the exact commit object name the binary was built from.
118 + "git clone $there $here" is allowed even when here directory exists
119 + as long as it is an empty directory, but the command incorrectly
120 + removed it upon a failure of the operation.
121
122
147 -* js/sequencer-cleanups (2017-12-27) 5 commits
148 - (merged to 'next' on 2017-12-28 at 23c10afb09)
149 - + sequencer: do not invent whitespace when transforming OIDs
150 - + sequencer: report when noop has an argument
151 - + sequencer: remove superfluous conditional
152 - + sequencer: strip bogus LF at end of error messages
153 - + rebase: do not continue when the todo list generation failed
123 +* jm/svn-pushmergeinfo-fix (2017-09-17) 1 commit
124 + (merged to 'next' on 2018-01-05 at 6cb237ea44)
125 + + git-svn: fix svn.pushmergeinfo handling of svn+ssh usernames.
126
155 - Code cleanup.
127 + "git svn dcommit" did not take into account the fact that a
128 + svn+ssh:// URL with a username@ (typically used for pushing) refers
129 + to the same SVN repository without the username@ and failed when
130 + svn.pushmergeinfo option is set.
131
132
158 -* js/test-with-ws-in-path (2018-01-03) 2 commits
159 - (merged to 'next' on 2018-01-05 at 6438e1c186)
160 - + t0302 & t3900: add forgotten quotes
161 - + Allow the test suite to pass in a directory whose name contains spaces
133 +* js/fix-merge-arg-quoting-in-rebase-p (2018-01-05) 1 commit
134 + (merged to 'next' on 2018-01-09 at 91f5601e9c)
135 + + rebase -p: fix quoting when calling `git merge`
136
163 - Test fixes.
137 + "git rebase -p -X<option>" did not propagate the option properly
138 + down to underlying merge strategy backend.
139
140
166 -* jt/transport-hide-vtable (2017-12-14) 2 commits
167 - (merged to 'next' on 2017-12-27 at 8dc27cfb53)
168 - + transport: make transport vtable more private
169 - + clone, fetch: remove redundant transport check
141 +* js/test-with-ws-in-path (2018-01-10) 1 commit
142 + (merged to 'next' on 2018-01-10 at c44db26fe4)
143 + + t3900: add some more quotes
144
171 - Code clean-up.
145 + Hot fix to a test.
146
147
174 -* ks/doc-previous-checkout (2017-12-19) 1 commit
175 - (merged to 'next' on 2017-12-27 at c706239a69)
176 - + Doc/check-ref-format: clarify information about @{-N} syntax
148 +* ma/bisect-leakfix (2018-01-03) 1 commit
149 + (merged to 'next' on 2018-01-09 at 2ef8b59d1b)
150 + + bisect: fix a regression causing a segfault
151
178 - Doc update.
152 + A hotfix for a recent update that broke 'git bisect'.
153
154
181 -* ks/rebase-error-messages (2017-12-19) 3 commits
182 - (merged to 'next' on 2017-12-27 at 80c62260ad)
183 - + rebase: rebasing can also be done when HEAD is detached
184 - + rebase: distinguish user input by quoting it
185 - + rebase: consistently use branch_name variable
155 +* mm/send-email-fallback-to-local-mail-address (2018-01-08) 3 commits
156 + (merged to 'next' on 2018-01-17 at dd4867706b)
157 + + send-email: add test for Linux's get_maintainer.pl
158 + + perl/Git: remove now useless email-address parsing code
159 + + send-email: add and use a local copy of Mail::Address
160
187 - Error messages from "git rebase" have been somewhat cleaned up.
161 + Instead of maintaining home-grown email address parsing code, ship
162 + a copy of reasonably recent Mail::Address to be used as a fallback
163 + in 'git send-email' when the platform lacks it.
164
165
190 -* ld/p4-multiple-shelves (2017-12-22) 1 commit
191 - (merged to 'next' on 2017-12-28 at 6c29703427)
192 - + git-p4: update multiple shelved change lists
166 +* nd/add-i-ignore-submodules (2018-01-16) 1 commit
167 + (merged to 'next' on 2018-01-17 at 632401fd5a)
168 + + add--interactive: ignore submodule changes except HEAD
169
194 - "git p4" update.
170 + "git add -p" was taught to ignore local changes to submodules as
171 + they do not interfere with the partial addition of regular changes
172 + anyway.
173
174
197 -* nm/imap-send-quote-server-folder-name (2017-12-18) 1 commit
198 - (merged to 'next' on 2017-12-27 at 79326a0b77)
199 - + imap-send: URI encode server folder
175 +* nd/ita-wt-renames-in-status (2017-12-27) 6 commits
176 + (merged to 'next' on 2017-12-28 at 7610331a11)
177 + + wt-status.c: handle worktree renames
178 + + wt-status.c: rename rename-related fields in wt_status_change_data
179 + + wt-status.c: catch unhandled diff status codes
180 + + wt-status.c: coding style fix
181 + + Use DIFF_DETECT_RENAME for detect_rename assignments
182 + + t2203: test status output with porcelain v2 format
183
201 - "git imap-send" did not correctly quote the folder name when
202 - making a request to the server, which has been corrected.
184 + "git status" after moving a path in the working tree (hence making
185 + it appear "removed") and then adding with the -N option (hence
186 + making that appear "added") detected it as a rename, but did not
187 + report the old and new pathnames correctly.
188
189
205 -* ra/prompt-eread-fix (2017-12-06) 2 commits
206 - (merged to 'next' on 2017-12-27 at ae870af11d)
207 - + git-prompt: fix reading files with windows line endings
208 - + git-prompt: make __git_eread intended use explicit
190 +* rs/lose-leak-pending (2017-12-28) 9 commits
191 + (merged to 'next' on 2018-01-05 at 05305f7f2f)
192 + + commit: remove unused function clear_commit_marks_for_object_array()
193 + + revision: remove the unused flag leak_pending
194 + + checkout: avoid using the rev_info flag leak_pending
195 + + bundle: avoid using the rev_info flag leak_pending
196 + + bisect: avoid using the rev_info flag leak_pending
197 + + object: add clear_commit_marks_all()
198 + + ref-filter: use clear_commit_marks_many() in do_merge_filter()
199 + + commit: use clear_commit_marks_many() in remove_redundant()
200 + + commit: avoid allocation in clear_commit_marks_many()
201
210 - Update the shell prompt script (in contrib/) to strip trailing CR
211 - from strings read from various "state" files.
202 + API clean-up around revision traversal.
203
204
214 -* rs/use-argv-array-in-child-process (2017-12-22) 2 commits
215 - (merged to 'next' on 2017-12-28 at 829a621ace)
216 - + send-pack: use internal argv_array of struct child_process
217 - + http: use internal argv_array of struct child_process
205 +* sb/diff-blobfind-pickaxe (2018-01-04) 6 commits
206 + (merged to 'next' on 2018-01-09 at 2053890477)
207 + + diff: use HAS_MULTI_BITS instead of counting bits manually
208 + + diff: properly error out when combining multiple pickaxe options
209 + + diffcore: add a pickaxe option to find a specific blob
210 + + diff: introduce DIFF_PICKAXE_KINDS_MASK
211 + + diff: migrate diff_flags.pickaxe_ignore_case to a pickaxe_opts bit
212 + + diff.h: make pickaxe_opts an unsigned bit field
213
219 - Code cleanup.
214 + "diff" family of commands learned "--find-object=<object-id>" option
215 + to limit the findings to changes that involve the named object.
216
217
222 -* sb/describe-blob (2017-12-19) 7 commits
223 - (merged to 'next' on 2017-12-27 at 1249ca9213)
224 - + builtin/describe.c: describe a blob
225 - + builtin/describe.c: factor out describe_commit
226 - + builtin/describe.c: print debug statements earlier
227 - + builtin/describe.c: rename `oid` to avoid variable shadowing
228 - + revision.h: introduce blob/tree walking in order of the commits
229 - + list-objects.c: factor out traverse_trees_and_blobs
230 - + t6120: fix typo in test name
218 +* sb/submodule-update-reset-fix (2018-01-05) 4 commits
219 + (merged to 'next' on 2018-01-11 at e4e84b69a3)
220 + + submodule: submodule_move_head omits old argument in forced case
221 + + unpack-trees: oneway_merge to update submodules
222 + + t/lib-submodule-update.sh: fix test ignoring ignored files in submodules
223 + + t/lib-submodule-update.sh: clarify test
224
232 - "git describe" was taught to dig trees deeper to find a
233 - <commit-ish>:<path> that refers to a given blob object.
225 + When resetting the working tree files recursively, the working tree
226 + of submodules are now also reset to match.
227
228
236 -* sg/travis-check-untracked (2018-01-03) 2 commits
237 - (merged to 'next' on 2018-01-05 at 424bed2fb0)
238 - + travis-ci: check that all build artifacts are .gitignore-d
239 - + travis-ci: don't store P4 and Git LFS in the working tree
240 - (this branch uses sg/travis-fixes and sg/travis-skip-identical-test.)
229 +* tg/stash-with-pathspec-fix (2018-01-08) 1 commit
230 + (merged to 'next' on 2018-01-11 at abfaa14a7b)
231 + + stash: don't delete untracked files that match pathspec
232
242 - Will cook in 'next'.
233 + "git stash -- <pathspec>" incorrectly blew away untracked files in
234 + the directory that matched the pathspec, which has been corrected.
235
236
245 -* sg/travis-fixes (2017-12-27) 4 commits
246 - (merged to 'next' on 2017-12-28 at 6496308a5b)
247 - + travis-ci: only print test failures if there are test results available
248 - + travis-ci: save prove state for the 32 bit Linux build
249 - + travis-ci: don't install default addon packages for the 32 bit Linux build
250 - + travis-ci: fine tune the use of 'set -x' in 'ci/*' scripts
251 - (this branch is used by sg/travis-check-untracked and sg/travis-skip-identical-test.)
237 +* tg/worktree-create-tracking (2018-01-11) 1 commit
238 + (merged to 'next' on 2018-01-11 at df6423dfc4)
239 + + Documentation/git-worktree.txt: add missing `
240
253 - Assorted updates for TravisCI integration.
241 + Doc hotfix.
242
255 - Will cook in 'next'.
243
244 +* ys/bisect-object-id-missing-conversion-fix (2018-01-09) 1 commit
245 + (merged to 'next' on 2018-01-11 at ca330c885d)
246 + + bisect: debug: convert struct object to object_id
247
258 -* sg/travis-skip-identical-test (2018-01-02) 3 commits
259 - (merged to 'next' on 2018-01-05 at 41914fc43e)
260 - + travis-ci: record and skip successfully built trees
261 - + travis-ci: create the cache directory early in the build process
262 - + travis-ci: print the "tip of branch is exactly at tag" message in color
263 - (this branch is used by sg/travis-check-untracked; uses sg/travis-fixes.)
248 + Fix for a commented-out code to adjust it to a rather old API change.
249
265 - Avoid repeatedly testing the same tree in TravisCI that have been
266 - tested successfully already.
250 +--------------------------------------------------
251 +[New Topics]
252
268 - Will cook in 'next'.
253 +* nd/trace-with-env (2018-01-19) 7 commits
254 + - run-command.c: print new cwd in trace_run_command()
255 + - run-command.c: print env vars in trace_run_command()
256 + - run-command.c: print program 'git' when tracing git_cmd mode
257 + - run-command.c: introduce trace_run_command()
258 + - trace.c: move strbuf_release() out of print_trace_line()
259 + - trace: avoid unnecessary quoting
260 + - sq_quote_argv: drop maxlen parameter
261
262 + The tracing machinery learned to report tweaking of environment
263 + variables as well.
264
271 -* sr/http-sslverify-config-doc (2017-12-18) 1 commit
272 - (merged to 'next' on 2017-12-27 at 84a461c4b5)
273 - + config: document default value of http.sslVerify
265 + Will merge to 'next'.
266
275 - Docfix.
267
268 +* cl/t9001-cleanup (2018-01-12) 1 commit
269 + - t9001: use existing helper in send-email test
270
278 -* tb/test-lint-wc-l (2017-12-22) 1 commit
279 - (merged to 'next' on 2017-12-28 at 4d91ed6d51)
280 - + check-non-portable-shell.pl: `wc -l` may have leading WS
271 + Test clean-up.
272
282 - Test update.
273 + Will merge to 'next'.
274
275
285 -* tz/lib-git-svn-svnserve-tests (2017-12-14) 2 commits
286 - (merged to 'next' on 2017-12-27 at 54513f6e20)
287 - + t/lib-git-svn.sh: improve svnserve tests with parallel make test
288 - + t/lib-git-svn: cleanup inconsistent tab/space usage
276 +* kg/packed-ref-cache-fix (2018-01-16) 1 commit
277 + - packed_ref_cache: don't use mmap() for small files
278
279 + Avoid mmapping small files while using packed refs (especially ones
280 + with zero size, which would cause later munmap() to fail).
281
291 -* ws/curl-http-proxy-over-https (2017-12-19) 1 commit
292 - (merged to 'next' on 2017-12-27 at 895bf2f94b)
293 - + http: support CURLPROXY_HTTPS
282 + Will merge to 'next'.
283
295 - Git has been taught to support an https:// URL used for http.proxy
296 - when using recent versions of libcurl.
284
298 ---------------------------------------------------
299 -[New Topics]
285 +* ks/submodule-doc-updates (2018-01-16) 2 commits
286 + - Doc/git-submodule: improve readability and grammar of a sentence
287 + - Doc/gitsubmodules: make some changes to improve readability and syntax
288
301 -* ab/wildmatch-tests (2018-01-04) 7 commits
302 - (merged to 'next' on 2018-01-09 at 09f0b84098)
303 - + wildmatch test: create & test files on disk in addition to in-memory
304 - + wildmatch test: perform all tests under all wildmatch() modes
305 - + wildmatch test: remove dead fnmatch() test code
306 - + wildmatch test: use a paranoia pattern from nul_match()
307 - + wildmatch test: don't try to vertically align our output
308 - + wildmatch test: use more standard shell style
309 - + wildmatch test: indent with tabs, not spaces
289 + Doc updates.
290
311 - More tests for wildmatch functions.
291 + Will merge to 'next'.
292
313 - Will cook in 'next'.
293
294 +* nd/shared-index-fix (2018-01-22) 3 commits
295 + - read-cache: don't write index twice if we can't write shared index
296 + - read-cache.c: move tempfile creation/cleanup out of write_shared_index
297 + - read-cache.c: change type of "temp" in write_shared_index()
298
316 -* cc/codespeed (2018-01-05) 7 commits
317 - (merged to 'next' on 2018-01-09 at 5599f7a085)
318 - + perf/run: read GIT_PERF_REPO_NAME from perf.repoName
319 - + perf/run: learn to send output to codespeed server
320 - + perf/run: learn about perf.codespeedOutput
321 - + perf/run: add conf_opts argument to get_var_from_env_or_config()
322 - + perf/aggregate: implement codespeed JSON output
323 - + perf/aggregate: refactor printing results
324 - + perf/aggregate: fix checking ENV{GIT_PERF_SUBSECTION}
299
326 - "perf" test output can be sent to codespeed server.
300 +* rs/describe-unique-abbrev (2018-01-16) 1 commit
301 + - describe: use strbuf_add_unique_abbrev() for adding short hashes
302
328 - Will cook in 'next'.
303 + Code clean-up.
304
305 + Will merge to 'next'.
306
331 -* rs/lose-leak-pending (2017-12-28) 9 commits
332 - (merged to 'next' on 2018-01-05 at 05305f7f2f)
333 - + commit: remove unused function clear_commit_marks_for_object_array()
334 - + revision: remove the unused flag leak_pending
335 - + checkout: avoid using the rev_info flag leak_pending
336 - + bundle: avoid using the rev_info flag leak_pending
337 - + bisect: avoid using the rev_info flag leak_pending
338 - + object: add clear_commit_marks_all()
339 - + ref-filter: use clear_commit_marks_many() in do_merge_filter()
340 - + commit: use clear_commit_marks_many() in remove_redundant()
341 - + commit: avoid allocation in clear_commit_marks_many()
307
343 - API clean-up around revision traversal.
308 +* tb/crlf-conv-flags (2018-01-16) 1 commit
309 + - convert_to_git(): safe_crlf/checksafe becomes int conv_flags
310
345 - Will cook in 'next'.
311 + Code clean-up.
312
313 + Will merge to 'next'.
314
348 -* sb/diff-blobfind-pickaxe (2018-01-04) 6 commits
349 - (merged to 'next' on 2018-01-09 at 1c7bace3e7)
350 - + diff: use HAS_MULTI_BITS instead of counting bits manually
351 - + diff: properly error out when combining multiple pickaxe options
352 - + diffcore: add a pickaxe option to find a specific blob
353 - + diff: introduce DIFF_PICKAXE_KINDS_MASK
354 - + diff: migrate diff_flags.pickaxe_ignore_case to a pickaxe_opts bit
355 - + diff.h: make pickaxe_opts an unsigned bit field
315
357 - "diff" family of commands learned "--find-object=<object-id>" option
358 - to limit the findings to changes that involve the named object.
316 +* nd/diff-flush-before-warning (2018-01-16) 1 commit
317 + - diff.c: flush stdout before printing rename warnings
318
360 - Will cook in 'next'.
319 + Avoid showing a warning message in the middle of a line of "git
320 + diff" output.
321
322 + Will merge to 'next'.
323
363 -* ab/perf-grep-threads (2018-01-04) 1 commit
364 - (merged to 'next' on 2018-01-09 at 8fe1d71894)
365 - + perf: amend the grep tests to test grep.threads
324
367 - More perf tests for threaded grep
325 +* rb/hashmap-h-compilation-fix (2018-01-16) 1 commit
326 + - hashmap.h: remove unused variable
327
369 - Will cook in 'next'.
328 + Code clean-up.
329
330 + Will merge to 'next'.
331
372 -* bw/protocol-v2 (2018-01-04) 26 commits
373 - - remote-curl: implement connect-half-duplex command
374 - - remote-curl: create copy of the service name
375 - - pkt-line: add packet_buf_write_len function
376 - - transport-helper: introduce connect-half-duplex
377 - - transport-helper: refactor process_connect_service
378 - - transport-helper: remove name parameter
379 - - fetch-pack: perform a fetch using v2
380 - - upload-pack: introduce fetch server command
381 - - push: pass ref patterns when pushing
382 - - fetch: pass ref patterns when fetching
383 - - ls-remote: pass ref patterns when requesting a remote's refs
384 - - transport: convert transport_get_remote_refs to take a list of ref patterns
385 - - transport: convert get_refs_list to take a list of ref patterns
386 - - connect: request remote refs using v2
387 - - ls-refs: introduce ls-refs server command
388 - - serve: introduce git-serve
389 - - protocol: introduce enum protocol_version value protocol_v2
390 - - transport: store protocol version
391 - - connect: discover protocol version outside of get_remote_heads
392 - - connect: convert get_remote_heads to use struct packet_reader
393 - - transport: use get_refs_via_connect to get refs
394 - - upload-pack: factor out processing lines
395 - - upload-pack: convert to a builtin
396 - - pkt-line: add delim packet support
397 - - pkt-line: introduce struct packet_reader
398 - - pkt-line: introduce packet_read_with_status
332
400 - The beginning of the next-gen transfer protocol.
333 +* cc/sha1-file-name (2018-01-19) 2 commits
334 + - sha1_file: improve sha1_file_name() perfs
335 + - sha1_file: remove static strbuf from sha1_file_name()
336
337 + Code clean-up.
338
403 -* jh/status-no-ahead-behind (2018-01-04) 4 commits
404 - - status: support --no-ahead-behind in long format
405 - - status: update short status to respect --no-ahead-behind
406 - - status: add --[no-]ahead-behind to status and commit for V2 format.
407 - - stat_tracking_info: return +1 when branches not equal
339 + Will merge to 'next'.
340
409 - Still in flux.
341
342 +* cl/send-email-reply-to (2018-01-17) 2 commits
343 + - send-email: support separate "Reply-To" address
344 + - send-email: rename variables for "In-reply-to" to $foo_in_reply_to
345
412 -* jk/abort-clone-with-existing-dest (2018-01-03) 4 commits
413 - (merged to 'next' on 2018-01-09 at 789a55a9e1)
414 - + clone: do not clean up directories we didn't create
415 - + clone: factor out dir_exists() helper
416 - + t5600: modernize style
417 - + t5600: fix outdated comment about unborn HEAD
346 + "git send-email" learned "--reply-to=<address>" option.
347
419 - "git clone $there $here" is allowed even when here directory exists
420 - as long as it is an empty directory, but the command incorrectly
421 - removed it upon a failure of the operation.
348 + May want to get the log messages updated.
349 + cf. <CAN0heSqxmLoh33i65JPhyQbmPaAcJcwrTCO+ZD4eb+qh8Pf8+w@mail.gmail.com>
350
423 - Will cook in 'next'.
351
352 +* ds/use-get-be64 (2018-01-19) 1 commit
353 + - packfile: use get_be64() for large offsets
354
426 -* ls/checkout-encoding (2018-01-08) 6 commits
427 - - convert: add support for 'checkout-encoding' attribute
428 - - convert_to_git(): safe_crlf/checksafe becomes int conv_flags
429 - - utf8: add function to detect a missing UTF-16/32 BOM
430 - - utf8: add function to detect prohibited UTF-16/32 BOM
431 - - strbuf: add xstrdup_toupper()
432 - - strbuf: remove unnecessary NUL assignment in xstrdup_tolower()
355 + Code clean-up.
356
434 - The new "checkout-encoding" attribute can ask Git to convert the
435 - contents to the specified encoding when checking out to the working
436 - tree (and the other way around when checking in).
357 + Will merge to 'next'.
358
359
439 -* ma/bisect-leakfix (2018-01-03) 1 commit
440 - (merged to 'next' on 2018-01-09 at af04bd5436)
441 - + bisect: fix a regression causing a segfault
360 +* en/merge-recursive-fixes (2018-01-19) 3 commits
361 + - merge-recursive: add explanation for src_entry and dst_entry
362 + - merge-recursive: fix logic ordering issue
363 + - Tighten and correct a few testcases for merging and cherry-picking
364 + (this branch is used by en/rename-directory-detection.)
365
443 - A hotfix for a recent update that broke 'git bisect'.
366
445 - Will merge to 'master'.
367 +* jc/worktree-add-short-help (2018-01-17) 1 commit
368 + - worktree: say that "add" takes an arbitrary commit in short-help
369
370
448 -* mm/send-email-fallback-to-local-mail-address (2018-01-08) 3 commits
449 - - send-email: add test for Linux's get_maintainer.pl
450 - - perl/Git: remove now useless email-address parsing code
451 - - send-email: add and use a local copy of Mail::Address
371 +* js/rebase-recreate-merge (2018-01-22) 8 commits
372 + - rebase -i: introduce --recreate-merges=no-rebase-cousins
373 + - pull: accept --rebase=recreate to recreate the branch topology
374 + - sequencer: handle autosquash and post-rewrite for merge commands
375 + - rebase: introduce the --recreate-merges option
376 + - rebase-helper --make-script: introduce a flag to recreate merges
377 + - sequencer: fast-forward merge commits, if possible
378 + - sequencer: introduce the `merge` command
379 + - sequencer: introduce new commands to reset the revision
380
453 - Instead of maintaining home-grown email address parsing code, ship
454 - a copy of reasonably recent Mail::Address to be used as a fallback
455 - in 'git send-email' when the platform lacks it.
381 + "git rebase" learned "--recreate-merges" to transplant the whole
382 + topology of commit graph elsewhere.
383
457 - Will merge to 'next'.
384
385 +* jt/http-redact-cookies (2018-01-19) 2 commits
386 + - http: support omitting data from traces
387 + - http: support cookie redaction when tracing
388
460 -* sb/submodule-update-reset-fix (2018-01-05) 4 commits
461 - - submodule: submodule_move_head omits old argument in forced case
462 - - unpack-trees: oneway_merge to update submodules
463 - - t/lib-submodule-update.sh: fix test ignoring ignored files in submodules
464 - - t/lib-submodule-update.sh: clarify test
465 -
466 - When resetting the working tree files recursively, the working tree
467 - of submodules are now also reset to match.
389 + The http tracing code, often used to debug connection issues,
390 + learned to redact potentially sensitive information from its output
391 + so that it can be more safely sharable.
392
393 Will merge to 'next'.
394
395
472 -* js/fix-merge-arg-quoting-in-rebase-p (2018-01-05) 1 commit
473 - (merged to 'next' on 2018-01-09 at 57950f1843)
474 - + rebase -p: fix quoting when calling `git merge`
475 -
476 - "git rebase -p -X<option>" did not propagate the option properly
477 - down to underlying merge strategy backend.
478 -
479 - Will merge to 'master'.
396 +* mr/packed-ref-store-fix (2018-01-19) 1 commit
397 + - files_initial_transaction_commit(): only unlock if locked
398
481 -
482 -* as/read-tree-prefix-doc-fix (2018-01-09) 1 commit
483 - - doc/read-tree: remove obsolete remark
484 -
485 - Doc update.
399 + Crash fix for a corner case where an error codepath tried to unlock
400 + what it did not acquire lock on.
401
402 Will merge to 'next'.
403
404
490 -* jh/object-filtering (2018-01-08) 1 commit
491 - - oidset: don't return value from oidset_init
405 +* rs/strbuf-cocci-workaround (2018-01-19) 1 commit
406 + - cocci: use format keyword instead of a literal string
407
493 - Hotfix for a topic already in 'master'.
408 + Update Coccinelle rules to catch and optimize strbuf_addf(&buf, "%s", str)
409
410 Will merge to 'next'.
411
412
498 -* pc/submodule-helper (2018-01-09) 2 commits
499 - - submodule: port submodule subcommand 'deinit' from shell to C
500 - - submodule: port submodule subcommand 'sync' from shell to C
413 +* sg/cocci-move-array (2018-01-22) 1 commit
414 + - Use MOVE_ARRAY
415
502 - Rewrite two more "git submodule" subcommands in C.
416 + Code clean-up.
417
504 - Will segfault.
505 - cf. <xmqqpo6i4uns.fsf@gitster.mtv.corp.google.com>
418 + Will merge to 'next'.
419
420
508 -* sb/blame-color (2018-01-08) 4 commits
509 - - builtin/blame: highlight recently changed lines
510 - - builtin/blame: add option to color metadata fields separately
511 - - builtin/blame: dim uninteresting metadata
512 - - color.h: document and modernize header
421 +* tg/split-index-fixes (2018-01-19) 3 commits
422 + - travis: run tests with GIT_TEST_SPLIT_INDEX
423 + - split-index: don't write cache tree with null oid entries
424 + - read-cache: fix reading the shared index for other repos
425
426 + The split-index mode had a few corner case bugs fixed.
427
515 -* sg/travis-build-during-script-phase (2018-01-08) 1 commit
516 - - travis-ci: build Git during the 'script' phase
428 + Will merge to 'next'.
429
518 - Still under discussion.
519 - cf. <5DE3FA05-2347-4BE7-8A1A-A6E5FEEC7C2B@gmail.com>
430
431 +* jt/fsck-code-cleanup (2018-01-23) 1 commit
432 + - fsck: fix leak when traversing trees
433
522 -* tg/stash-with-pathspec-fix (2018-01-08) 1 commit
523 - - stash: don't delete untracked files that match pathspec
434 +--------------------------------------------------
435 +[Stalled]
436
525 - "git stash -- <pathspec>" incorrectly blew away untracked files in
526 - the directory that matched the pathspec, which has been corrected.
437 +* jh/status-no-ahead-behind (2018-01-04) 4 commits
438 + - status: support --no-ahead-behind in long format
439 + - status: update short status to respect --no-ahead-behind
440 + - status: add --[no-]ahead-behind to status and commit for V2 format.
441 + - stat_tracking_info: return +1 when branches not equal
442
528 - Will merge to 'next'.
443 + Expecting a reroll to finalize the topic.
444
445
531 -* ys/bisect-object-id-missing-conversion-fix (2018-01-09) 1 commit
532 - - bisect: debug: convert struct object to object_id
446 +* av/fsmonitor-updates (2018-01-04) 6 commits
447 + - fsmonitor: use fsmonitor data in `git diff`
448 + - fsmonitor: remove debugging lines from t/t7519-status-fsmonitor.sh
449 + - fsmonitor: make output of test-dump-fsmonitor more concise
450 + - fsmonitor: update helper tool, now that flags are filled later
451 + - fsmonitor: stop inline'ing mark_fsmonitor_valid / _invalid
452 + - dir.c: update comments to match argument name
453
534 - Fix for a commented-out code to adjust it to a rather old API change.
454 + Code clean-up on fsmonitor integration, plus optional utilization
455 + of the fsmonitor data in diff-files.
456
536 - Will merge to 'next'.
457 + Waiting for an update.
458 + cf. <alpine.DEB.2.21.1.1801042335130.32@MININT-6BKU6QN.europe.corp.microsoft.com>
459
538 ---------------------------------------------------
539 -[Stalled]
460
461 * pb/bisect-helper-2 (2017-10-28) 8 commits
462 - t6030: make various test to pass GETTEXT_POISON tests
@@ -678,69 +598,90 @@ of the repositories listed at
598 --------------------------------------------------
599 [Cooking]
600
681 -* ew/empty-merge-with-dirty-index (2018-01-09) 1 commit
682 - (merged to 'next' on 2018-01-09 at 851bc45d06)
683 - + Merge branch 'ew/empty-merge-with-dirty-index-maint' into ew/empty-merge-with-dirty-index
684 - (this branch uses ew/empty-merge-with-dirty-index-maint.)
685 -
686 - "git merge -s recursive" did not correctly abort when the index is
687 - dirty, if the merged tree happened to be the same as the current
688 - HEAD, which has been fixed.
601 +* ab/wildmatch-tests (2018-01-04) 7 commits
602 + - wildmatch test: create & test files on disk in addition to in-memory
603 + - wildmatch test: perform all tests under all wildmatch() modes
604 + - wildmatch test: remove dead fnmatch() test code
605 + - wildmatch test: use a paranoia pattern from nul_match()
606 + - wildmatch test: don't try to vertically align our output
607 + - wildmatch test: use more standard shell style
608 + - wildmatch test: indent with tabs, not spaces
609
690 - Will merge to 'master'.
610 + More tests for wildmatch functions.
611
612 + Expecting an update.
613 + cf. <87vaga9mgf.fsf@evledraar.gmail.com>
614
693 -* ew/empty-merge-with-dirty-index-maint (2018-01-09) 1 commit
694 - + merge-recursive: do not look at the index during recursive merge
695 - (this branch is used by ew/empty-merge-with-dirty-index.)
615
697 - "git merge -s recursive" did not correctly abort when the index is
698 - dirty, if the merged tree happened to be the same as the current
699 - HEAD, which has been fixed.
700 -
701 - Will merge to 'master' (as part of the above).
616 +* bw/protocol-v2 (2018-01-04) 26 commits
617 + - remote-curl: implement connect-half-duplex command
618 + - remote-curl: create copy of the service name
619 + - pkt-line: add packet_buf_write_len function
620 + - transport-helper: introduce connect-half-duplex
621 + - transport-helper: refactor process_connect_service
622 + - transport-helper: remove name parameter
623 + - fetch-pack: perform a fetch using v2
624 + - upload-pack: introduce fetch server command
625 + - push: pass ref patterns when pushing
626 + - fetch: pass ref patterns when fetching
627 + - ls-remote: pass ref patterns when requesting a remote's refs
628 + - transport: convert transport_get_remote_refs to take a list of ref patterns
629 + - transport: convert get_refs_list to take a list of ref patterns
630 + - connect: request remote refs using v2
631 + - ls-refs: introduce ls-refs server command
632 + - serve: introduce git-serve
633 + - protocol: introduce enum protocol_version value protocol_v2
634 + - transport: store protocol version
635 + - connect: discover protocol version outside of get_remote_heads
636 + - connect: convert get_remote_heads to use struct packet_reader
637 + - transport: use get_refs_via_connect to get refs
638 + - upload-pack: factor out processing lines
639 + - upload-pack: convert to a builtin
640 + - pkt-line: add delim packet support
641 + - pkt-line: introduce struct packet_reader
642 + - pkt-line: introduce packet_read_with_status
643
644 + The beginning of the next-gen transfer protocol.
645
704 -* jc/merge-symlink-ours-theirs (2018-01-03) 1 commit
705 - (merged to 'next' on 2018-01-05 at 63ebfc45eb)
706 - + merge: teach -Xours/-Xtheirs to symbolic link merge
646
708 - "git merge -Xours/-Xtheirs" learned to use our/their version when
709 - resolving a conflicting updates to a symbolic link.
647 +* ls/checkout-encoding (2018-01-08) 6 commits
648 + - convert: add support for 'checkout-encoding' attribute
649 + - convert_to_git(): safe_crlf/checksafe becomes int conv_flags
650 + - utf8: add function to detect a missing UTF-16/32 BOM
651 + - utf8: add function to detect prohibited UTF-16/32 BOM
652 + - strbuf: add xstrdup_toupper()
653 + - strbuf: remove unnecessary NUL assignment in xstrdup_tolower()
654
711 - Will cook in 'next'.
655 + The new "checkout-encoding" attribute can ask Git to convert the
656 + contents to the specified encoding when checking out to the working
657 + tree (and the other way around when checking in).
658
659
714 -* ab/commit-m-with-fixup (2017-12-22) 2 commits
715 - - commit: add support for --fixup <commit> -m"<extra message>"
716 - - commit doc: document that -c, -C, -F and --fixup with -m error
660 +* pc/submodule-helper (2018-01-16) 2 commits
661 + - submodule: port submodule subcommand 'deinit' from shell to C
662 + - submodule: port submodule subcommand 'sync' from shell to C
663
718 - "git commit --fixup" did not allow "-m<message>" option to be used
719 - at the same time; allow it to annotate resulting commit with more
720 - text.
664 + Rewrite two more "git submodule" subcommands in C.
665
666 Will merge to 'next'.
667
668
725 -* bw/oidmap-autoinit (2017-12-27) 1 commit
726 - - oidmap: ensure map is initialized
727 -
728 - Code clean-up.
729 -
730 - Will merge to 'next'.
731 -
669 +* sb/blame-color (2018-01-08) 4 commits
670 + - builtin/blame: highlight recently changed lines
671 + - builtin/blame: add option to color metadata fields separately
672 + - builtin/blame: dim uninteresting metadata
673 + - color.h: document and modernize header
674
733 -* dk/describe-all-output-fix (2017-12-27) 1 commit
734 - (merged to 'next' on 2017-12-28 at c6254494e3)
735 - + describe: prepend "tags/" when describing tags with embedded name
675
737 - An old regression in "git describe --all $annotated_tag^0" has been
738 - fixed.
676 +* sg/travis-build-during-script-phase (2018-01-08) 1 commit
677 + - travis-ci: build Git during the 'script' phase
678
740 - Will cook in 'next'.
679 + Still under discussion.
680 + cf. <5DE3FA05-2347-4BE7-8A1A-A6E5FEEC7C2B@gmail.com>
681
682
743 -* nd/fix-untracked-cache-invalidation (2018-01-04) 5 commits
683 +* nd/fix-untracked-cache-invalidation (2018-01-19) 6 commits
684 + - dir.c: print correct errno when opendir() fails
685 - dir.c: stop ignoring opendir() error in open_cached_dir()
686 - update-index doc: note a fixed bug in the untracked cache
687 - dir.c: fix missing dir invalidation in untracked code
@@ -749,24 +690,8 @@ of the repositories listed at
690
691 Some bugs around "untracked cache" feature have been fixed.
692
752 - Will merge to 'next'.
753 -
754 -
755 -* nd/ita-wt-renames-in-status (2017-12-27) 6 commits
756 - (merged to 'next' on 2017-12-28 at 7610331a11)
757 - + wt-status.c: handle worktree renames
758 - + wt-status.c: rename rename-related fields in wt_status_change_data
759 - + wt-status.c: catch unhandled diff status codes
760 - + wt-status.c: coding style fix
761 - + Use DIFF_DETECT_RENAME for detect_rename assignments
762 - + t2203: test status output with porcelain v2 format
763 -
764 - "git status" after moving a path in the working tree (hence making
765 - it appear "removed") and then adding with the -N option (hence
766 - making that appear "added") detected it as a rename, but did not
767 - report the old and new pathnames correctly.
768 -
769 - Will cook in 'next'.
693 + Kicked back to 'pu' for a reroll.
694 + cf. <CACsJy8AecDh6Bxo6xCBG+4AY5GCdtZgb2Cs2QXo5MYZvD7XKcQ@mail.gmail.com>
695
696
697 * np/send-email-header-parsing (2017-12-15) 1 commit
@@ -777,23 +702,8 @@ of the repositories listed at
702 Undecided.
703
704
780 -* av/fsmonitor-updates (2018-01-04) 6 commits
781 - - fsmonitor: use fsmonitor data in `git diff`
782 - - fsmonitor: remove debugging lines from t/t7519-status-fsmonitor.sh
783 - - fsmonitor: make output of test-dump-fsmonitor more concise
784 - - fsmonitor: update helper tool, now that flags are filled later
785 - - fsmonitor: stop inline'ing mark_fsmonitor_valid / _invalid
786 - - dir.c: update comments to match argument name
787 -
788 - Code clean-up on fsmonitor integration, plus optional utilization
789 - of the fsmonitor data in diff-files.
790 -
791 - Undecided.
792 - cf. <alpine.DEB.2.21.1.1801042335130.32@MININT-6BKU6QN.europe.corp.microsoft.com>
793 -
794 -
705 * ab/sha1dc-build (2017-12-12) 4 commits
796 - - Makefile: use the sha1collisiondetection submodule by default
706 + . Makefile: use the sha1collisiondetection submodule by default
707 - sha1dc_git.h: re-arrange an ifdef chain for a subsequent change
708 - Makefile: under "make dist", include the sha1collisiondetection submodule
709 - Makefile: don't error out under DC_SHA1_EXTERNAL if DC_SHA1_SUBMODULE=auto
@@ -806,21 +716,20 @@ of the repositories listed at
716
717
718 * ab/simplify-perl-makefile (2018-01-03) 3 commits
809 - (merged to 'next' on 2018-01-03 at ecd1f51af2)
719 + (merged to 'next' on 2018-01-23 at 1506e0651a)
720 + perl: treat PERLLIB_EXTRA as an extra path again
811 - (merged to 'next' on 2017-12-28 at d189d91ec6)
721 + perl: avoid *.pmc and fix Error.pm further
813 - (merged to 'next' on 2017-12-13 at 1b791d2503)
722 + Makefile: replace perl/Makefile.PL with simple make rules
723
724 + Originally merged to 'next' on 2018-01-03
725 +
726 The build procedure for perl/ part has been greatly simplified by
727 weaning ourselves off of MakeMaker.
728
729 Will cook in 'next'.
730
731
822 -* en/rename-directory-detection (2017-12-13) 35 commits
823 - - SQUASH???
732 +* en/rename-directory-detection (2018-01-19) 31 commits
733 - merge-recursive: ensure we write updates for directory-renamed file
734 - merge-recursive: avoid spurious rename/rename conflict from dir renames
735 - directory rename detection: new testcases showcasing a pair of bugs
@@ -852,9 +761,7 @@ of the repositories listed at
761 - directory rename detection: testcases to avoid taking detection too far
762 - directory rename detection: directory splitting testcases
763 - directory rename detection: basic testcases
855 - - merge-recursive: add explanation for src_entry and dst_entry
856 - - merge-recursive: fix logic ordering issue
857 - - Tighten and correct a few testcases for merging and cherry-picking
764 + (this branch uses en/merge-recursive-fixes.)
765
766 Rename detection logic in "diff" family that is used in "merge" has
767 learned to guess when all of x/a, x/b and x/c have moved to z/a,
@@ -862,24 +769,21 @@ of the repositories listed at
769 want to move to z/d by taking the hint that the entire directory
770 'x' moved to 'z'.
771
865 - A rerolled version exists; it needs to be picked up.
866 -
867 -
868 -* pw/sequencer-in-process-commit (2017-12-22) 11 commits
869 - (merged to 'next' on 2017-12-28 at c496b3fa29)
870 - + sequencer: assign only free()able strings to gpg_sign
871 - (merged to 'next' on 2017-12-13 at ec4d2b9c84)
872 - + sequencer: improve config handling
873 - (merged to 'next' on 2017-12-06 at a4212f7ebd)
874 - + t3512/t3513: remove KNOWN_FAILURE_CHERRY_PICK_SEES_EMPTY_COMMIT=1
875 - + sequencer: try to commit without forking 'git commit'
876 - + sequencer: load commit related config
877 - + sequencer: simplify adding Signed-off-by: trailer
878 - + commit: move print_commit_summary() to libgit
879 - + commit: move post-rewrite code to libgit
880 - + Add a function to update HEAD after creating a commit
881 - + commit: move empty message checks to libgit
882 - + t3404: check intermediate squash messages
772 +
773 +* pw/sequencer-in-process-commit (2018-01-23) 13 commits
774 + - sequencer: run 'prepare-commit-msg' hook
775 + - t7505: add tests for cherry-pick and rebase -i/-p
776 + - sequencer: assign only free()able strings to gpg_sign
777 + - sequencer: improve config handling
778 + - t3512/t3513: remove KNOWN_FAILURE_CHERRY_PICK_SEES_EMPTY_COMMIT=1
779 + - sequencer: try to commit without forking 'git commit'
780 + - sequencer: load commit related config
781 + - sequencer: simplify adding Signed-off-by: trailer
782 + - commit: move print_commit_summary() to libgit
783 + - commit: move post-rewrite code to libgit
784 + - Add a function to update HEAD after creating a commit
785 + - commit: move empty message checks to libgit
786 + - t3404: check intermediate squash messages
787
788 The sequencer infrastructure is shared across "git cherry-pick",
789 "git rebase -i", etc., and has always spawned "git commit" when it
@@ -888,45 +792,51 @@ of the repositories listed at
792 gives performance boost for a few tens of percents in some sample
793 scenarios.
794
891 - Will cook in 'next'.
892 -
795
796 * jh/fsck-promisors (2017-12-08) 10 commits
895 - - gc: do not repack promisor packfiles
896 - - rev-list: support termination at promisor objects
897 - - sha1_file: support lazily fetching missing objects
898 - - introduce fetch-object: fetch one promisor object
899 - - index-pack: refactor writing of .keep files
900 - - fsck: support promisor objects as CLI argument
901 - - fsck: support referenced promisor objects
902 - - fsck: support refs pointing to promisor objects
903 - - fsck: introduce partialclone extension
904 - - extension.partialclone: introduce partial clone extension
797 + (merged to 'next' on 2018-01-23 at ca59f5c18e)
798 + + gc: do not repack promisor packfiles
799 + + rev-list: support termination at promisor objects
800 + + sha1_file: support lazily fetching missing objects
801 + + introduce fetch-object: fetch one promisor object
802 + + index-pack: refactor writing of .keep files
803 + + fsck: support promisor objects as CLI argument
804 + + fsck: support referenced promisor objects
805 + + fsck: support refs pointing to promisor objects
806 + + fsck: introduce partialclone extension
807 + + extension.partialclone: introduce partial clone extension
808 (this branch is used by jh/partial-clone.)
809
810 + Originally merged to 'next' on 2018-01-17
811 +
812 In preparation for implementing narrow/partial clone, the machinery
813 for checking object connectivity used by gc and fsck has been
814 taught that a missing object is OK when it is referenced by a
815 packfile specially marked as coming from trusted repository that
816 promises to make them available on-demand and lazily.
817
818 + Will cook in 'next'.
819 +
820
821 * jh/partial-clone (2017-12-08) 13 commits
915 - - t5616: test bulk prefetch after partial fetch
916 - - fetch: inherit filter-spec from partial clone
917 - - t5616: end-to-end tests for partial clone
918 - - fetch-pack: restore save_commit_buffer after use
919 - - unpack-trees: batch fetching of missing blobs
920 - - clone: partial clone
921 - - partial-clone: define partial clone settings in config
922 - - fetch: support filters
923 - - fetch: refactor calculation of remote list
924 - - fetch-pack: test support excluding large blobs
925 - - fetch-pack: add --no-filter
926 - - fetch-pack, index-pack, transport: partial clone
927 - - upload-pack: add object filtering for partial clone
822 + (merged to 'next' on 2018-01-23 at de0f0111ea)
823 + + t5616: test bulk prefetch after partial fetch
824 + + fetch: inherit filter-spec from partial clone
825 + + t5616: end-to-end tests for partial clone
826 + + fetch-pack: restore save_commit_buffer after use
827 + + unpack-trees: batch fetching of missing blobs
828 + + clone: partial clone
829 + + partial-clone: define partial clone settings in config
830 + + fetch: support filters
831 + + fetch: refactor calculation of remote list
832 + + fetch-pack: test support excluding large blobs
833 + + fetch-pack: add --no-filter
834 + + fetch-pack, index-pack, transport: partial clone
835 + + upload-pack: add object filtering for partial clone
836 (this branch uses jh/fsck-promisors.)
837
838 + Originally merged to 'next' on 2018-01-17
839 +
840 The machinery to clone & fetch, which in turn involves packing and
841 unpacking objects, have been told how to omit certain objects using
842 the filtering mechanism introduced by the jh/object-filtering
@@ -934,6 +844,8 @@ of the repositories listed at
844 tolerate missing objects, taking advantage of the mechanism
845 introduced by the jh/fsck-promisors topic.
846
847 + Will cook in 'next'.
848 +
849
850 * ot/mru-on-list (2017-10-01) 1 commit
851 - mru: use double-linked list from list.h
@@ -941,38 +853,5 @@ of the repositories listed at
853 The first step to getting rid of mru API and using the
854 doubly-linked list API directly instead.
855
944 - Is there any remaining issues on this one?
945 -
946 -
947 -* jm/svn-pushmergeinfo-fix (2017-09-17) 1 commit
948 - (merged to 'next' on 2018-01-05 at 6cb237ea44)
949 - + git-svn: fix svn.pushmergeinfo handling of svn+ssh usernames.
950 -
951 - "git svn dcommit" did not take into account the fact that a
952 - svn+ssh:// URL with a username@ (typically used for pushing) refers
953 - to the same SVN repository without the username@ and failed when
954 - svn.pushmergeinfo option is set.
955 -
956 - Will cook in 'next'.
957 -
958 ---------------------------------------------------
959 -[Discarded]
960 -
961 -* rs/revision-keep-pending (2017-12-19) 1 commit
962 - (merged to 'next' on 2017-12-27 at 20a9527941)
963 - + revision: introduce prepare_revision_walk_extended()
964 -
965 - Reverted out of 'next' to give a chance to its reworked successor,
966 - queued on the rs/lose-leak-pending topic.
967 -
968 -
969 -* sb/diff-blobfind (2017-12-12) 1 commit
970 - (merged to 'next' on 2017-12-13 at 9a27a20c5f)
971 - + diffcore: add a filter to find a specific blob
972 -
973 - "git diff" family of commands learned --blobfind=<object-name> that
974 - allows you to limit the output only to a change that involves the
975 - named blob object (either changing the contents from or to it).
976 -
977 - Reverted out of 'next' to give a chance to its reworked successor,
978 - queued on the sb/diff-blobfind-pickaxe topic.
856 + A follow-up is being worked on; it seems to be almost ready.
857 + cf. <20180122073701.h7fh7xrkmnzndzj7@untitled>