A few more topics before 2.14-rc1
authorJunio C Hamano <gitster@pobox.com>
Tue, 18 Jul 2017 19:52:49 +0000 (12:52 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 18 Jul 2017 19:52:49 +0000 (12:52 -0700)
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/RelNotes/2.14.0.txt
index 60595ba0be8b7f262efac33bd96cd0bc1260da2e..2f3879fe96f908f075022a037de46f7bc4a66765 100644 (file)
@@ -1,7 +1,7 @@
 Git 2.14 Release Notes
 ======================
 
 Git 2.14 Release Notes
 ======================
 
-Backward compatibility notes.
+Backward compatibility notes and other notable changes.
 
  * Use of an empty string as a pathspec element that is used for
    'everything matches' is still warned and Git asks users to use a
 
  * Use of an empty string as a pathspec element that is used for
    'everything matches' is still warned and Git asks users to use a
@@ -22,6 +22,12 @@ Backward compatibility notes.
    diff output has finished, and the "indent heuristics" has now
    become the default.
 
    diff output has finished, and the "indent heuristics" has now
    become the default.
 
+ * Git can now be built with PCRE v2 instead of v1 of the PCRE
+   library. Replace USE_LIBPCRE=YesPlease with USE_LIBPCRE2=YesPlease
+   in existing build scripts to build against the new version.  As the
+   upstream PCRE maintainer has abandoned v1 maintenance for all but
+   the most critical bug fixes, use of v2 is recommended.
+
 
 Updates since v2.13
 -------------------
 
 Updates since v2.13
 -------------------
@@ -53,16 +59,16 @@ UI, Workflows & Features
    when the $sha1 names an object at the tip of an advertised ref,
    even when the other side hasn't enabled allowTipSHA1InWant.
 
    when the $sha1 names an object at the tip of an advertised ref,
    even when the other side hasn't enabled allowTipSHA1InWant.
 
- * The recently introduced "[includeIf "gitdir:$dir"] path=..."
-   mechanism has further been taught to take symlinks into account.
-   The directory "$dir" specified in "gitdir:$dir" may be a symlink to
-   a real location, not something that $(getcwd) may return.  In such
-   a case, a realpath of "$dir" is compared with the real path of the
-   current repository to determine if the contents from the named path
-   should be included.
+ * The "[includeIf "gitdir:$dir"] path=..." mechanism introduced in
+   2.13.0 would canonicalize the path of the gitdir being matched,
+   and did not match e.g. "gitdir:~/work/*" against a repo in
+   "~/work/main" if "~/work" was a symlink to "/mnt/storage/work".
+   Now we match both the resolved canonical path and what "pwd" would
+   show. The include will happen if either one matches.
 
 
- * Make the "indent" heuristics the default in "diff" and diff.indentHeuristics
-   configuration variable an escape hatch for those who do no want it.
+ * The "indent" heuristics is now the default in "diff". The
+   diff.indentHeuristic configuration variable can be set to "false"
+   for those who do not want it.
 
  * Many commands learned to pay attention to submodule.recurse
    configuration.
 
  * Many commands learned to pay attention to submodule.recurse
    configuration.
@@ -91,8 +97,8 @@ UI, Workflows & Features
    would appear as a not-quite-initialized submodule to others.  We
    learned to give warnings when this happens.
 
    would appear as a not-quite-initialized submodule to others.  We
    learned to give warnings when this happens.
 
- * "git status" learned to optionally give how many stash entries the
-   user has in its output.
+ * "git status" learned to optionally give how many stash entries there
+   are in its output.
 
  * "git status" has long shown essentially the same message as "git
    commit"; the message it gives while preparing for the root commit,
 
  * "git status" has long shown essentially the same message as "git
    commit"; the message it gives while preparing for the root commit,
@@ -101,9 +107,9 @@ UI, Workflows & Features
    (rather than the commit the user is preparing for, which is more in
    line with the focus of "git commit").
 
    (rather than the commit the user is preparing for, which is more in
    line with the focus of "git commit").
 
- * "git send-email" learned to overcome some SMTP server limitation
-   that does not allow many pieces of e-mails to be sent over a single
-   session.
+ * "git send-email" now has --batch-size and --relogin-delay options
+    which can be used to overcome limitations on SMTP servers that
+    restrict on how many of e-mails can be sent in a single session.
 
  * An old message shown in the commit log template was removed, as it
    has outlived its usefulness.
 
  * An old message shown in the commit log template was removed, as it
    has outlived its usefulness.
@@ -425,19 +431,17 @@ notes for details).
  * A recent regression in "git rebase -i" has been fixed and tests
    that would have caught it and others have been added.
 
  * A recent regression in "git rebase -i" has been fixed and tests
    that would have caught it and others have been added.
 
- * An unaligned 32-bit access in pack-bitmap code ahs been corrected.
+ * An unaligned 32-bit access in pack-bitmap code has been corrected.
 
  * Tighten error checks for invalid "git apply" input.
 
 
  * Tighten error checks for invalid "git apply" input.
 
- * The split index code did not honor core.sharedrepository setting
+ * The split index code did not honor core.sharedRepository setting
    correctly.
 
  * The Makefile rule in contrib/subtree for building documentation
    learned to honour USE_ASCIIDOCTOR just like the main documentation
    set does.
 
    correctly.
 
  * The Makefile rule in contrib/subtree for building documentation
    learned to honour USE_ASCIIDOCTOR just like the main documentation
    set does.
 
- * Update the sha1dc again to fix portability glitches.
-
  * Code clean-up to fix possible buffer over-reading.
    (merge 2d105451c0 rs/apply-avoid-over-reading later to maint).
 
  * Code clean-up to fix possible buffer over-reading.
    (merge 2d105451c0 rs/apply-avoid-over-reading later to maint).
 
@@ -461,6 +465,28 @@ notes for details).
    Git with address sanitizer more easily.
    (merge 566cf0b3bd jk/build-with-asan later to maint).
 
    Git with address sanitizer more easily.
    (merge 566cf0b3bd jk/build-with-asan later to maint).
 
+ * On Cygwin, similar to Windows, "git push //server/share/repository"
+   ought to mean a repository on a network share that can be accessed
+   locally, but this did not work correctly due to stripping the double
+   slashes at the beginning.
+   (merge 496f256989 tb/push-to-cygwin-unc-path later to maint).
+
+ * The progress meter did not give a useful output when we haven't had
+   0.5 seconds to measure the throughput during the interval.  Instead
+   show the overall throughput rate at the end, which is a much more
+   useful number.
+   (merge 0fae1e072a rs/progress-overall-throughput-at-the-end later to maint).
+
+ * Code clean-up, that makes us in sync with Debian by one patch.
+   (merge 8db1ae5740 jn/hooks-pre-rebase-sample-fix later to maint).
+
+ * We run an early part of "git gc" that deals with refs before
+   daemonising (and not under lock) even when running a background
+   auto-gc, which caused multiple gc processes attempting to run the
+   early part at the same time.  This is now prevented by running the
+   early part also under the GC lock.
+   (merge c45af94dbc jk/gc-pre-detach-under-hook later to maint).
+
  * Other minor doc, test and build updates and code cleanups.
    (merge 3f9c637ec7 pw/unquote-path-in-git-pm later to maint).
    (merge 5053313562 rs/urlmatch-cleanup later to maint).
  * Other minor doc, test and build updates and code cleanups.
    (merge 3f9c637ec7 pw/unquote-path-in-git-pm later to maint).
    (merge 5053313562 rs/urlmatch-cleanup later to maint).