Merge branch 'nd/git-common-dir-fix'
[git] / Documentation / RelNotes / 1.8.2.1.txt
1 Git v1.8.2.1 Release Notes
2 ==========================
3
4 Fixes since v1.8.2
5 ------------------
6
7  * An earlier change to the attribute system introduced at v1.8.1.2 by
8    mistake stopped a pattern "dir" (without trailing slash) from
9    matching a directory "dir" (it only wanted to allow pattern "dir/"
10    to also match).
11
12  * Verification of signed tags were not done correctly when not in C
13    or en/US locale.
14
15  * 'git commit -m "$msg"' used to add an extra newline even when
16    $msg already ended with one.
17
18  * The "--match=<pattern>" option of "git describe", when used with
19    "--all" to allow refs that are not annotated tags to be used as a
20    base of description, did not restrict the output from the command
21    to those that match the given pattern.
22
23  * An aliased command spawned from a bare repository that does not say
24    it is bare with "core.bare = yes" is treated as non-bare by mistake.
25
26  * When "format-patch" quoted a non-ascii strings on the header files,
27    it incorrectly applied rfc2047 and chopped a single character in
28    the middle of it.
29
30  * "git archive" reports a failure when asked to create an archive out
31    of an empty tree.  It would be more intuitive to give an empty
32    archive back in such a case.
33
34  * "git tag -f <tag>" always said "Updated tag '<tag>'" even when
35    creating a new tag (i.e. not overwriting nor updating).
36
37  * "git cmd -- ':(top'" was not diagnosed as an invalid syntax, and
38    instead the parser kept reading beyond the end of the string.
39
40  * Annotated tags outside refs/tags/ hierarchy were not advertised
41    correctly to the ls-remote and fetch with recent version of Git.
42
43  * The code to keep track of what directory names are known to Git on
44    platforms with case insensitive filesystems can get confused upon a
45    hash collision between these pathnames and looped forever.
46
47  * The logic used by "git diff -M --stat" to shorten the names of
48    files before and after a rename did not work correctly when the
49    common prefix and suffix between the two filenames overlapped.
50
51  * "git submodule update", when recursed into sub-submodules, did not
52    accumulate the prefix paths.
53
54  * "git am $maildir/" applied messages in an unexpected order; sort
55    filenames read from the maildir/ in a way that is more likely to
56    sort messages in the order the writing MUA meant to, by sorting
57    numeric segment in numeric order and non-numeric segment in
58    alphabetical order.
59
60  * When export-subst is used, "zip" output recorded incorrect
61    size of the file.
62
63  * Some platforms and users spell UTF-8 differently; retry with the
64    most official "UTF-8" when the system does not understand the
65    user-supplied encoding name that are the common alternative
66    spellings of UTF-8.
67
68  * "git branch" did not bother to check nonsense command line
69    parameters and issue errors in many cases.
70
71  * "git update-index -h" did not do the usual "-h(elp)" thing.
72
73  * perl/Git.pm::cat_blob slurped everything in core only to write it
74    out to a file descriptor, which was not a very smart thing to do.
75
76  * The SSL peer verification done by "git imap-send" did not ask for
77    Server Name Indication (RFC 4366), failing to connect SSL/TLS
78    sites that serve multiple hostnames on a single IP.
79
80  * "git index-pack" had a buffer-overflow while preparing an
81    informational message when the translated version of it was too
82    long.
83
84  * Clarify in the documentation "what" gets pushed to "where" when the
85    command line to "git push" does not say these explicitly.
86
87  * In "git reflog expire", REACHABLE bit was not cleared from the
88    correct objects.
89
90  * The "--color=<when>" argument to the commands in the diff family
91    was described poorly.
92
93  * The arguments given to pre-rebase hook were not documented.
94
95  * The v4 index format was not documented.
96
97  * The "--match=<pattern>" argument "git describe" takes uses glob
98    pattern but it wasn't obvious from the documentation.
99
100  * Some sources failed to compile on systems that lack NI_MAXHOST in
101    their system header (e.g. z/OS).
102
103  * Add an example use of "--env-filter" in "filter-branch"
104    documentation.
105
106  * "git bundle verify" did not say "records a complete history" for a
107    bundle that does not have any prerequisites.
108
109  * In the v1.8.0 era, we changed symbols that do not have to be global
110    to file scope static, but a few functions in graph.c were used by
111    CGit from sideways bypassing the entry points of the API the
112    in-tree users use.
113
114  * "git merge-tree" had a typo in the logic to detect d/f conflicts,
115    which caused it to segfault in some cases.