The first batch after 2.22
[git/raj.git] / Documentation / RelNotes / 2.23.0.txt
blobada7f52e4f3f70c663619f5c85f80db462a97768
1 Git 2.23 Release Notes
2 ======================
4 Updates since v2.22
5 -------------------
7 Backward compatibility note
9  * The "--base" option of "format-patch" computed the patch-ids for
10    prerequisite patches in an unstable way, which has been updated to
11    compute in a way that is compatible with "git patch-id --stable".
14 UI, Workflows & Features
16  * The "git fast-export/import" pair has been taught to handle commits
17    with log messages in encoding other than UTF-8 better.
19  * In recent versions of Git, per-worktree refs are exposed in
20    refs/worktrees/<wtname>/ hierarchy, which means that worktree names
21    must be a valid refname component.  The code now sanitizes the names
22    given to worktrees, to make sure these refs are well-formed.
24  * "git merge" learned "--quit" option that cleans up the in-progress
25    merge while leaving the working tree and the index still in a mess.
27  * "git format-patch" learns a configuration to set the default for
28    its --notes=<ref> option.
30  * The code to show args with potential typo that cannot be
31    interpreted as a commit-ish has been improved.
34 Performance, Internal Implementation, Development Support etc.
36  * Update supporting parts of "git rebase" to remove code that should
37    no longer be used.
39  * Developer support to emulate unsatisfied prerequisites in tests to
40    ensure that the remainer of the tests still succeeds when tests
41    with prerequisites are skipped.
43  * "git update-server-info" learned not to rewrite the file with the
44    same contents.
46  * The way of specifying the path to find dynamic libraries at runtime
47    has been simplified.  The old default to pass -R/path/to/dir has been
48    replaced with the new default to pass -Wl,-rpath,/path/to/dir,
49    which is the more recent GCC uses.  Those who need to build with an
50    old GCC can still use "CC_LD_DYNPATH=-R"
53 Fixes since v2.22
54 -----------------
56  * A relative pathname given to "git init --template=<path> <repo>"
57    ought to be relative to the directory "git init" gets invoked in,
58    but it instead was made relative to the repository, which has been
59    corrected.
60    (merge e1df7fe43f nd/init-relative-template-fix later to maint).
62  * "git worktree add" used to fail when another worktree connected to
63    the same repository was corrupt, which has been corrected.
64    (merge 105df73e71 nd/corrupt-worktrees later to maint).
66  * The ownership rule for the file descriptor to fast-import remote
67    backend was mixed up, leading to unrelated file descriptor getting
68    closed, which has been fixed.
69    (merge 3203566a71 mh/import-transport-fd-fix later to maint).
71  * A "merge -c" instruction during "git rebase --rebase-merges" should
72    give the user a chance to edit the log message, even when there is
73    otherwise no need to create a new merge and replace the existing
74    one (i.e. fast-forward instead), but did not.  Which has been
75    corrected.
77  * Other code cleanup, docfix, build fix, etc.