Eighth batch for 2.14

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Junio C Hamano committed Jun 13, 2017 at 13:52 UTC a393b0a4ceb7ce4472370660dcea79cfff67a2a9
1 file changed +21 -14
Documentation/RelNotes/2.14.0.txt
+21 -14
@@ -67,6 +67,9 @@ UI, Workflows & Features
67 * Make the "indent" heuristics the default in "diff" and diff.indentHeuristics
68 configuration variable an escape hatch for those who do no want it.
69
70 + * Many commands learned to pay attention to submodule.recurse
71 + configuration.
72 +
73
74 Performance, Internal Implementation, Development Support etc.
75
@@ -129,6 +132,20 @@ Performance, Internal Implementation, Development Support etc.
132 * The internal logic used in "git blame" has been libified to make it
133 easier to use by cgit.
134
135 + * Our code often opens a path to an optional file, to work on its
136 + contents when we can successfully open it. We can ignore a failure
137 + to open if such an optional file does not exist, but we do want to
138 + report a failure in opening for other reasons (e.g. we got an I/O
139 + error, or the file is there, but we lack the permission to open).
140 +
141 + The exact errors we need to ignore are ENOENT (obviously) and
142 + ENOTDIR (less obvious). Instead of repeating comparison of errno
143 + with these two constants, introduce a helper function to do so.
144 +
145 + * We often try to open a file for reading whose existence is
146 + optional, and silently ignore errors from open/fopen; report such
147 + errors if they are not due to missing files.
148 +
149
150 Also contains various documentation updates and code clean-ups.
151
@@ -176,7 +193,6 @@ notes for details).
193
194 * "git checkout --recurse-submodules" did not quite work with a
195 submodule that itself has submodules.
179 - (merge 218c883783 sb/checkout-recurse-submodules later to maint).
196
197 * Plug some leaks and updates internal API used to implement the
198 split index feature to make it easier to avoid such a leak in the
@@ -203,7 +219,6 @@ notes for details).
219 checked out with eol=LF even on Windows.
220
221 * Introduce the BUG() macro to improve die("BUG: ...").
206 - (merge 3d7dd2d3b6 jk/bug-to-abort later to maint).
222
223 * Clarify documentation for include.path and includeIf.<condition>.path
224 configuration variables.
@@ -249,17 +264,14 @@ notes for details).
264
265 * The "run-command" API implementation has been made more robust
266 against dead-locking in a threaded environment.
252 - (merge e3f43ce765 bw/forking-and-threading later to maint).
267
268 * A recent update to t5545-push-options.sh started skipping all the
269 tests in the script when a web server testing is disabled or
270 unavailable, not just the ones that require a web server. Non HTTP
271 tests have been salvaged to always run in this script.
258 - (merge 2e397e4ddf jc/skip-test-in-the-middle later to maint).
272
273 * "git send-email" now uses Net::SMTP::SSL, which is obsolete, only
274 when needed. Recent versions of Net::SMTP can do TLS natively.
262 - (merge bfbfc9a953 dk/send-email-avoid-net-smtp-ssl-when-able later to maint).
275
276 * "foo\bar\baz" in "git fetch foo\bar\baz", even though there is no
277 slashes in it, cannot be a nickname for a remote on Windows, as
@@ -269,7 +281,6 @@ notes for details).
281 even though the command should not lose ignored ones without "-x".
282 "git status --ignored" did not list ignored and untracked files
283 without "-uall". These have been corrected.
272 - (merge 6b1db43109 sl/clean-d-ignored-fix later to maint).
284
285 * The result from "git diff" that compares two blobs, e.g. "git diff
286 $commit1:$path $commit2:$path", used to be shown with the full
@@ -291,16 +302,12 @@ notes for details).
302 closed, to help Windows, on which a stale timestamp is reported by
303 fstat() on a file that is opened for writing and data was written
304 but not yet closed.
294 - (merge 9f41c7a6b3 jh/close-index-before-stat later to maint).
305
306 * "git pull --rebase --autostash" didn't auto-stash when the local history
307 fast-forwards to the upstream.
298 - (merge f15e7cf5cc tb/pull-ff-rebase-autostash later to maint).
308 +
309 + * A flaky test has been corrected.
310 + (merge 7c2115aa07 jk/pack-idx-corruption-safety later to maint).
311
312 * Other minor doc, test and build updates and code cleanups.
301 - (merge c5a9157393 jh/memihash-opt later to maint).
302 - (merge 44e2ff09ce ab/t3070-test-dedup later to maint).
303 - (merge 9ee4aa95db rf/completion-config-commit later to maint).
304 - (merge ef4fe5617e jk/connect-symref-info-leak-fix later to maint).
305 - (merge a56eea28c4 jk/drop-free-refspecs later to maint).
306 - (merge 0c79cee697 ad/pull-remote-doc later to maint).
313 + (merge 8ba74bfd7c jc/diff-tree-stale-comment later to maint).