Merge branch 'jk/test-httpd-config-nosystem'
[git] / Documentation / RelNotes / 2.9.0.txt
1 Git 2.9 Release Notes
2 =====================
3
4 Backward compatibility note
5 ---------------------------
6
7 The end-user facing Porcelain level commands in the "git diff" and
8 "git log" by default enables the rename detection; you can still use
9 "diff.renames" configuration variable to disable this.
10
11
12 Updates since v2.8
13 ------------------
14
15 UI, Workflows & Features
16
17  * The end-user facing Porcelain level commands like "diff" and "log"
18    now enables the rename detection by default.
19
20  * The credential.helper configuration variable is cumulative and
21    there is no good way to override it from the command line.  As
22    a special case, giving an empty string as its value now serves
23    as the signal to clear the values specified in various files.
24
25  * A new "interactive.diffFilter" configuration can be used to
26    customize the diff shown in "git add -i" session.
27
28
29 Performance, Internal Implementation, Development Support etc.
30
31  * The embedded args argv-array in the child process is used to build
32    the command line to run pack-objects instead of using a separate
33    array of strings.
34    (merge 65a3629 mp/upload-pack-use-embedded-args later to maint).
35
36  * A test for tags has been restructured so that more parts of it can
37    easily be run on a platform without a working GnuPG.
38    (merge 618310a es/test-gpg-tags later to maint).
39
40  * The startup_info data, which records if we are working inside a
41    repository (among other things), are now uniformly available to Git
42    subcommand implementations, and Git avoids attempting to touch
43    references when we are not in a repository.
44    (merge 11e6b3f jk/startup-info later to maint).
45
46
47 Also contains various documentation updates and code clean-ups.
48
49
50 Fixes since v2.8
51 ----------------
52
53 Unless otherwise noted, all the fixes since v2.8 in the maintenance
54 track are contained in this release (see the maintenance releases'
55 notes for details).
56
57  * "git config --get-urlmatch", unlike other variants of the "git
58    config --get" family, did not signal error with its exit status
59    when there was no matching configuration.
60    (merge 24990b2 jk/config-get-urlmatch later to maint).
61
62  * The "--local-env-vars" and "--resolve-git-dir" options of "git
63    rev-parse" failed to work outside a repository when the command's
64    option parsing was rewritten in 1.8.5 era.
65    (merge fc7d47f jk/rev-parse-local-env-vars later to maint).
66
67  * "git index-pack --keep[=<msg>] pack-$name.pack" simply did not work.
68    (merge 0e94242 jc/maint-index-pack-keep later to maint).
69
70  * Fetching of history by naming a commit object name directly didn't
71    work across remote-curl transport.
72    (merge 754ecb1 gf/fetch-pack-direct-object-fetch later to maint).
73
74  * A small memory leak in an error codepath has been plugged in xdiff
75    code.
76    (merge 87f1625 rj/xdiff-prepare-plug-leak-on-error-codepath later to maint).
77
78  * strbuf_getwholeline() did not NUL-terminate the buffer on certain
79    corner cases in its error codepath.
80    (merge b709043 jk/getwholeline-getdelim-empty later to maint).
81
82  * Other minor clean-ups and documentation updates
83    (merge aed7480 mm/lockfile-error-message later to maint).
84    (merge bfee614 jc/index-pack later to maint).