What's cooking (2017/01 #04)

Junio C Hamano committed Jan 23, 2017 at 16:14 UTC 1f59d13740b0870c2c3de82b26f26d9969c70d83
1 file changed +208 -377
whats-cooking.txt
+208 -377
@@ -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, #03; Thu, 19)
4 -X-master-at: 787f75f0567aa8c7347544c65e9d3bc6640a27d4
5 -X-next-at: b2604e8deeffe49d7b8c9b0cfef08f9a79f8cf14
3 +Subject: What's cooking in git.git (Jan 2017, #04; Mon, 23)
4 +X-master-at: 4e59582ff70d299f5a88449891e78d15b4b3fabe
5 +X-next-at: a5e2989ef8dcd0c4cdb34f9e7d116c2159b8845d
6
7 -What's cooking in git.git (Jan 2017, #03; Thu, 19)
7 +What's cooking in git.git (Jan 2017, #04; Mon, 23)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -12,9 +12,6 @@ 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 sixth batch of topics have been merged to 'master'. This batch
16 -is fairly large, and regression-hunting is very much appreciated.
17 -
15 You can find the changes described here in the integration branches
16 of the repositories listed at
17
@@ -23,277 +20,238 @@ of the repositories listed at
20 --------------------------------------------------
21 [Graduated to "master"]
22
26 -* bw/grep-recurse-submodules (2016-12-22) 12 commits
27 - (merged to 'next' on 2016-12-22 at 1ede815b8d)
28 - + grep: search history of moved submodules
29 - + grep: enable recurse-submodules to work on <tree> objects
30 - + grep: optionally recurse into submodules
31 - + grep: add submodules as a grep source type
32 - + submodules: load gitmodules file from commit sha1
33 - + submodules: add helper to determine if a submodule is initialized
34 - + submodules: add helper to determine if a submodule is populated
35 - (merged to 'next' on 2016-12-22 at fea8fa870f)
36 - + real_path: canonicalize directory separators in root parts
37 - + real_path: have callers use real_pathdup and strbuf_realpath
38 - + real_path: create real_pathdup
39 - + real_path: convert real_path_internal to strbuf_realpath
40 - + real_path: resolve symlinks by hand
41 - (this branch is tangled with bw/realpath-wo-chdir.)
42 -
43 - "git grep" has been taught to optionally recurse into submodules.
44 -
45 -
46 -* bw/pathspec-cleanup (2017-01-08) 16 commits
47 - (merged to 'next' on 2017-01-10 at 79291ff506)
48 - + pathspec: rename prefix_pathspec to init_pathspec_item
49 - + pathspec: small readability changes
50 - + pathspec: create strip submodule slash helpers
51 - + pathspec: create parse_element_magic helper
52 - + pathspec: create parse_long_magic function
53 - + pathspec: create parse_short_magic function
54 - + pathspec: factor global magic into its own function
55 - + pathspec: simpler logic to prefix original pathspec elements
56 - + pathspec: always show mnemonic and name in unsupported_magic
57 - + pathspec: remove unused variable from unsupported_magic
58 - + pathspec: copy and free owned memory
59 - + pathspec: remove the deprecated get_pathspec function
60 - + ls-tree: convert show_recursive to use the pathspec struct interface
61 - + dir: convert fill_directory to use the pathspec struct interface
62 - + dir: remove struct path_simplify
63 - + mv: remove use of deprecated 'get_pathspec()'
64 - (this branch is used by sb/pathspec-errors.)
23 +* ad/bisect-terms (2017-01-13) 1 commit
24 + (merged to 'next' on 2017-01-18 at 9f500d6cf5)
25 + + Documentation/bisect: improve on (bad|new) and (good|bad)
26
66 - Code clean-up in the pathspec API.
27 + Documentation fix.
28
29
69 -* bw/realpath-wo-chdir (2017-01-09) 7 commits
70 - (merged to 'next' on 2017-01-10 at ed315a40c8)
71 - + real_path: set errno when max number of symlinks is exceeded
72 - + real_path: prevent redefinition of MAXSYMLINKS
73 - (merged to 'next' on 2016-12-22 at fea8fa870f)
74 - + real_path: canonicalize directory separators in root parts
75 - + real_path: have callers use real_pathdup and strbuf_realpath
76 - + real_path: create real_pathdup
77 - + real_path: convert real_path_internal to strbuf_realpath
78 - + real_path: resolve symlinks by hand
79 - (this branch is tangled with bw/grep-recurse-submodules.)
30 +* bw/read-blob-data-does-not-modify-index-state (2017-01-11) 1 commit
31 + (merged to 'next' on 2017-01-18 at f33363fb07)
32 + + index: improve constness for reading blob data
33
81 - The implementation of "real_path()" was to go there with chdir(2)
82 - and call getcwd(3), but this obviously wouldn't be usable in a
83 - threaded environment. Rewrite it to manually resolve relative
84 - paths including symbolic links in path components.
34 + Code clean-up.
35
36
87 -* dt/disable-bitmap-in-auto-gc (2016-12-29) 2 commits
88 - (merged to 'next' on 2017-01-10 at 9f4e89e15d)
89 - + repack: die on incremental + write-bitmap-index
90 - + auto gc: don't write bitmaps for incremental repacks
91 -
92 - It is natural that "git gc --auto" may not attempt to pack
93 - everything into a single pack, and there is no point in warning
94 - when the user has configured the system to use the pack bitmap,
95 - leading to disabling further "gc".
96 -
97 -
98 -* jk/archive-zip-userdiff-config (2017-01-07) 1 commit
99 - (merged to 'next' on 2017-01-10 at ac42e4958c)
100 - + archive-zip: load userdiff config
101 -
102 - "git archive" did not read the standard configuration files, and
103 - failed to notice a file that is marked as binary via the userdiff
104 - driver configuration.
105 -
106 -
107 -* jk/blame-fixes (2017-01-07) 3 commits
108 - (merged to 'next' on 2017-01-10 at 18f909da61)
109 - + blame: output porcelain "previous" header for each file
110 - + blame: handle --no-abbrev
111 - + blame: fix alignment with --abbrev=40
112 -
113 - "git blame --porcelain" misidentified the "previous" <commit, path>
114 - pair (aka "source") when contents came from two or more files.
115 -
116 -
117 -* jk/execv-dashed-external (2017-01-09) 3 commits
118 - (merged to 'next' on 2017-01-10 at 117b506cb0)
119 - + execv_dashed_external: wait for child on signal death
120 - + execv_dashed_external: stop exiting with negative code
121 - + execv_dashed_external: use child_process struct
37 +* jk/grep-e-could-be-extended-beyond-posix (2017-01-11) 1 commit
38 + (merged to 'next' on 2017-01-18 at dd1b9d1fa8)
39 + + t7810: avoid assumption about invalid regex syntax
40
123 - Typing ^C to pager, which usually does not kill it, killed Git and
124 - took the pager down as a collateral damage in certain process-tree
125 - structure. This has been fixed.
41 + Tighten a test to avoid mistaking an extended ERE regexp engine as
42 + a PRE regexp engine.
43
44
128 -* jk/rebase-i-squash-count-fix (2017-01-07) 1 commit
129 - (merged to 'next' on 2017-01-10 at d6cfc6ace2)
130 - + rebase--interactive: count squash commits above 10 correctly
45 +* rh/diff-orderfile-doc (2017-01-15) 2 commits
46 + (merged to 'next' on 2017-01-18 at cc2af9c628)
47 + + diff: document the format of the -O (diff.orderFile) file
48 + + diff: document behavior of relative diff.orderFile
49
132 - "git rebase -i" with a recent update started showing an incorrect
133 - count when squashing more than 10 commits.
50 + Documentation fix.
51
52
136 -* js/asciidoctor-tweaks (2017-01-13) 2 commits
137 - (merged to 'next' on 2017-01-15 at 8553c6e513)
138 - + asciidoctor: fix user-manual to be built by `asciidoctor`
139 - (merged to 'next' on 2017-01-10 at 087da7b7c1)
140 - + giteveryday: unbreak rendering with AsciiDoctor
53 +* sb/cd-then-git-can-be-written-as-git-c (2017-01-13) 1 commit
54 + (merged to 'next' on 2017-01-18 at 8923d2d001)
55 + + lib-submodule-update.sh: reduce use of subshell by using "git -C"
56
142 - Adjust documentation to help AsciiDoctor render better while not
143 - breaking the rendering done by AsciiDoc.
57 + Test clean-up.
58
59
146 -* js/mingw-test-push-unc-path (2017-01-07) 1 commit
147 - (merged to 'next' on 2017-01-10 at 249d9f26f3)
148 - + mingw: add a regression test for pushing to UNC paths
60 +* sb/submodule-config-tests (2017-01-12) 2 commits
61 + (merged to 'next' on 2017-01-18 at bd850f6ad3)
62 + + t7411: test lookup of uninitialized submodules
63 + + t7411: quote URLs
64
150 - "git push \\server\share\dir" has recently regressed and then
151 - fixed. A test has retroactively been added for this breakage.
65 + Test updates.
66
67
154 -* km/branch-get-push-while-detached (2017-01-07) 1 commit
155 - (merged to 'next' on 2017-01-10 at a7f8af8c55)
156 - + branch_get_push: do not segfault when HEAD is detached
68 +* sb/submodule-embed-gitdir (2017-01-12) 1 commit
69 + (merged to 'next' on 2017-01-18 at 0a5e24a3f0)
70 + + submodule absorbgitdirs: mention in docstring help
71
158 - "git <cmd> @{push}" on a detached HEAD used to segfault; it has
159 - been corrected to error out with a message.
72 + Help-text fix.
73
74
162 -* ls/p4-retry-thrice (2016-12-29) 1 commit
163 - (merged to 'next' on 2017-01-10 at c733e27410)
164 - + git-p4: do not pass '-r 0' to p4 commands
75 +* sb/submodule-init (2017-01-12) 1 commit
76 + (merged to 'next' on 2017-01-18 at 2e8a38b1cc)
77 + + submodule update --init: display correct path from submodule
78
166 - A recent updates to "git p4" was not usable for older p4 but it
167 - could be made to work with minimum changes. Do so.
79 + Error message fix.
80
81
170 -* pb/test-must-fail-is-for-git (2017-01-09) 2 commits
171 - (merged to 'next' on 2017-01-10 at 5f24a98779)
172 - + t9813: avoid using pipes
173 - + don't use test_must_fail with grep
82 +* sg/fix-versioncmp-with-common-suffix (2017-01-12) 8 commits
83 + (merged to 'next' on 2017-01-18 at f79c24a291)
84 + + versioncmp: generalize version sort suffix reordering
85 + + versioncmp: factor out helper for suffix matching
86 + + versioncmp: use earliest-longest contained suffix to determine sorting order
87 + + versioncmp: cope with common part overlapping with prerelease suffix
88 + + versioncmp: pass full tagnames to swap_prereleases()
89 + + t7004-tag: add version sort tests to show prerelease reordering issues
90 + + t7004-tag: use test_config helper
91 + + t7004-tag: delete unnecessary tags with test_when_finished
92
175 - Test cleanup.
93 + The prereleaseSuffix feature of version comparison that is used in
94 + "git tag -l" did not correctly when two or more prereleases for the
95 + same release were present (e.g. when 2.0, 2.0-beta1, and 2.0-beta2
96 + are there and the code needs to compare 2.0-beta1 and 2.0-beta2).
97
98
178 -* rh/mergetool-regression-fix (2017-01-10) 14 commits
179 - (merged to 'next' on 2017-01-10 at e8e00c798b)
180 - + mergetool: fix running in subdir when rerere enabled
181 - + mergetool: take the "-O" out of $orderfile
182 - + t7610: add test case for rerere+mergetool+subdir bug
183 - + t7610: spell 'git reset --hard' consistently
184 - + t7610: don't assume the checked-out commit
185 - + t7610: always work on a test-specific branch
186 - + t7610: delete some now-unnecessary 'git reset --hard' lines
187 - + t7610: run 'git reset --hard' after each test to clean up
188 - + t7610: don't rely on state from previous test
189 - + t7610: use test_when_finished for cleanup tasks
190 - + t7610: move setup code to the 'setup' test case
191 - + t7610: update branch names to match test number
192 - + rev-parse doc: pass "--" to rev-parse in the --prefix example
193 - + .mailmap: record canonical email for Richard Hansen
99 +* vn/diff-ihc-config (2017-01-12) 1 commit
100 + (merged to 'next' on 2017-01-18 at ac4915dbe6)
101 + + diff: add interhunk context config option
102
195 - "git mergetool" without any pathspec on the command line that is
196 - run from a subdirectory became no-op in Git v2.11 by mistake, which
197 - has been fixed.
103 + "git diff" learned diff.interHunkContext configuration variable
104 + that gives the default value for its --inter-hunk-context option.
105
106
200 -* sb/pathspec-errors (2017-01-09) 1 commit
201 - (merged to 'next' on 2017-01-10 at 432375cb62)
202 - + pathspec: give better message for submodule related pathspec error
203 - (this branch uses bw/pathspec-cleanup.)
107 +* ws/request-pull-code-cleanup (2017-01-15) 1 commit
108 + (merged to 'next' on 2017-01-18 at dfcb1405de)
109 + + request-pull: drop old USAGE stuff
110
205 - Running "git add a/b" when "a" is a submodule correctly errored
206 - out, but without a meaningful error message.
111 + Code clean-up.
112
113 +--------------------------------------------------
114 +[New Topics]
115
209 -* sb/remove-gitview (2017-01-13) 4 commits
210 - (merged to 'next' on 2017-01-15 at 7c9eae479e)
211 - + doc: git-gui browser does not default to HEAD
212 - + doc: gitk: add the upstream repo location
213 - + doc: gitk: remove gitview reference
214 - (merged to 'next' on 2017-01-10 at dcb3abd146)
215 - + contrib: remove gitview
116 +* sh/grep-tree-obj-tweak-output (2017-01-20) 2 commits
117 + - grep: use '/' delimiter for paths
118 + - grep: only add delimiter if there isn't one already
119 +
120 + "git grep", when fed a tree-ish as an input, shows each hit
121 + prefixed with "<tree-ish>:<path>:<lineno>:". As <tree-ish> is
122 + almost always either a commit or a tag that points at a commit, the
123 + early part of the output "<tree-ish>:<path>" can be used as the
124 + name of the blob and given to "git show". When <tree-ish> is a
125 + tree given in the extended SHA-1 syntax (e.g. "<commit>:", or
126 + "<commit>:<dir>"), however, this results in a string that does not
127 + name a blob (e.g. "<commit>::<path>" or "<commit>:<dir>:<path>").
128 + "git grep" has been taught to be a bit more intelligent about these
129 + cases and omit a colon (in the former case) or use slash (in the
130 + latter case) to produce "<commit>:<path>" and
131 + "<commit>:<dir>/<path>" that can be used as the name of a blob.
132 +
133 + Waiting for the review discussion to settle, followed by a reroll.
134 +
135 +
136 +* vp/show-ref-verify-head (2017-01-23) 5 commits
137 + - show-ref: remove dead `if (verify)' check
138 + - show-ref: detect dangling refs under --verify as well
139 + - show-ref: move --quiet handling into show_one()
140 + - show-ref: allow -d to work with --verify
141 + - show-ref: accept HEAD with --verify
142 +
143 + "git show-ref HEAD" used with "--verify" because the user is not
144 + interested in seeing refs/remotes/origin/HEAD, and used with
145 + "--head" because the user does not want HEAD to be filtered out,
146 + i.e. "git show-ref --head --verify HEAD", did not work as expected.
147
217 - Retire long unused/unmaintained gitview from the contrib/ area.
148 + Will merge to 'next'.
149
150
220 -* sb/submodule-cleanup-export-git-dir-env (2017-01-07) 1 commit
221 - (merged to 'next' on 2017-01-10 at 2d5db6821e)
222 - + submodule.c: use GIT_DIR_ENVIRONMENT consistently
151 +* bc/use-asciidoctor-opt (2017-01-23) 7 commits
152 + - Makefile: add a knob to enable the use of Asciidoctor
153 + - Documentation: move dblatex arguments into variable
154 + - Documentation: add XSLT to fix DocBook for Texinfo
155 + - Documentation: sort sources for gitman.texi
156 + - Documentation: remove unneeded argument in cat-texi.perl
157 + - Documentation: modernize cat-texi.perl
158 + - Documentation: fix warning in cat-texi.perl
159
224 - Code cleanup.
160 + Asciidoctor, an alternative reimplementation of AsciiDoc, still
161 + needs some changes to work with documents meant to be formatted
162 + with AsciiDoc. "make USE_ASCIIDOCTOR=YesPlease" to use it out of
163 + the box to document our pages is getting closer to reality.
164
165
227 -* sb/submodule-rm-absorb (2016-12-27) 4 commits
228 - (merged to 'next' on 2017-01-10 at 1fc2000a92)
229 - + rm: absorb a submodules git dir before deletion
230 - + submodule: rename and add flags to ok_to_remove_submodule
231 - + submodule: modernize ok_to_remove_submodule to use argv_array
232 - + submodule.h: add extern keyword to functions
166 +* ls/travis-p4-on-macos (2017-01-23) 1 commit
167 + (merged to 'next' on 2017-01-23 at 2d51987faa)
168 + + travis-ci: fix Perforce install on macOS
169
234 - "git rm" used to refuse to remove a submodule when it has its own
235 - git repository embedded in its working tree. It learned to move
236 - the repository away to $GIT_DIR/modules/ of the superproject
237 - instead, and allow the submodule to be deleted (as long as there
238 - will be no loss of local modifications, that is).
170 + Update the definition of the MacOSX test environment used by
171 + TravisCI.
172
173 + Will merge to 'master'.
174
241 -* sb/unpack-trees-cleanup (2017-01-10) 3 commits
242 - (merged to 'next' on 2017-01-10 at 95a5f3127c)
243 - + unpack-trees: factor progress setup out of check_updates
244 - + unpack-trees: remove unneeded continue
245 - + unpack-trees: move checkout state into check_updates
175
247 - Code cleanup.
176 +* rs/qsort-s (2017-01-23) 5 commits
177 + - ref-filter: use QSORT_S in ref_array_sort()
178 + - string-list: use QSORT_S in string_list_sort()
179 + - perf: add basic sort performance test
180 + - add QSORT_S
181 + - compat: add qsort_s()
182 +
183 + A few codepaths had to rely on a global variable when sorting
184 + elements of an array because sort(3) API does not allow extra data
185 + to be passed to the comparison function. Use qsort_s() when
186 + natively available, and a fallback implementation of it when not,
187 + to eliminate the need, which is a prerequisite for making the
188 + codepath reentrant.
189 +
190 + Will merge to 'next'.
191 +
192 +--------------------------------------------------
193 +[Stalled]
194 +
195 +* jc/diff-b-m (2015-02-23) 5 commits
196 + . WIPWIP
197 + . WIP: diff-b-m
198 + - diffcore-rename: allow easier debugging
199 + - diffcore-rename.c: add locate_rename_src()
200 + - diffcore-break: allow debugging
201
202 + "git diff -B -M" produced incorrect patch when the postimage of a
203 + completely rewritten file is similar to the preimage of a removed
204 + file; such a resulting file must not be expressed as a rename from
205 + other place.
206
250 -* sp/cygwin-build-fixes (2017-01-09) 2 commits
251 - (merged to 'next' on 2017-01-10 at 2010fb6c03)
252 - + Makefile: put LIBS after LDFLAGS for imap-send
253 - + Makefile: POSIX windres
207 + The fix in this patch is broken, unfortunately.
208
255 - Build updates for Cygwin.
209 + Will discard.
210
211 --------------------------------------------------
258 -[New Topics]
212 +[Cooking]
213
214 * jk/coding-guidelines-update (2017-01-17) 1 commit
261 - - CodingGuidelines: clarify multi-line brace style
215 + (merged to 'next' on 2017-01-23 at 8c57afa288)
216 + + CodingGuidelines: clarify multi-line brace style
217
218 Developer doc update.
219
265 - Will merge to 'next'.
220 + Will merge to 'master'.
221
222
223 * jk/fsck-connectivity-check-fix (2017-01-17) 6 commits
269 - - fsck: check HAS_OBJ more consistently
270 - - fsck: do not fallback "git fsck <bogus>" to "git fsck"
271 - - fsck: tighten error-checks of "git fsck <head>"
272 - - fsck: prepare dummy objects for --connectivity-check
273 - - fsck: report trees as dangling
274 - - t1450: clean up sub-objects in duplicate-entry test
224 + (merged to 'next' on 2017-01-23 at e8e9b76b84)
225 + + fsck: check HAS_OBJ more consistently
226 + + fsck: do not fallback "git fsck <bogus>" to "git fsck"
227 + + fsck: tighten error-checks of "git fsck <head>"
228 + + fsck: prepare dummy objects for --connectivity-check
229 + + fsck: report trees as dangling
230 + + t1450: clean up sub-objects in duplicate-entry test
231
232 "git fsck --connectivity-check" was not working at all.
233
278 - Will merge to 'next'.
234 + Will merge to 'master'.
235
236
237 * js/exec-path-coverity-workaround (2017-01-09) 2 commits
282 - - git_exec_path: do not return the result of getenv()
283 - - git_exec_path: avoid Coverity warning about unfree()d result
238 + (merged to 'next' on 2017-01-23 at bf5dfbf860)
239 + + git_exec_path: do not return the result of getenv()
240 + + git_exec_path: avoid Coverity warning about unfree()d result
241
242 Code cleanup.
243
287 - Will merge to 'next'.
244 + Will merge to 'master'.
245 Split out of another topic.
246
247
248 * js/mingw-isatty (2017-01-18) 1 commit
292 - - mingw: follow-up to "replace isatty() hack"
249 + (merged to 'next' on 2017-01-23 at ae0f80e058)
250 + + mingw: follow-up to "replace isatty() hack"
251
252 An update to a topic that is already in 'master'.
253
296 - Will merge to 'next'.
254 + Will merge to 'master'.
255
256
257 * js/sequencer-i-countdown-3 (2017-01-17) 38 commits
@@ -339,18 +297,18 @@ of the repositories listed at
297 The sequencer machinery has been further enhanced so that a later
298 set of patches can start using it to reimplement "rebase -i".
299
342 - I think I've said everything that needs to be said on this topic;
343 - will wait for a few days and merge it to 'next', perhaps early next
344 - week.
300 + Will merge to 'next'.
301 + I think I've said everything that needs to be said on this topic.
302
303
304 * jk/clear-delta-base-cache-fix (2017-01-19) 1 commit
348 - - clear_delta_base_cache(): don't modify hashmap while iterating
305 + (merged to 'next' on 2017-01-23 at 5f4af2b0a5)
306 + + clear_delta_base_cache(): don't modify hashmap while iterating
307
308 A crashing bug introduced in v2.11 timeframe has been found (it is
309 triggerable only in fast-import) and fixed.
310
353 - Will merge to 'next'.
311 + Will merge to 'master'.
312
313
314 * jk/describe-omit-some-refs (2017-01-19) 6 commits
@@ -371,8 +329,9 @@ of the repositories listed at
329
330
331 * js/remote-rename-with-half-configured-remote (2017-01-19) 2 commits
374 - - remote rename: more carefully determine whether a remote is configured
375 - - remote rename: demonstrate a bogus "remote exists" bug
332 + (merged to 'next' on 2017-01-23 at a1b655dbac)
333 + + remote rename: more carefully determine whether a remote is configured
334 + + remote rename: demonstrate a bogus "remote exists" bug
335
336 With anticipatory tweaking for remotes defined in ~/.gitconfig
337 (e.g. "remote.origin.prune" set to true, even though there may or
@@ -380,55 +339,27 @@ of the repositories listed at
339 repository), "git remote rename" and other commands misinterpreted
340 and behaved as if such a non-existing remote actually existed.
341
383 - Will merge to 'next'.
342 + Will merge to 'master'.
343
344
345 * sb/in-core-index-doc (2017-01-19) 4 commits
387 - - documentation: retire unfinished documentation
388 - - cache.h: document add_[file_]to_index
389 - - cache.h: document remove_index_entry_at
390 - - cache.h: document index_name_pos
346 + (merged to 'next' on 2017-01-23 at 30224463e8)
347 + + documentation: retire unfinished documentation
348 + + cache.h: document add_[file_]to_index
349 + + cache.h: document remove_index_entry_at
350 + + cache.h: document index_name_pos
351
352 Documentation and in-code comments updates.
353
394 - Will merge to 'next'.
354 + Will merge to 'master'.
355
356
357 * sb/retire-convert-objects-from-contrib (2017-01-19) 1 commit
398 - - contrib: remove git-convert-objects
358 + (merged to 'next' on 2017-01-23 at decc1e237d)
359 + + contrib: remove git-convert-objects
360
361 Remove an ancient tool left in contrib/.
362
402 - Will merge to 'next'.
403 -
404 ---------------------------------------------------
405 -[Stalled]
406 -
407 -* jc/diff-b-m (2015-02-23) 5 commits
408 - . WIPWIP
409 - . WIP: diff-b-m
410 - - diffcore-rename: allow easier debugging
411 - - diffcore-rename.c: add locate_rename_src()
412 - - diffcore-break: allow debugging
413 -
414 - "git diff -B -M" produced incorrect patch when the postimage of a
415 - completely rewritten file is similar to the preimage of a removed
416 - file; such a resulting file must not be expressed as a rename from
417 - other place.
418 -
419 - The fix in this patch is broken, unfortunately.
420 -
421 - Will discard.
422 -
423 ---------------------------------------------------
424 -[Cooking]
425 -
426 -* bw/read-blob-data-does-not-modify-index-state (2017-01-11) 1 commit
427 - (merged to 'next' on 2017-01-18 at f33363fb07)
428 - + index: improve constness for reading blob data
429 -
430 - Code clean-up.
431 -
363 Will merge to 'master'.
364
365
@@ -443,16 +374,6 @@ of the repositories listed at
374 cf. <CA+EOSB=4-TKpi6mr-yVbwRsFrVzE=vo4Y9Qm3VMm7pn=UB1_hQ@mail.gmail.com>
375
376
446 -* jk/grep-e-could-be-extended-beyond-posix (2017-01-11) 1 commit
447 - (merged to 'next' on 2017-01-18 at dd1b9d1fa8)
448 - + t7810: avoid assumption about invalid regex syntax
449 -
450 - Tighten a test to avoid mistaking an extended ERE regexp engine as
451 - a PRE regexp engine.
452 -
453 - Will merge to 'master'.
454 -
455 -
377 * jk/vreport-sanitize (2017-01-11) 2 commits
378 (merged to 'next' on 2017-01-18 at 4bbf370981)
379 + vreport: sanitize ASCII control chars
@@ -482,16 +403,6 @@ of the repositories listed at
403 cf. <CAGZ79kaHDnVLQr8WLoaD5KKs7EqeW=KbkptF=iHpU5t054Xcdw@mail.gmail.com>
404
405
485 -* sb/submodule-config-tests (2017-01-12) 2 commits
486 - (merged to 'next' on 2017-01-18 at bd850f6ad3)
487 - + t7411: test lookup of uninitialized submodules
488 - + t7411: quote URLs
489 -
490 - Test updates.
491 -
492 - Will merge to 'master'.
493 -
494 -
406 * sb/submodule-doc (2017-01-12) 3 commits
407 - submodules: add a background story
408 - submodule update documentation: don't repeat ourselves
@@ -500,47 +411,10 @@ of the repositories listed at
411 Needs review.
412
413
503 -* sb/submodule-embed-gitdir (2017-01-12) 1 commit
504 - (merged to 'next' on 2017-01-18 at 0a5e24a3f0)
505 - + submodule absorbgitdirs: mention in docstring help
506 -
507 - Help-text fix.
508 -
509 - Will merge to 'master'.
510 -
511 -
512 -* sb/submodule-init (2017-01-12) 1 commit
513 - (merged to 'next' on 2017-01-18 at 2e8a38b1cc)
514 - + submodule update --init: display correct path from submodule
515 -
516 - Error message fix.
517 -
518 - Will merge to 'master'.
519 -
520 -
521 -* vn/diff-ihc-config (2017-01-12) 1 commit
522 - (merged to 'next' on 2017-01-18 at ac4915dbe6)
523 - + diff: add interhunk context config option
524 -
525 - "git diff" learned diff.interHunkContext configuration variable
526 - that gives the default value for its --inter-hunk-context option.
527 -
528 - Will merge to 'master'.
529 -
530 -
531 -* ad/bisect-terms (2017-01-13) 1 commit
532 - (merged to 'next' on 2017-01-18 at 9f500d6cf5)
533 - + Documentation/bisect: improve on (bad|new) and (good|bad)
534 -
535 - Documentation fix.
536 -
537 - Will merge to 'master'.
538 -
539 -
540 -* bw/attr (2017-01-15) 27 commits
414 +* bw/attr (2017-01-23) 27 commits
415 - attr: reformat git_attr_set_direction() function
416 - attr: push the bare repo check into read_attr()
543 - - attr: store attribute stacks in hashmap
417 + - attr: store attribute stack in attr_check structure
418 - attr: tighten const correctness with git_attr and match_attr
419 - attr: remove maybe-real, maybe-macro from git_attr
420 - attr: eliminate global check_all_attr array
@@ -569,38 +443,20 @@ of the repositories listed at
443 The gitattributes machinery is being taught to work better in a
444 multi-threaded environment.
445
572 - Needs review.
446 + Expecting a reroll.
447
448
449 * jk/loose-object-fsck (2017-01-15) 6 commits
576 - - fsck: detect trailing garbage in all object types
577 - - fsck: parse loose object paths directly
578 - - sha1_file: add read_loose_object() function
579 - - t1450: test fsck of packed objects
580 - - sha1_file: fix error message for alternate objects
581 - - t1450: refactor loose-object removal
450 + (merged to 'next' on 2017-01-23 at 4302ad090d)
451 + + fsck: detect trailing garbage in all object types
452 + + fsck: parse loose object paths directly
453 + + sha1_file: add read_loose_object() function
454 + + t1450: test fsck of packed objects
455 + + sha1_file: fix error message for alternate objects
456 + + t1450: refactor loose-object removal
457
458 "git fsck" inspects loose objects more carefully now.
459
585 - Will merge to 'next'.
586 -
587 -
588 -* rh/diff-orderfile-doc (2017-01-15) 2 commits
589 - (merged to 'next' on 2017-01-18 at cc2af9c628)
590 - + diff: document the format of the -O (diff.orderFile) file
591 - + diff: document behavior of relative diff.orderFile
592 -
593 - Documentation fix.
594 -
595 - Will merge to 'master'.
596 -
597 -
598 -* sb/cd-then-git-can-be-written-as-git-c (2017-01-13) 1 commit
599 - (merged to 'next' on 2017-01-18 at 8923d2d001)
600 - + lib-submodule-update.sh: reduce use of subshell by using "git -C"
601 -
602 - Test clean-up.
603 -
460 Will merge to 'master'.
461
462
@@ -616,15 +472,6 @@ of the repositories listed at
472 being discussed.
473
474
619 -* ws/request-pull-code-cleanup (2017-01-15) 1 commit
620 - (merged to 'next' on 2017-01-18 at dfcb1405de)
621 - + request-pull: drop old USAGE stuff
622 -
623 - Code clean-up.
624 -
625 - Will merge to 'master'.
626 -
627 -
475 * mh/ref-remove-empty-directory (2017-01-07) 23 commits
476 - files_transaction_commit(): clean up empty directories
477 - try_remove_empty_parents(): teach to remove parents of reflogs, too
@@ -723,14 +570,15 @@ of the repositories listed at
570
571
572 * bw/push-submodule-only (2016-12-20) 3 commits
726 - - push: add option to push only submodules
727 - - submodules: add RECURSE_SUBMODULES_ONLY value
728 - - transport: reformat flag #defines to be more readable
573 + (merged to 'next' on 2017-01-23 at d6cd1c60ae)
574 + + push: add option to push only submodules
575 + + submodules: add RECURSE_SUBMODULES_ONLY value
576 + + transport: reformat flag #defines to be more readable
577
578 "git submodule push" learned "--recurse-submodules=only option to
579 push submodules out without pushing the top-level superproject.
580
733 - Will merge to 'next'.
581 + Will merge to 'master'.
582
583
584 * ls/p4-path-encoding (2016-12-18) 1 commit
@@ -745,13 +593,14 @@ of the repositories listed at
593
594
595 * js/difftool-builtin (2017-01-19) 3 commits
748 - - difftool: retire the scripted version
749 - - difftool: implement the functionality in the builtin
750 - - difftool: add a skeleton for the upcoming builtin
596 + (merged to 'next' on 2017-01-23 at 6f4810dbd9)
597 + + difftool: retire the scripted version
598 + + difftool: implement the functionality in the builtin
599 + + difftool: add a skeleton for the upcoming builtin
600
601 Rewrite a scripted porcelain "git difftool" in C.
602
754 - Will merge to 'next'.
603 + Will merge to 'master'.
604
605
606 * sb/push-make-submodule-check-the-default (2016-11-29) 2 commits
@@ -846,35 +695,17 @@ of the repositories listed at
695
696
697 * st/verify-tag (2017-01-18) 6 commits
849 - - t/t7004-tag: Add --format specifier tests
850 - - t/t7030-verify-tag: Add --format specifier tests
851 - - builtin/tag: add --format argument for tag -v
852 - - builtin/verify-tag: add --format to verify-tag
853 - - ref-filter: add function to print single ref_array_item
854 - - gpg-interface, tag: add GPG_VERIFY_OMIT_STATUS flag
698 + (merged to 'next' on 2017-01-23 at 2810959427)
699 + + t/t7004-tag: Add --format specifier tests
700 + + t/t7030-verify-tag: Add --format specifier tests
701 + + builtin/tag: add --format argument for tag -v
702 + + builtin/verify-tag: add --format to verify-tag
703 + + ref-filter: add function to print single ref_array_item
704 + + gpg-interface, tag: add GPG_VERIFY_OMIT_STATUS flag
705
706 "git tag" and "git verify-tag" learned to put GPG verification
707 status in their "--format=<placeholders>" output format.
708
859 - Will merge to 'next'.
860 -
861 -
862 -* sg/fix-versioncmp-with-common-suffix (2017-01-12) 8 commits
863 - (merged to 'next' on 2017-01-18 at f79c24a291)
864 - + versioncmp: generalize version sort suffix reordering
865 - + versioncmp: factor out helper for suffix matching
866 - + versioncmp: use earliest-longest contained suffix to determine sorting order
867 - + versioncmp: cope with common part overlapping with prerelease suffix
868 - + versioncmp: pass full tagnames to swap_prereleases()
869 - + t7004-tag: add version sort tests to show prerelease reordering issues
870 - + t7004-tag: use test_config helper
871 - + t7004-tag: delete unnecessary tags with test_when_finished
872 -
873 - The prereleaseSuffix feature of version comparison that is used in
874 - "git tag -l" did not correctly when two or more prereleases for the
875 - same release were present (e.g. when 2.0, 2.0-beta1, and 2.0-beta2
876 - are there and the code needs to compare 2.0-beta1 and 2.0-beta2).
877 -
709 Will merge to 'master'.
710
711