Raw
1 Git v2.45.3 Release Notes
2 =========================
3
4 This release merges up the fix that appears in v2.40.4, v2.41.3,
5 v2.42.4, v2.43.6 and v2.44.3 to address the security issues
6 CVE-2024-50349 and CVE-2024-52006; see the release notes for
7 these versions for details.
8
9 This version also backports various small fixes accumulated on the
10 'master' front during the development towards Git 2.46, the next
11 feature release.
12
13
14 Fixes since v2.45.2
15 -------------------
16
17 * Git-GUI has a new maintainer, Johannes Sixt.
18
19 * Tests that try to corrupt in-repository files in chunked format did
20 not work well on macOS due to its broken "mv", which has been
21 worked around.
22
23 * The maximum size of attribute files is enforced more consistently.
24
25 * Unbreak CI jobs so that we do not attempt to use Python 2 that has
26 been removed from the platform.
27
28 * Git 2.43 started using the tree of HEAD as the source of attributes
29 in a bare repository, which has severe performance implications.
30 For now, revert the change, without ripping out a more explicit
31 support for the attr.tree configuration variable.
32
33 * Windows CI running in GitHub Actions started complaining about the
34 order of arguments given to calloc(); the imported regex code uses
35 the wrong order almost consistently, which has been corrected.
36
37 * The SubmittingPatches document now refers folks to manpages
38 translation project.
39
40 * "git rebase --signoff" used to forget that it needs to add a
41 sign-off to the resulting commit when told to continue after a
42 conflict stops its operation.
43
44 * The procedure to build multi-pack-index got confused by the
45 replace-refs mechanism, which has been corrected by disabling the
46 latter.
47
48 * "git stash -S" did not handle binary files correctly, which has
49 been corrected.
50
51 * A scheduled "git maintenance" job is expected to work on all
52 repositories it knows about, but it stopped at the first one that
53 errored out. Now it keeps going.
54
55 * zsh can pretend to be a normal shell pretty well except for some
56 glitches that we tickle in some of our scripts. Work them around
57 so that "vimdiff" and our test suite works well enough with it.
58
59 * Command line completion support for zsh (in contrib/) has been
60 updated to stop exposing internal state to end-user shell
61 interaction.
62
63 * The documentation for "git diff --name-only" has been clarified
64 that it is about showing the names in the post-image tree.
65
66 * The chainlint script (invoked during "make test") did nothing when
67 it failed to detect the number of available CPUs. It now falls
68 back to 1 CPU to avoid the problem.
69
70 * "git init" in an already created directory, when the user
71 configuration has includeif.onbranch, started to fail recently,
72 which has been corrected.
73
74 * The safe.directory configuration knob has been updated to
75 optionally allow leading path matches.
76
77 * An overly large ".gitignore" files are now rejected silently.
78
79 * Fix for an embarrassing typo that prevented Python2 tests from running
80 anywhere.
81
82 * Varargs functions that are unannotated as printf-like or execl-like
83 have been annotated as such.
84
85 * The "-k" and "--rfc" options of "format-patch" will now error out
86 when used together, as one tells us not to add anything to the
87 title of the commit, and the other one tells us to add "RFC" in
88 addition to "PATCH".
89
90 * When the user adds to "git rebase -i" instruction to "pick" a merge
91 commit, the error experience is not pleasant. Such an error is now
92 caught earlier in the process that parses the todo list.
93
94 * We forgot to normalize the result of getcwd() to NFC on macOS where
95 all other paths are normalized, which has been corrected. This still
96 does not address the case where core.precomposeUnicode configuration
97 is not defined globally.
98
99 * Earlier we stopped using the tree of HEAD as the default source of
100 attributes in a bare repository, but failed to document it. This
101 has been corrected.
102
103 * An unused extern declaration for mingw has been removed to prevent
104 it from causing build failure.
105
106 * A helper function shared between two tests had a copy-paste bug,
107 which has been corrected.
108
109 * "git fetch-pack -k -k" without passing "--lock-pack" (which we
110 never do ourselves) did not work at all, which has been corrected.
111
112 Also contains various documentation updates and code clean-ups.