Merge branch 'da/darwin'
[git] / Documentation / RelNotes / 1.8.4.txt
1 Git v1.8.4 Release Notes
2 ========================
3
4 Updates since v1.8.3
5 --------------------
6
7 Foreign interface
8
9  * Remote transport helper has been updated to report errors and
10    maintain ref hierarchy used to keep track of its own state better.
11
12
13 UI, Workflows & Features
14
15  * "check-ignore" (new feature since 1.8.2) has been updated to work
16    more like "check-attr" over bidi-pipes.
17
18  * We used the approxidate() parser for "--expire=<timestamp>" options
19    of various commands, but it is better to treat --expire=all and
20    --expire=now a bit more specially than using the current timestamp.
21    "git gc" and "git reflog" have been updated with a new parsing
22    function for expiry dates.
23
24
25 Performance, Internal Implementation, etc.
26
27  * Object lookup logic, when the object hashtable starts to become
28    crowded, has been optimized.
29
30  * When TEST_OUTPUT_DIRECTORY setting is used, it was handled somewhat
31    inconsistently between the test framework and t/Makefile, and logic
32    to summarize the results looked at a wrong place.
33
34  * Many warnings from sparse source checker in compat/ area has been
35    squelched.
36
37  * The code to reading and updating packed-refs file has been updated,
38    correcting corner case bugs.
39
40
41 Also contains various documentation updates and code clean-ups.
42
43
44 Fixes since v1.8.3
45 ------------------
46
47 Unless otherwise noted, all the fixes since v1.8.3 in the maintenance
48 track are contained in this release (see release notes to them for
49 details).
50
51  * When $HOME is misconfigured to point at an unreadable directory, we
52    used to complain and die. Loosen the check.
53    (merge 4698c8f jn/config-ignore-inaccessible later to maint).
54
55  * "git subtree" (in contrib/) had one codepath with loose error
56    checks to lose data at the remote side.
57    (merge 3212d56 jk/subtree-do-not-push-if-split-fails later to maint).
58
59  * "git fetch" into a shallow repository from a repository that does
60    not know about the shallow boundary commits (e.g. a different fork
61    from the repository the current shallow repository was cloned from)
62    did not work correctly.
63    (merge 71d5f93 mh/fetch-into-shallow later to maint).
64
65  * "git checkout foo" DWIMs the intended "upstream" and turns it into
66    "git checkout -t -b foo remotes/origin/foo". This codepath has been
67    updated to correctly take existing remote definitions into account.
68    (merge 229177a jh/checkout-auto-tracking later to maint).