1Git v1.8.4 Release Notes 2======================== 3 4Updates since v1.8.3 5-------------------- 6 7Foreign 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 13UI, 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 25Performance, 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 41Also contains various documentation updates and code clean-ups. 42 43 44Fixes since v1.8.3 45------------------ 46 47Unless otherwise noted, all the fixes since v1.8.3 in the maintenance 48track are contained in this release (see release notes to them for 49details). 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).