What's cooking (2017/02 #01)

Junio C Hamano committed Feb 2, 2017 at 15:03 UTC fc7b875ec9c422dc70e268de67105c4100755fb8
1 file changed +181 -407
whats-cooking.txt
+181 -407
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Jan 2017, #06; Tue, 31)
4 -X-master-at: 8f60064c1f538f06e1c579cbd9840b86b10bcd3d
5 -X-next-at: d13081a61a6c1d42f310f616f74992dc2def6583
3 +Subject: What's cooking in git.git (Feb 2017, #01; Thu, 2)
4 +X-master-at: 8a8f121049fdd881981799755a041b3f81449805
5 +X-next-at: 3e11673fcc32f542ad8901f843cb6952beb23c51
6
7 -What's cooking in git.git (Jan 2017, #06; Tue, 31)
7 +What's cooking in git.git (Feb 2017, #01; Thu, 2)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -12,12 +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 -Two biggies from Dscho are now in 'master'. Another thanks goes to
16 -him for pointing out that I had a wrong version of isatty() fix
17 -earlier in 'maint' and 'master', which is now fixed by merging the
18 -updated one in both of these branches. Please give the tip of
19 -'maint' a quick look, as I want to tag and push out 2.11.1 later
20 -this week, probably at the same time as 2.12-rc0 goes out.
15 +The tip of 'master' has most of the topics (and all the big ones)
16 +that should be in the upcoming release. I'll tag 2.12-rc0 sometime
17 +tomorrow. On the 'maint' front, Git 2.11.1 has been tagged with
18 +bugfixes that are already in 'master'.
19
20 You can find the changes described here in the integration branches
21 of the repositories listed at
@@ -27,356 +25,142 @@ of the repositories listed at
25 --------------------------------------------------
26 [Graduated to "master"]
27
30 -* bw/push-submodule-only (2016-12-20) 3 commits
31 - (merged to 'next' on 2017-01-23 at d6cd1c60ae)
32 - + push: add option to push only submodules
33 - + submodules: add RECURSE_SUBMODULES_ONLY value
34 - + transport: reformat flag #defines to be more readable
35 -
36 - "git submodule push" learned "--recurse-submodules=only option to
37 - push submodules out without pushing the top-level superproject.
38 -
39 -
40 -* jk/clear-delta-base-cache-fix (2017-01-19) 1 commit
41 - (merged to 'next' on 2017-01-23 at 5f4af2b0a5)
42 - + clear_delta_base_cache(): don't modify hashmap while iterating
43 -
44 - A crashing bug introduced in v2.11 timeframe has been found (it is
45 - triggerable only in fast-import) and fixed.
46 -
47 -
48 -* jk/coding-guidelines-update (2017-01-17) 1 commit
49 - (merged to 'next' on 2017-01-23 at 8c57afa288)
50 - + CodingGuidelines: clarify multi-line brace style
51 -
52 - Developer doc update.
53 -
54 -
55 -* jk/fsck-connectivity-check-fix (2017-01-26) 9 commits
56 - (merged to 'next' on 2017-01-26 at dd03f7a17f)
57 - + fsck: lazily load types under --connectivity-only
58 - + fsck: move typename() printing to its own function
59 - (merged to 'next' on 2017-01-25 at f3d7d93785)
60 - + t1450: use "mv -f" within loose object directory
61 - (merged to 'next' on 2017-01-23 at e8e9b76b84)
62 - + fsck: check HAS_OBJ more consistently
63 - + fsck: do not fallback "git fsck <bogus>" to "git fsck"
64 - + fsck: tighten error-checks of "git fsck <head>"
65 - + fsck: prepare dummy objects for --connectivity-check
66 - + fsck: report trees as dangling
67 - + t1450: clean up sub-objects in duplicate-entry test
68 -
69 - "git fsck --connectivity-check" was not working at all.
70 -
71 -
72 -* jk/loose-object-fsck (2017-01-15) 6 commits
73 - (merged to 'next' on 2017-01-23 at 4302ad090d)
74 - + fsck: detect trailing garbage in all object types
75 - + fsck: parse loose object paths directly
76 - + sha1_file: add read_loose_object() function
77 - + t1450: test fsck of packed objects
78 - + sha1_file: fix error message for alternate objects
79 - + t1450: refactor loose-object removal
80 -
81 - "git fsck" inspects loose objects more carefully now.
82 -
83 -
84 -* jk/vreport-sanitize (2017-01-11) 2 commits
85 - (merged to 'next' on 2017-01-18 at 4bbf370981)
86 - + vreport: sanitize ASCII control chars
87 - + Revert "vreportf: avoid intermediate buffer"
88 -
89 - An error message with an ASCII control character like '\r' in it
90 - can alter the message to hide its early part, which is problematic
91 - when a remote side gives such an error message that the local side
92 - will relay with a "remote: " prefix.
93 -
94 -
95 -* js/difftool-builtin (2017-01-25) 4 commits
96 - (merged to 'next' on 2017-01-25 at 87d2a0976a)
97 - + difftool: hack around -Wzero-length-format warning
98 - (merged to 'next' on 2017-01-23 at 6f4810dbd9)
99 - + difftool: retire the scripted version
100 - + difftool: implement the functionality in the builtin
101 - + difftool: add a skeleton for the upcoming builtin
102 -
103 - Rewrite a scripted porcelain "git difftool" in C.
104 -
105 -
106 -* js/exec-path-coverity-workaround (2017-01-09) 2 commits
107 - (merged to 'next' on 2017-01-23 at bf5dfbf860)
108 - + git_exec_path: do not return the result of getenv()
109 - + git_exec_path: avoid Coverity warning about unfree()d result
28 +* bc/use-asciidoctor-opt (2017-01-31) 8 commits
29 + (merged to 'next' on 2017-01-31 at f2a641f6f3)
30 + + Documentation: implement linkgit macro for Asciidoctor
31 + + Makefile: add a knob to enable the use of Asciidoctor
32 + + Documentation: move dblatex arguments into variable
33 + + Documentation: add XSLT to fix DocBook for Texinfo
34 + + Documentation: sort sources for gitman.texi
35 + + Documentation: remove unneeded argument in cat-texi.perl
36 + + Documentation: modernize cat-texi.perl
37 + + Documentation: fix warning in cat-texi.perl
38
111 - Code cleanup.
112 - Split out of another topic.
113 -
114 -
115 -* js/mingw-isatty (2017-01-18) 1 commit
116 - (merged to 'next' on 2017-01-23 at ae0f80e058)
117 - + mingw: follow-up to "replace isatty() hack"
118 -
119 - An update to a topic that is already in 'master'.
120 -
121 -
122 -* js/remote-rename-with-half-configured-remote (2017-01-19) 2 commits
123 - (merged to 'next' on 2017-01-23 at a1b655dbac)
124 - + remote rename: more carefully determine whether a remote is configured
125 - + remote rename: demonstrate a bogus "remote exists" bug
126 -
127 - With anticipatory tweaking for remotes defined in ~/.gitconfig
128 - (e.g. "remote.origin.prune" set to true, even though there may or
129 - may not actually be "origin" remote defined in a particular Git
130 - repository), "git remote rename" and other commands misinterpreted
131 - and behaved as if such a non-existing remote actually existed.
132 -
133 -
134 -* js/sequencer-i-countdown-3 (2017-01-17) 38 commits
135 - (merged to 'next' on 2017-01-23 at 251dd15139)
136 - + sequencer (rebase -i): write out the final message
137 - + sequencer (rebase -i): write the progress into files
138 - + sequencer (rebase -i): show the progress
139 - + sequencer (rebase -i): suggest --edit-todo upon unknown command
140 - + sequencer (rebase -i): show only failed cherry-picks' output
141 - + sequencer (rebase -i): show only failed `git commit`'s output
142 - + sequencer: use run_command() directly
143 - + sequencer: update reading author-script
144 - + sequencer (rebase -i): differentiate between comments and 'noop'
145 - + sequencer (rebase -i): implement the 'drop' command
146 - + sequencer (rebase -i): allow rescheduling commands
147 - + sequencer (rebase -i): respect strategy/strategy_opts settings
148 - + sequencer (rebase -i): respect the rebase.autostash setting
149 - + sequencer (rebase -i): run the post-rewrite hook, if needed
150 - + sequencer (rebase -i): record interrupted commits in rewritten, too
151 - + sequencer (rebase -i): copy commit notes at end
152 - + sequencer (rebase -i): set the reflog message consistently
153 - + sequencer (rebase -i): refactor setting the reflog message
154 - + sequencer (rebase -i): allow fast-forwarding for edit/reword
155 - + sequencer (rebase -i): implement the 'reword' command
156 - + sequencer (rebase -i): leave a patch upon error
157 - + sequencer (rebase -i): update refs after a successful rebase
158 - + sequencer (rebase -i): the todo can be empty when continuing
159 - + sequencer (rebase -i): skip some revert/cherry-pick specific code path
160 - + sequencer (rebase -i): remove CHERRY_PICK_HEAD when no longer needed
161 - + sequencer (rebase -i): allow continuing with staged changes
162 - + sequencer (rebase -i): write an author-script file
163 - + sequencer (rebase -i): implement the short commands
164 - + sequencer (rebase -i): add support for the 'fixup' and 'squash' commands
165 - + sequencer (rebase -i): write the 'done' file
166 - + sequencer (rebase -i): learn about the 'verbose' mode
167 - + sequencer (rebase -i): implement the 'exec' command
168 - + sequencer (rebase -i): implement the 'edit' command
169 - + sequencer (rebase -i): implement the 'noop' command
170 - + sequencer: support a new action: 'interactive rebase'
171 - + sequencer: use a helper to find the commit message
172 - + sequencer: move "else" keyword onto the same line as preceding brace
173 - + sequencer: avoid unnecessary curly braces
174 -
175 - The sequencer machinery has been further enhanced so that a later
176 - set of patches can start using it to reimplement "rebase -i".
177 - I think I've said everything that needs to be said on this topic.
178 -
179 -
180 -* ls/travis-p4-on-macos (2017-01-23) 1 commit
181 - (merged to 'next' on 2017-01-23 at 2d51987faa)
182 - + travis-ci: fix Perforce install on macOS
183 -
184 - Update the definition of the MacOSX test environment used by
185 - TravisCI.
186 -
187 -
188 -* rs/qsort-s (2017-01-23) 5 commits
189 - (merged to 'next' on 2017-01-23 at 7e2813848b)
190 - + ref-filter: use QSORT_S in ref_array_sort()
191 - + string-list: use QSORT_S in string_list_sort()
192 - + perf: add basic sort performance test
193 - + add QSORT_S
194 - + compat: add qsort_s()
195 -
196 - A few codepaths had to rely on a global variable when sorting
197 - elements of an array because sort(3) API does not allow extra data
198 - to be passed to the comparison function. Use qsort_s() when
199 - natively available, and a fallback implementation of it when not,
200 - to eliminate the need, which is a prerequisite for making the
201 - codepath reentrant.
202 -
203 -
204 -* sb/in-core-index-doc (2017-01-19) 4 commits
205 - (merged to 'next' on 2017-01-23 at 30224463e8)
206 - + documentation: retire unfinished documentation
207 - + cache.h: document add_[file_]to_index
208 - + cache.h: document remove_index_entry_at
209 - + cache.h: document index_name_pos
210 -
211 - Documentation and in-code comments updates.
212 -
213 -
214 -* sb/retire-convert-objects-from-contrib (2017-01-19) 1 commit
215 - (merged to 'next' on 2017-01-23 at decc1e237d)
216 - + contrib: remove git-convert-objects
217 -
218 - Remove an ancient tool left in contrib/.
219 -
220 -
221 -* st/verify-tag (2017-01-18) 6 commits
222 - (merged to 'next' on 2017-01-23 at 2810959427)
223 - + t/t7004-tag: Add --format specifier tests
224 - + t/t7030-verify-tag: Add --format specifier tests
225 - + builtin/tag: add --format argument for tag -v
226 - + builtin/verify-tag: add --format to verify-tag
227 - + ref-filter: add function to print single ref_array_item
228 - + gpg-interface, tag: add GPG_VERIFY_OMIT_STATUS flag
229 -
230 - "git tag" and "git verify-tag" learned to put GPG verification
231 - status in their "--format=<placeholders>" output format.
232 -
233 -
234 -* vp/show-ref-verify-head (2017-01-23) 6 commits
235 - (merged to 'next' on 2017-01-23 at af6dd9d239)
236 - + show-ref: remove a stale comment
237 - + show-ref: remove dead `if (verify)' check
238 - + show-ref: detect dangling refs under --verify as well
239 - + show-ref: move --quiet handling into show_one()
240 - + show-ref: allow -d to work with --verify
241 - + show-ref: accept HEAD with --verify
242 -
243 - "git show-ref HEAD" used with "--verify" because the user is not
244 - interested in seeing refs/remotes/origin/HEAD, and used with
245 - "--head" because the user does not want HEAD to be filtered out,
246 - i.e. "git show-ref --head --verify HEAD", did not work as expected.
39 + Asciidoctor, an alternative reimplementation of AsciiDoc, still
40 + needs some changes to work with documents meant to be formatted
41 + with AsciiDoc. "make USE_ASCIIDOCTOR=YesPlease" to use it out of
42 + the box to document our pages is getting closer to reality.
43
248 ---------------------------------------------------
249 -[New Topics]
44
45 * cw/doc-sign-off (2017-01-27) 1 commit
252 - - doc: clarify distinction between sign-off and pgp-signing
46 + (merged to 'next' on 2017-01-31 at 133cc2886d)
47 + + doc: clarify distinction between sign-off and pgp-signing
48
49 Doc update.
50
256 - Will merge to 'next'.
257 -
258 -
259 -* jk/delta-chain-limit (2017-01-27) 2 commits
260 - - pack-objects: convert recursion to iteration in break_delta_chain()
261 - - pack-objects: enforce --depth limit in reused deltas
262 -
263 - "git repack --depth=<n>" for a long time busted the specified depth
264 - when reusing delta from existing packs. This has been corrected.
51
266 - Will merge to 'next'.
267 -
268 -
269 -* js/re-running-failed-tests (2017-01-27) 1 commit
270 - - t/Makefile: add a rule to re-run previously-failed tests
271 -
272 - "make -C t failed" will now run only the tests that failed in the
273 - previous run. This is usable only when prove is not use, and gives
274 - a useless error message when run after "make clean".
275 -
276 - Will merge to 'next'.
277 -
278 -
279 -* js/unzip-in-usr-bin-workaround (2017-01-27) 1 commit
280 - - test-lib: on FreeBSD, look for unzip(1) in /usr/local/bin/
281 -
282 - Test tweak for FreeBSD where /usr/bin/unzip is unsuitable to run
283 - our tests but /usr/local/bin/unzip is usable.
52 +* ep/commit-static-buf-cleanup (2017-01-31) 2 commits
53 + (merged to 'next' on 2017-01-31 at 02d3c25219)
54 + + builtin/commit.c: switch to strbuf, instead of snprintf()
55 + + builtin/commit.c: remove the PATH_MAX limitation via dynamic allocation
56
285 - Will merge to 'next'.
57 + Code clean-up.
58
59
60 * gv/mingw-p4-mapuser (2017-01-30) 1 commit
289 - - git-p4: fix git-p4.mapUser on Windows
61 + (merged to 'next' on 2017-01-31 at 5a9f2c96f6)
62 + + git-p4: fix git-p4.mapUser on Windows
63
64 "git p4" did not work well with multiple git-p4.mapUser entries on
65 Windows.
66
294 - Will merge to 'next'.
295 -
67
68 * hv/mingw-help-is-executable (2017-01-30) 1 commit
298 - - help: improve is_executable() on Windows
69 + (merged to 'next' on 2017-01-31 at 89aae8d018)
70 + + help: improve is_executable() on Windows
71
72 "git help" enumerates executable files in $PATH; the implementation
73 of "is this file executable?" on Windows has been optimized.
74
303 - Will merge to 'next'.
304 -
75
306 -* cw/log-updates-for-all-refs-really (2017-01-31) 3 commits
307 - - update-ref: add test cases for bare repository
308 - - refs: add option core.logAllRefUpdates = always
309 - - config: add markup to core.logAllRefUpdates doc
310 -
311 - The "core.logAllRefUpdates" that used to be boolean has been
312 - enhanced to take 'always' as well, to record ref updates to refs
313 - other than the ones that are expected to be updated (i.e. branches,
314 - remote-tracking branches and notes).
76 +* js/mingw-hooks-with-exe-suffix (2017-01-30) 1 commit
77 + (merged to 'next' on 2017-01-31 at 3b7863c578)
78 + + mingw: allow hooks to be .exe files
79
316 - Will merge to 'next'.
80 + Names of the various hook scripts must be spelled exactly, but on
81 + Windows, an .exe binary must be named with .exe suffix; notice
82 + $GIT_DIR/hooks/<hookname>.exe as a valid <hookname> hook.
83
84
319 -* mm/merge-rename-delete-message (2017-01-30) 1 commit
320 - - merge-recursive: make "CONFLICT (rename/delete)" message show both paths
85 +* js/retire-relink (2017-01-25) 2 commits
86 + (merged to 'next' on 2017-01-31 at c6c6f9b902)
87 + + relink: really remove the command
88 + + relink: retire the command
89
90 + Cruft removal.
91
323 -* mm/reset-facl-before-umask-test (2017-01-30) 1 commit
324 - - t0001: don't let a default ACL interfere with the umask test
92
326 - Test tweaks for those who have default ACL in their git source tree
327 - that interfere with the umask test.
93 +* js/status-pre-rebase-i (2017-01-26) 1 commit
94 + (merged to 'next' on 2017-01-31 at 09e51b2e39)
95 + + status: be prepared for not-yet-started interactive rebase
96
329 - Will merge to 'next'.
97 + After starting "git rebase -i", which first opens the user's editor
98 + to edit the series of patches to apply, but before saving the
99 + contents of that file, "git status" failed to show the current
100 + state (i.e. you are in an interactive rebase session, but you have
101 + applied no steps yet) correctly.
102
103
332 -* rs/object-id (2017-01-30) 3 commits
333 - - checkout: convert post_checkout_hook() to struct object_id
334 - - use oidcpy() for copying hashes between instances of struct object_id
335 - - use oid_to_hex_r() for converting struct object_id hashes to hex strings
104 +* js/unzip-in-usr-bin-workaround (2017-01-27) 1 commit
105 + (merged to 'next' on 2017-01-31 at 515d1d1f90)
106 + + test-lib: on FreeBSD, look for unzip(1) in /usr/local/bin/
107
337 - "uchar [40]" to "struct object_id" conversion continues.
108 + Test tweak for FreeBSD where /usr/bin/unzip is unsuitable to run
109 + our tests but /usr/local/bin/unzip is usable.
110
339 - Will merge to 'next'.
111
112 +* mm/reset-facl-before-umask-test (2017-01-30) 1 commit
113 + (merged to 'next' on 2017-01-31 at 4a2031e49c)
114 + + t0001: don't let a default ACL interfere with the umask test
115
342 -* rs/swap (2017-01-30) 5 commits
343 - - graph: use SWAP macro
344 - - diff: use SWAP macro
345 - - use SWAP macro
346 - - apply: use SWAP macro
347 - - add SWAP macro
116 + Test tweaks for those who have default ACL in their git source tree
117 + that interfere with the umask test.
118
349 - Code clean-up.
119
351 - Will merge to 'next'.
120 +* nd/log-graph-configurable-colors (2017-01-31) 4 commits
121 + (merged to 'next' on 2017-01-31 at 36df9e2376)
122 + + color_parse_mem: allow empty color spec
123 + (merged to 'next' on 2017-01-23 at c369982ad8)
124 + + log --graph: customize the graph lines with config log.graphColors
125 + + color.c: trim leading spaces in color_parse_mem()
126 + + color.c: fix color_parse_mem() with value_len == 0
127
128 + Some people feel the default set of colors used by "git log --graph"
129 + rather limiting. A mechanism to customize the set of colors has
130 + been introduced.
131
354 -* pl/complete-diff-submodule-diff (2017-01-30) 1 commit
355 - - Completion: Add support for --submodule=diff
132
357 - The command line completion (in contrib/) learned that
358 - "git diff --submodule=" can take "diff" as a recently added option.
133 +* rs/absolute-pathdup (2017-01-27) 2 commits
134 + (merged to 'next' on 2017-01-31 at f751f64876)
135 + + use absolute_pathdup()
136 + + abspath: add absolute_pathdup()
137
360 - Will merge to 'next'.
138 + Code cleanup.
139
140
141 * rs/receive-pack-cleanup (2017-01-30) 1 commit
364 - - receive-pack: call string_list_clear() unconditionally
142 + (merged to 'next' on 2017-01-31 at d660881f69)
143 + + receive-pack: call string_list_clear() unconditionally
144
145 Code clean-up.
146
368 - Will merge to 'next'.
369 -
147
148 * sb/submodule-add-force (2016-11-29) 1 commit
149 + submodule add: extend force flag to add existing repos
150 (this branch is used by sb/push-make-submodule-check-the-default.)
151
152 + Originally merged to 'next' on 2016-12-12
153 +
154 "git submodule add" used to be confused and refused to add a
155 locally created repository; users can now use "--force" option
156 to add them.
157
379 - Will merge to 'next'.
158 +
159 +* sg/mailmap-self (2017-01-31) 1 commit
160 + (merged to 'next' on 2017-01-31 at 2e7641759c)
161 + + .mailmap: update Gábor Szeder's email address
162 +
163 + Will merge to 'master'.
164
165 --------------------------------------------------
166 [Stalled]
@@ -464,65 +248,95 @@ of the repositories listed at
248 --------------------------------------------------
249 [Cooking]
250
467 -* js/mingw-hooks-with-exe-suffix (2017-01-30) 1 commit
468 - - mingw: allow hooks to be .exe files
251 +* jk/delta-chain-limit (2017-01-27) 2 commits
252 + - pack-objects: convert recursion to iteration in break_delta_chain()
253 + - pack-objects: enforce --depth limit in reused deltas
254
470 - Names of the various hook scripts must be spelled exactly, but on
471 - Windows, an .exe binary must be named with .exe suffix; notice
472 - $GIT_DIR/hooks/<hookname>.exe as a valid <hookname> hook.
255 + "git repack --depth=<n>" for a long time busted the specified depth
256 + when reusing delta from existing packs. This has been corrected.
257
258 Will merge to 'next'.
259
260
477 -* js/retire-relink (2017-01-25) 2 commits
478 - - relink: really remove the command
479 - - relink: retire the command
261 +* js/re-running-failed-tests (2017-01-27) 1 commit
262 + (merged to 'next' on 2017-01-31 at 30c3a9e0cf)
263 + + t/Makefile: add a rule to re-run previously-failed tests
264
481 - Cruft removal.
265 + "make -C t failed" will now run only the tests that failed in the
266 + previous run. This is usable only when prove is not use, and gives
267 + a useless error message when run after "make clean", but otherwise
268 + is serviceable.
269
483 - Will merge to 'next'.
270 + Will merge to 'master'.
271
272
486 -* js/status-pre-rebase-i (2017-01-26) 1 commit
487 - (merged to 'next' on 2017-01-31 at 09e51b2e39)
488 - + status: be prepared for not-yet-started interactive rebase
273 +* cw/log-updates-for-all-refs-really (2017-02-01) 4 commits
274 + (merged to 'next' on 2017-02-02 at 3e11673fcc)
275 + + doc: add note about ignoring '--no-create-reflog'
276 + (merged to 'next' on 2017-01-31 at 53f71d2401)
277 + + update-ref: add test cases for bare repository
278 + + refs: add option core.logAllRefUpdates = always
279 + + config: add markup to core.logAllRefUpdates doc
280
490 - After starting "git rebase -i", which first opens the user's editor
491 - to edit the series of patches to apply, but before saving the
492 - contents of that file, "git status" failed to show the current
493 - state (i.e. you are in an interactive rebase session, but you have
494 - applied no steps yet) correctly.
281 + The "core.logAllRefUpdates" that used to be boolean has been
282 + enhanced to take 'always' as well, to record ref updates to refs
283 + other than the ones that are expected to be updated (i.e. branches,
284 + remote-tracking branches and notes).
285
286 Will merge to 'master'.
287
288
499 -* ps/urlmatch-wildcard (2017-01-31) 5 commits
500 - . urlmatch: allow globbing for the URL host part
501 - . urlmatch: include host in urlmatch ranking
502 - . urlmatch: split host and port fields in `struct url_info`
503 - . urlmatch: enable normalization of URLs with globs
504 - . mailmap: add Patrick Steinhardt's work address
289 +* mm/merge-rename-delete-message (2017-01-30) 1 commit
290 + - merge-recursive: make "CONFLICT (rename/delete)" message show both paths
291 +
292
506 - The <url> part in "http.<url>.<variable>" configuration variable
507 - can now be spelled with '*' that serves as wildcard.
508 - E.g. "http.https://*.example.com.proxy" can be used to specify the
509 - proxy used for https://a.example.com, https://b.example.com, etc.,
510 - i.e. any host in the example.com domain.
293 +* rs/object-id (2017-01-30) 3 commits
294 + (merged to 'next' on 2017-01-31 at c442e4780c)
295 + + checkout: convert post_checkout_hook() to struct object_id
296 + + use oidcpy() for copying hashes between instances of struct object_id
297 + + use oid_to_hex_r() for converting struct object_id hashes to hex strings
298
512 - With the update it still seems to fail the same t5551#31
513 - cf. <cover.1485853153.git.ps@pks.im>
299 + "uchar [40]" to "struct object_id" conversion continues.
300
301 + Will merge to 'master'.
302
516 -* rs/absolute-pathdup (2017-01-27) 2 commits
517 - (merged to 'next' on 2017-01-31 at f751f64876)
518 - + use absolute_pathdup()
519 - + abspath: add absolute_pathdup()
303
521 - Code cleanup.
304 +* rs/swap (2017-01-30) 5 commits
305 + - graph: use SWAP macro
306 + - diff: use SWAP macro
307 + - use SWAP macro
308 + - apply: use SWAP macro
309 + - add SWAP macro
310 +
311 + Code clean-up.
312 +
313 + Will merge to 'next'.
314 +
315 +
316 +* pl/complete-diff-submodule-diff (2017-01-30) 1 commit
317 + (merged to 'next' on 2017-01-31 at 7e668d325c)
318 + + Completion: Add support for --submodule=diff
319 +
320 + The command line completion (in contrib/) learned that
321 + "git diff --submodule=" can take "diff" as a recently added option.
322
323 Will merge to 'master'.
324
325
326 +* ps/urlmatch-wildcard (2017-02-01) 5 commits
327 + - urlmatch: allow globbing for the URL host part
328 + - urlmatch: include host in urlmatch ranking
329 + - urlmatch: split host and port fields in `struct url_info`
330 + - urlmatch: enable normalization of URLs with globs
331 + - mailmap: add Patrick Steinhardt's work address
332 +
333 + The <url> part in "http.<url>.<variable>" configuration variable
334 + can now be spelled with '*' that serves as wildcard.
335 + E.g. "http.https://*.example.com.proxy" can be used to specify the
336 + proxy used for https://a.example.com, https://b.example.com, etc.,
337 + i.e. any host in the example.com domain.
338 +
339 +
340 * sb/submodule-recursive-absorb (2017-01-26) 3 commits
341 (merged to 'next' on 2017-01-31 at 0a24cfd06b)
342 + submodule absorbing: fix worktree/gitdir pointers recursively for non-moves
@@ -549,8 +363,10 @@ of the repositories listed at
363 Will merge to 'master'.
364
365
552 -* sf/putty-w-args (2017-01-26) 3 commits
553 - - connect: support GIT_SSH_VARIANT and ssh.variant
366 +* sf/putty-w-args (2017-02-01) 5 commits
367 + - SQUASH???
368 + - connect: Add the envvar GIT_SSH_VARIANT and ssh.variant config
369 + - git_connect(): factor out SSH variant handling
370 - connect: rename tortoiseplink and putty variables
371 - connect: handle putty/plink also in GIT_SSH_COMMAND
372
@@ -567,24 +383,6 @@ of the repositories listed at
383 cf. <xmqqpoj8z7su.fsf@gitster.mtv.corp.google.com>
384
385
570 -* bc/use-asciidoctor-opt (2017-01-31) 8 commits
571 - - Documentation: implement linkgit macro for Asciidoctor
572 - - Makefile: add a knob to enable the use of Asciidoctor
573 - - Documentation: move dblatex arguments into variable
574 - - Documentation: add XSLT to fix DocBook for Texinfo
575 - - Documentation: sort sources for gitman.texi
576 - - Documentation: remove unneeded argument in cat-texi.perl
577 - - Documentation: modernize cat-texi.perl
578 - - Documentation: fix warning in cat-texi.perl
579 -
580 - Asciidoctor, an alternative reimplementation of AsciiDoc, still
581 - needs some changes to work with documents meant to be formatted
582 - with AsciiDoc. "make USE_ASCIIDOCTOR=YesPlease" to use it out of
583 - the box to document our pages is getting closer to reality.
584 -
585 - Will merge to 'next'.
586 -
587 -
386 * jk/describe-omit-some-refs (2017-01-23) 5 commits
387 (merged to 'next' on 2017-01-23 at f8a14b4996)
388 + describe: teach describe negative pattern matches
@@ -601,16 +399,6 @@ of the repositories listed at
399 Will cook in 'next'.
400
401
604 -* ep/commit-static-buf-cleanup (2017-01-31) 2 commits
605 - (merged to 'next' on 2017-01-31 at 02d3c25219)
606 - + builtin/commit.c: switch to strbuf, instead of snprintf()
607 - + builtin/commit.c: remove the PATH_MAX limitation via dynamic allocation
608 -
609 - Code clean-up.
610 -
611 - Will merge to 'master'.
612 -
613 -
402 * sb/unpack-trees-super-prefix (2017-01-25) 4 commits
403 (merged to 'next' on 2017-01-31 at dabe6ca2b1)
404 + unpack-trees: support super-prefix option
@@ -632,7 +420,7 @@ of the repositories listed at
420 Needs review.
421
422
635 -* bw/attr (2017-01-23) 27 commits
423 +* bw/attr (2017-02-01) 27 commits
424 - attr: reformat git_attr_set_direction() function
425 - attr: push the bare repo check into read_attr()
426 - attr: store attribute stack in attr_check structure
@@ -648,7 +436,7 @@ of the repositories listed at
436 - attr: (re)introduce git_check_attr() and struct attr_check
437 - attr: rename function and struct related to checking attributes
438 - attr.c: outline the future plans by heavily commenting
651 - - Documentation/gitattributes.txt: fix a typo
439 + - Documentation: fix a typo
440 - attr.c: add push_stack() helper
441 - attr: support quoting pathname patterns in C style
442 - attr.c: plug small leak in parse_attr_line()
@@ -699,20 +487,6 @@ of the repositories listed at
487 Needs review.
488
489
702 -* nd/log-graph-configurable-colors (2017-01-23) 3 commits
703 - (merged to 'next' on 2017-01-23 at c369982ad8)
704 - + log --graph: customize the graph lines with config log.graphColors
705 - + color.c: trim leading spaces in color_parse_mem()
706 - + color.c: fix color_parse_mem() with value_len == 0
707 -
708 - Some people feel the default set of colors used by "git log --graph"
709 - rather limiting. A mechanism to customize the set of colors has
710 - been introduced.
711 -
712 - Reported to break "add -p".
713 - cf. <20170128040709.tqx4u45ktgpkbfm4@sigill.intra.peff.net>
714 -
715 -
490 * cc/split-index-config (2016-12-26) 21 commits
491 - Documentation/git-update-index: explain splitIndex.*
492 - Documentation/config: add splitIndex.sharedIndexExpire
@@ -749,7 +523,6 @@ of the repositories listed at
523 + Revert "push: change submodule default to check when submodules exist"
524 (merged to 'next' on 2016-12-12 at 1863e05af5)
525 + push: change submodule default to check when submodules exist
752 - (this branch uses sb/submodule-add-force.)
526
527 Turn the default of "push.recurseSubmodules" to "check" when
528 submodules seem to be in use.
@@ -758,31 +531,32 @@ of the repositories listed at
531
532
533 * kn/ref-filter-branch-list (2017-01-31) 20 commits
761 - - branch: implement '--format' option
762 - - branch: use ref-filter printing APIs
763 - - branch, tag: use porcelain output
764 - - ref-filter: allow porcelain to translate messages in the output
765 - - ref-filter: add an 'rstrip=<N>' option to atoms which deal with refnames
766 - - ref-filter: modify the 'lstrip=<N>' option to work with negative '<N>'
767 - - ref-filter: Do not abruptly die when using the 'lstrip=<N>' option
768 - - ref-filter: rename the 'strip' option to 'lstrip'
769 - - ref-filter: make remote_ref_atom_parser() use refname_atom_parser_internal()
770 - - ref-filter: introduce refname_atom_parser()
771 - - ref-filter: introduce refname_atom_parser_internal()
772 - - ref-filter: make "%(symref)" atom work with the ':short' modifier
773 - - ref-filter: add support for %(upstream:track,nobracket)
774 - - ref-filter: make %(upstream:track) prints "[gone]" for invalid upstreams
775 - - ref-filter: introduce format_ref_array_item()
776 - - ref-filter: move get_head_description() from branch.c
777 - - ref-filter: modify "%(objectname:short)" to take length
778 - - ref-filter: implement %(if:equals=<string>) and %(if:notequals=<string>)
779 - - ref-filter: include reference to 'used_atom' within 'atom_value'
780 - - ref-filter: implement %(if), %(then), and %(else) atoms
534 + (merged to 'next' on 2017-01-31 at e7592a5461)
535 + + branch: implement '--format' option
536 + + branch: use ref-filter printing APIs
537 + + branch, tag: use porcelain output
538 + + ref-filter: allow porcelain to translate messages in the output
539 + + ref-filter: add an 'rstrip=<N>' option to atoms which deal with refnames
540 + + ref-filter: modify the 'lstrip=<N>' option to work with negative '<N>'
541 + + ref-filter: Do not abruptly die when using the 'lstrip=<N>' option
542 + + ref-filter: rename the 'strip' option to 'lstrip'
543 + + ref-filter: make remote_ref_atom_parser() use refname_atom_parser_internal()
544 + + ref-filter: introduce refname_atom_parser()
545 + + ref-filter: introduce refname_atom_parser_internal()
546 + + ref-filter: make "%(symref)" atom work with the ':short' modifier
547 + + ref-filter: add support for %(upstream:track,nobracket)
548 + + ref-filter: make %(upstream:track) prints "[gone]" for invalid upstreams
549 + + ref-filter: introduce format_ref_array_item()
550 + + ref-filter: move get_head_description() from branch.c
551 + + ref-filter: modify "%(objectname:short)" to take length
552 + + ref-filter: implement %(if:equals=<string>) and %(if:notequals=<string>)
553 + + ref-filter: include reference to 'used_atom' within 'atom_value'
554 + + ref-filter: implement %(if), %(then), and %(else) atoms
555
556 The code to list branches in "git branch" has been consolidated
557 with the more generic ref-filter API.
558
785 - Will merge to 'next'.
559 + Will cook in 'next'.
560
561
562 * jk/no-looking-at-dotgit-outside-repo-final (2016-10-26) 1 commit