]>
Commit | Line | Data |
---|---|---|
79bcaf00 JH |
1 | Git 2.29 Release Notes |
2 | ====================== | |
3 | ||
4 | Updates since v2.28 | |
5 | ------------------- | |
6 | ||
7 | UI, Workflows & Features | |
8 | ||
9 | * "git help log" has been enhanced by sharing more material from the | |
10 | documentation for the underlying "git rev-list" command. | |
11 | ||
12 | * "git for-each-ref --format=<>" learned %(contents:size). | |
13 | ||
85b4e0a6 JH |
14 | * "git merge" learned to selectively omit " into <branch>" at the end |
15 | of the title of default merge message with merge.suppressDest | |
16 | configuration. | |
17 | ||
79bcaf00 JH |
18 | |
19 | Performance, Internal Implementation, Development Support etc. | |
20 | ||
21 | * The changed-path Bloom filter is improved using ideas from an | |
22 | independent implementation. | |
23 | ||
24 | * Updates to the changed-paths bloom filter. | |
25 | ||
26 | * The test framework has been updated so that most tests will run | |
27 | with predictable (artificial) timestamps. | |
28 | ||
29 | * Preliminary clean-up of the refs API in preparation for adding a | |
30 | new refs backend "reftable". | |
31 | ||
32 | * Dev support to limit the use of test_must_fail to only git commands. | |
33 | ||
dc04167d JH |
34 | * While packing many objects in a repository with a promissor remote, |
35 | lazily fetching missing objects from the promissor remote one by | |
36 | one may be inefficient---the code now attempts to fetch all the | |
37 | missing objects in batch (obviously this won't work for a lazy | |
38 | clone that lazily fetches tree objects as you cannot even enumerate | |
39 | what blobs are missing until you learn which trees are missing). | |
40 | ||
41 | * The pretend-object mechanism checks if the given object already | |
42 | exists in the object store before deciding to keep the data | |
43 | in-core, but the check would have triggered lazy fetching of such | |
44 | an object from a promissor remote. | |
45 | ||
4f0a8be7 JH |
46 | * The argv_array API is useful for not just managing argv but any |
47 | "vector" (NULL-terminated array) of strings, and has seen adoption | |
48 | to a certain degree. It has been renamed to "strvec" to reduce the | |
49 | barrier to adoption. | |
50 | ||
79bcaf00 JH |
51 | |
52 | Fixes since v2.28 | |
53 | ----------------- | |
54 | ||
55 | * "git clone --separate-git-dir=$elsewhere" used to stomp on the | |
56 | contents of the existing directory $elsewhere, which has been | |
57 | taught to fail when $elsewhere is not an empty directory. | |
58 | (merge dfaa209a79 bw/fail-cloning-into-non-empty later to maint). | |
59 | ||
79bcaf00 JH |
60 | * With the base fix to 2.27 regresion, any new extensions in a v0 |
61 | repository would still be silently honored, which is not quite | |
62 | right. Instead, complain and die loudly. | |
63 | (merge ec91ffca04 jk/reject-newer-extensions-in-v0 later to maint). | |
64 | ||
65 | * Fetching from a lazily cloned repository resulted at the server | |
66 | side in attempts to lazy fetch objects that the client side has, | |
67 | many of which will not be available from the third-party anyway. | |
68 | (merge 77aa0941ce jt/avoid-lazy-fetching-upon-have-check later to maint). | |
69 | ||
70 | * Fix to an ancient bug caused by an over-eager attempt for | |
71 | optimization. | |
72 | (merge a98f7fb366 rs/add-index-entry-optim-fix later to maint). | |
73 | ||
74 | * Pushing a ref whose name contains non-ASCII character with the | |
75 | "--force-with-lease" option did not work over smart HTTP protocol, | |
76 | which has been corrected. | |
77 | (merge cd85b447bf bc/push-cas-cquoted-refname later to maint). | |
78 | ||
79 | * "git mv src dst", when src is an unmerged path, errored out | |
80 | correctly but with an incorrect error message to claim that src is | |
81 | not tracked, which has been clarified. | |
82 | (merge 9b906af657 ct/mv-unmerged-path-error later to maint). | |
83 | ||
84 | * Fix to a regression introduced during 2.27 cycle. | |
85 | (merge cada7308ad en/fill-directory-exponential later to maint). | |
86 | ||
dc04167d JH |
87 | * Command line completion (in contrib/) update. |
88 | (merge 688b87c81b mp/complete-show-color-moved later to maint). | |
89 | ||
4f0a8be7 JH |
90 | * All "mergy" operations that internally use the merge-recursive |
91 | machinery should honor the merge.renormalize configuration, but | |
92 | many of them didn't. | |
93 | ||
79bcaf00 | 94 | * Other code cleanup, docfix, build fix, etc. |
e8ab941b JH |
95 | (merge 84544f2ea3 sk/typofixes later to maint). |
96 | (merge b17f411ab5 ar/help-guides-doc later to maint). | |
97 | (merge 98c6871fad rs/grep-simpler-parse-object-or-die-call later to maint). | |
98 | (merge 861c4ce141 en/typofixes later to maint). | |
99 | (merge 60e47f6773 sg/ci-git-path-fix-with-pyenv later to maint). | |
100 | (merge e2bfa50ac3 jb/doc-packfile-name later to maint). | |
4f0a8be7 JH |
101 | (merge 918d8ff780 es/worktree-cleanup later to maint). |
102 | (merge dc156bc31f ma/t1450-quotefix later to maint). | |
103 | (merge 56e743426b en/merge-recursive-comment-fixes later to maint). | |
104 | (merge 7d23ff818f rs/bisect-oid-to-hex-fix later to maint). | |
105 | (merge de20baf2c9 ny/notes-doc-sample-update later to maint). | |
106 | (merge f649aaaf82 so/rev-parser-errormessage-fix later to maint). |