1Git v1.8.2.1 Release Notes 2========================== 3 4Fixes 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 acccumulate 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.