summaryrefslogtreecommitdiff
path: root/Documentation/RelNotes/2.14.0.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/RelNotes/2.14.0.txt')
-rw-r--r--Documentation/RelNotes/2.14.0.txt98
1 files changed, 78 insertions, 20 deletions
diff --git a/Documentation/RelNotes/2.14.0.txt b/Documentation/RelNotes/2.14.0.txt
index 60595ba0be..6544e7f82a 100644
--- a/Documentation/RelNotes/2.14.0.txt
+++ b/Documentation/RelNotes/2.14.0.txt
@@ -1,7 +1,7 @@
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
@@ -22,6 +22,12 @@ Backward compatibility notes.
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
-------------------
@@ -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.
- * 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.
@@ -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.
- * "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,
@@ -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").
- * "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.
@@ -111,6 +117,11 @@ UI, Workflows & Features
* "git pull --rebase --recurse-submodules" learns to rebase the
branch in the submodules to an updated base.
+ * "git log" learned -P as a synonym for --perl-regexp, "git grep"
+ already had such a synonym.
+
+ * "git log" didn't understand --regexp-ignore-case when combined with
+ --perl-regexp. This has been fixed.
Performance, Internal Implementation, Development Support etc.
@@ -224,6 +235,27 @@ Performance, Internal Implementation, Development Support etc.
behaviour of the comparison function can be specified at the time a
hashmap is initialized.
+ * The "collision detecting" SHA-1 implementation shipped with 2.13 is
+ now integrated into git.git as a submodule (the first submodule to
+ ship with git.git). Clone git.git with --recurse-submodules to get
+ it. For now a non-submodule copy of the same code is also shipped
+ as part of the tree.
+
+ * A recent update made it easier to use "-fsanitize=" option while
+ compiling but supported only one sanitize option. Allow more than
+ one to be combined, joined with a comma, like "make SANITIZE=foo,bar".
+
+ * Use "p4 -G" to make "p4 changes" output more Python-friendly
+ to parse.
+
+ * We started using "%" PRItime, imitating "%" PRIuMAX and friends, as
+ a way to format the internal timestamp value, but this does not
+ play well with gettext(1) i18n framework, and causes "make pot"
+ that is run by the l10n coordinator to create a broken po/git.pot
+ file. This is a possible workaround for that problem.
+
+ * It turns out that Cygwin also needs the fopen() wrapper that
+ returns failure when a directory is opened for reading.
Also contains various documentation updates and code clean-ups.
@@ -425,19 +457,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.
- * 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.
- * 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.
- * 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).
@@ -459,7 +489,32 @@ notes for details).
* The build procedure has been improved to allow building and testing
Git with address sanitizer more easily.
- (merge 566cf0b3bd jk/build-with-asan later to maint).
+ (merge 425ca6710b 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).
+
+ * A recent update broke an alias that contained an uppercase letter.
+ (merge 643df7e234 js/alias-case-sensitivity later to maint).
* Other minor doc, test and build updates and code cleanups.
(merge 3f9c637ec7 pw/unquote-path-in-git-pm later to maint).
@@ -467,3 +522,6 @@ notes for details).
(merge 42c78a216e rs/use-div-round-up later to maint).
(merge 5e8d2729ae rs/wt-status-cleanup later to maint).
(merge 01826066b0 ks/fix-rebase-doc-picture later to maint).
+ (merge f7f6dc340e jk/test-copy-bytes-fix later to maint).
+ (merge 9fb9495dae ew/fd-cloexec-fix later to maint).
+ (merge 3a33fe5c97 ks/doc-fixes later to maint).