From: Kyle J. McKay Date: Mon, 19 Aug 2013 20:41:49 GMT Subject: Re: [ANNOUNCE] Git v1.8.4-rc4 Message-ID: <8970708B-BCAC-4BF6-8440-EBA6660D7948@gmail.com> In-Reply-To: <7vr4dplaep.fsf@alter.siamese.dyndns.org> On Aug 19, 2013, at 12:59, Junio C Hamano wrote: > Performance, Internal Implementation, etc. > > * On Cygwin, we used to use our own lstat(2) emulation that is > allegedly faster than the platform one in codepaths where some of > the information it returns did not matter, but it started to bite > us in a few codepaths where the trick it uses to cheat does show > breakages. This emulation has been removed and we use the native > lstat(2) emulation supplied by Cygwin now. > > * The function attributes extensions are used to catch mistakes in > use of our own variadic functions that use NULL sentinel at the end > (i.e. like execl(3)) and format strings (i.e. like printf(3)). > > * The code to allow configuration data to be read from in-tree blob > objects is in. This may help working in a bare repository and > submodule updates. > > * Fetching between repositories with many refs employed O(n^2) > algorithm to match up the common objects, which has been corrected. > > * The original way to specify remote repository using .git/branches/ > used to have a nifty feature. The code to support the feature was > still in a function but the caller was changed not to call it 5 > years ago, breaking that feature and leaving the supporting code > unreachable. The dead code has been removed. > > * "git pack-refs" that races with new ref creation or deletion have > been susceptible to lossage of refs under right conditions, which > has been tightened up. > > * We read loose and packed rerferences in two steps, but after ^^^^^^^^^^ > deciding to read a loose ref but before actually opening it to read s/rerferences/references/