RelNotes: the eighth batch

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

Junio C Hamano committed Dec 6, 2017 at 09:29 UTC 95ec6b1b3393eb6e26da40c565520a8db9796e9f
1 file changed +45 -13
Documentation/RelNotes/2.16.0.txt
+45 -13
@@ -61,7 +61,6 @@ UI, Workflows & Features
61
62 * The SubmittingPatches document has been converted to produce an
63 HTML version via AsciiDoc/Asciidoctor.
64 - (merge 049e64aa50 bc/submitting-patches-in-asciidoc later to maint).
64
65 * We learned to talk to watchman to speed up "git status" and other
66 operations that need to see which paths have been modified.
@@ -90,6 +89,13 @@ UI, Workflows & Features
89 pattern" (aka "diff.*.xfuncname") to include a comment block, if
90 exists, that immediately precedes it.
91
92 + * "git config --expiry-date gc.reflogexpire" can read "2.weeks" from
93 + the configuration and report it as a timestamp, just like "--int"
94 + would read "1k" and report 1024, to help consumption by scripts.
95 +
96 + * The shell completion (in contrib/) learned that "git pull" can take
97 + the "--autostash" option.
98 +
99
100 Performance, Internal Implementation, Development Support etc.
101
@@ -130,6 +136,13 @@ Performance, Internal Implementation, Development Support etc.
136 * Drop (perhaps overly cautious) sanity check before using the index
137 read from the filesystem at runtime.
138
139 + * The build procedure has been taught to avoid some unnecessary
140 + instability in the build products.
141 +
142 + * A new mechanism to upgrade the wire protocol in place is proposed
143 + and demonstrated that it works with the older versions of Git
144 + without harming them.
145 +
146 Also contains various documentation updates and code clean-ups.
147
148
@@ -206,7 +219,6 @@ Fixes since v2.15
219 * Recent update to the refs infrastructure implementation started
220 rewriting packed-refs file more often than before; this has been
221 optimized again for most trivial cases.
209 - (merge 7c6bd25c7d mh/avoid-rewriting-packed-refs later to maint).
222
223 * Some error messages did not quote filenames shown in it, which have
224 been fixed.
@@ -226,39 +238,31 @@ Fixes since v2.15
238
239 * Clarify and enhance documentation for "merge-base --fork-point", as
240 it was clear what it computed but not why/what for.
229 - (merge 6d1700b8af jc/merge-base-fork-point-doc later to maint).
241
242 * A few scripts (both in production and tests) incorrectly redirected
243 their error output. These have been corrected.
233 - (merge eadf1c8f45 tz/redirect-fix later to maint).
244
245 * "git notes" sent its error message to its standard output stream,
246 which was corrected.
237 - (merge 89b9e31dd5 tz/notes-error-to-stderr later to maint).
247
248 * The three-way merge performed by "git cherry-pick" was confused
249 when a new submodule was added in the meantime, which has been
250 fixed (or "papered over").
242 - (merge c641ca6707 sb/test-cherry-pick-submodule-getting-in-a-way later to maint).
251
252 * The sequencer machinery (used by "git cherry-pick A..B", and "git
253 rebase -i", among other things) would have lost a commit if stopped
254 due to an unlockable index file, which has been fixed.
247 - (merge bd58886775 pw/sequencer-recover-from-unlockable-index later to maint).
255
256 * "git apply --inaccurate-eof" when used with "--ignore-space-change"
257 triggered an internal sanity check, which has been fixed.
251 - (merge 4855de1233 rs/apply-inaccurate-eof-with-incomplete-line later to maint).
258
259 * Command line completion (in contrib/) has been taught about the
260 "--copy" option of "git branch".
255 - (merge 41ca0f773e tz/complete-branch-copy later to maint).
261
262 * When "git rebase" prepared an mailbox of changes and fed it to "git
263 am" to replay them, it was confused when a stray "From " happened
264 to be in the log message of one of the replayed changes. This has
265 been corrected.
261 - (merge ae3b2b04bb ew/rebase-mboxrd later to maint).
266
267 * There was a recent semantic mismerge in the codepath to write out a
268 section of a configuration section, which has been corrected.
@@ -266,12 +270,40 @@ Fixes since v2.15
270 * Mentions of "git-rebase" and "git-am" (dashed form) still remained
271 in end-user visible strings emitted by the "git rebase" command;
272 they have been corrected.
269 - (merge 82cb775c06 ks/rebase-no-git-foo later to maint).
273
274 * Contrary to the documentation, "git pull -4/-6 other-args" did not
275 ask the underlying "git fetch" to go over IPv4/IPv6, which has been
276 corrected.
274 - (merge ffb4568afe sw/pull-ipv46-passthru later to maint).
277 +
278 + * "git checkout --recursive" may overwrite and rewind the history of
279 + the branch that happens to be checked out in submodule
280 + repositories, which might not be desirable. Detach the HEAD but
281 + still allow the recursive checkout to succeed in such a case.
282 + (merge 57f22bf997 sb/submodule-recursive-checkout-detach-head later to maint).
283 +
284 + * "git branch --set-upstream" has been deprecated and (sort of)
285 + removed, as "--set-upstream-to" is the preferred one these days.
286 + The documentation still had "--set-upstream" listed on its
287 + synopsys section, which has been corrected.
288 + (merge a060f3d3d8 tz/branch-doc-remove-set-upstream later to maint).
289 +
290 + * Internaly we use 0{40} as a placeholder object name to signal the
291 + codepath that there is no such object (e.g. the fast-forward check
292 + while "git fetch" stores a new remote-tracking ref says "we know
293 + there is no 'old' thing pointed at by the ref, as we are creating
294 + it anew" by passing 0{40} for the 'old' side), and expect that a
295 + codepath to locate an in-core object to return NULL as a sign that
296 + the object does not exist. A look-up for an object that does not
297 + exist however is quite costly with a repository with large number
298 + of packfiles. This access pattern has been optimized.
299 + (merge 87b5e236a1 jk/fewer-pack-rescan later to maint).
300 +
301 + * In addition to "git stash -m message", the command learned to
302 + accept "git stash -mmessage" form.
303 + (merge 5675473fcb ph/stash-save-m-option-fix later to maint).
304
305 * Other minor doc, test and build updates and code cleanups.
277 - (merge c5e3bc6ec4 sd/branch-copy later to maint).
306 + (merge 1a1fc2d5b5 rd/man-prune-progress later to maint).
307 + (merge 0ba014035a rd/man-reflog-add-n later to maint).
308 + (merge e54b63359f rd/doc-notes-prune-fix later to maint).
309 + (merge ff4c9b413a sp/doc-info-attributes later to maint).