diff --git a/Documentation/RelNotes/2.25.2.txt b/Documentation/RelNotes/2.25.2.txt new file mode 100644 index 0000000000..303c53a17f --- /dev/null +++ b/Documentation/RelNotes/2.25.2.txt @@ -0,0 +1,60 @@ +Git 2.25.2 Release Notes +======================== + +Fixes since v2.25.1 +------------------- + + * Minor bugfixes to "git add -i" that has recently been rewritten in C. + + * An earlier update to show the location of working tree in the error + message did not consider the possibility that a git command may be + run in a bare repository, which has been corrected. + + * The "--recurse-submodules" option of various subcommands did not + work well when run in an alternate worktree, which has been + corrected. + + * Running "git rm" on a submodule failed unnecessarily when + .gitmodules is only cache-dirty, which has been corrected. + + * "git rebase -i" identifies existing commits in its todo file with + their abbreviated object name, which could become ambigous as it + goes to create new commits, and has a mechanism to avoid ambiguity + in the main part of its execution. A few other cases however were + not covered by the protection against ambiguity, which has been + corrected. + + * The index-pack code now diagnoses a bad input packstream that + records the same object twice when it is used as delta base; the + code used to declare a software bug when encountering such an + input, but it is an input error. + + * The code to automatically shrink the fan-out in the notes tree had + an off-by-one bug, which has been killed. + + * "git check-ignore" did not work when the given path is explicitly + marked as not ignored with a negative entry in the .gitignore file. + + * The merge-recursive machinery failed to refresh the cache entry for + a merge result in a couple of places, resulting in an unnecessary + merge failure, which has been fixed. + + * Fix for a bug revealed by a recent change to make the protocol v2 + the default. + + * "git merge signed-tag" while lacking the public key started to say + "No signature", which was utterly wrong. This regression has been + reverted. + + * MinGW's poll() emulation has been improved. + + * "git show" and others gave an object name in raw format in its + error output, which has been corrected to give it in hex. + + * Both "git ls-remote -h" and "git grep -h" give short usage help, + like any other Git subcommand, but it is not unreasonable to expect + that the former would behave the same as "git ls-remote --head" + (there is no other sensible behaviour for the latter). The + documentation has been updated in an attempt to clarify this. + +Also contains various documentation updates, code clean-ups and minor fixups. diff --git a/Documentation/RelNotes/2.26.0.txt b/Documentation/RelNotes/2.26.0.txt index 98b2ed8e65..719750dbb5 100644 --- a/Documentation/RelNotes/2.26.0.txt +++ b/Documentation/RelNotes/2.26.0.txt @@ -188,7 +188,6 @@ Fixes since v2.25 of gcc and clang. * Minor bugfixes to "git add -i" that has recently been rewritten in C. - (merge 849e43cc18 js/builtin-add-i-cmds later to maint). * "git fetch --refmap=" option has got a better documentation. @@ -211,17 +210,14 @@ Fixes since v2.25 * The "--recurse-submodules" option of various subcommands did not work well when run in an alternate worktree, which has been corrected. - (merge a9472afb63 pb/recurse-submodule-in-worktree-fix later to maint). * Futureproofing a test not to depend on the current implementation detail. * Running "git rm" on a submodule failed unnecessarily when .gitmodules is only cache-dirty, which has been corrected. - (merge 7edee32985 dt/submodule-rm-with-stale-cache later to maint). * C pedantry ;-) fix. - (merge cf82bff73f jk/clang-sanitizer-fixes later to maint). * "git grep --no-index" should not get affected by the contents of the .gitmodules file but when "--recurse-submodules" is given or @@ -238,7 +234,6 @@ Fixes since v2.25 in the main part of its execution. A few other cases however were not covered by the protection against ambiguity, which has been corrected. - (merge 26027625dd js/rebase-i-with-colliding-hash later to maint). * Allow the rebase.missingCommitsCheck configuration to kick in when "rebase --edit-todo" and "rebase --continue" restarts the procedure. @@ -252,13 +247,12 @@ Fixes since v2.25 * The code to automatically shrink the fan-out in the notes tree had an off-by-one bug, which has been killed. - (merge dbc27477ff jh/notes-fanout-fix later to maint). * The index-pack code now diagnoses a bad input packstream that records the same object twice when it is used as delta base; the code used to declare a software bug when encountering such an input, but it is an input error. - (merge a21781011f jk/index-pack-dupfix later to maint). + * The code to compute the commit-graph has been taught to use a more robust way to tell if two object directories refer to the same @@ -270,23 +264,18 @@ Fixes since v2.25 branch..pushRemote is now also updated. * Update to doc-diff. - (merge 2607d39da3 jk/doc-diff-parallel later to maint). * Doc markup fix. - (merge 0aa6ce3094 jk/push-option-doc-markup-fix later to maint). * "git check-ignore" did not work when the given path is explicitly marked as not ignored with a negative entry in the .gitignore file. - (merge 7ec8125fba en/check-ignore later to maint). * The merge-recursive machinery failed to refresh the cache entry for a merge result in a couple of places, resulting in an unnecessary merge failure, which has been fixed. - (merge fb1c18fc46 en/t3433-rebase-stat-dirty-failure later to maint). * Fix for a bug revealed by a recent change to make the protocol v2 the default. - (merge 3e96c66805 ds/partial-clone-fixes later to maint). * In rare cases "git worktree add " could think that was already a registered worktree even when it wasn't and refuse @@ -311,14 +300,11 @@ Fixes since v2.25 * "git merge signed-tag" while lacking the public key started to say "No signature", which was utterly wrong. This regression has been reverted. - (merge 0106b1d4be hi/gpg-use-check-signature later to maint). * MinGW's poll() emulation has been improved. - (merge 94f4d01932 am/mingw-poll-fix later to maint). * "git show" and others gave an object name in raw format in its error output, which has been corrected to give it in hex. - (merge 237a28173f hd/show-one-mergetag-fix later to maint). * "git fetch" over HTTP walker protocol did not show any progress output. We inherently do not know how much work remains, but still @@ -330,10 +316,8 @@ Fixes since v2.25 that the former would behave the same as "git ls-remote --head" (there is no other sensible behaviour for the latter). The documentation has been updated in an attempt to clarify this. - (merge 1ff466c018 jc/doc-single-h-is-for-help later to maint). * Other code cleanup, docfix, build fix, etc. - (merge 26f924d50e en/simplify-check-updates-in-unpack-trees later to maint). (merge d0d0a357a1 am/update-pathspec-f-f-tests later to maint). (merge f94f7bd00d am/test-pathspec-f-f-error-cases later to maint). (merge c513a958b6 ss/t6025-modernize later to maint). @@ -344,20 +328,13 @@ Fixes since v2.25 (merge 7a9f8ca805 rs/parse-options-concat-dup later to maint). (merge 517b60564e rs/strbuf-insertstr later to maint). (merge f696a2b1c8 jk/mailinfo-cleanup later to maint). - (merge 076ee3e8a2 js/test-write-junit-xml-fix later to maint). (merge de26f02db1 js/test-avoid-pipe later to maint). - (merge bfe2bbb47f js/test-unc-fetch later to maint). - (merge 08809c09aa js/mingw-open-in-gdb later to maint). - (merge cc4f2eb828 jk/doc-credential-helper later to maint). - (merge e0020b2f82 es/outside-repo-errmsg-hints later to maint). (merge a2dc43414c es/doc-mentoring later to maint). - (merge 539052f42f jk/run-command-formatfix later to maint). (merge 02bbbe9df9 es/worktree-cleanup later to maint). (merge 2ce6d075fa rs/micro-cleanups later to maint). (merge 27f182b3fc rs/blame-typefix-for-fingerprint later to maint). (merge 3c29e21eb0 ma/test-cleanup later to maint). (merge 240fc04f81 ag/rebase-remove-redundant-code later to maint). - (merge 7f487ce062 js/ci-windows-update later to maint). (merge d68ce906c7 rs/commit-graph-code-simplification later to maint). (merge a51d9e8f07 rj/t1050-use-test-path-is-file later to maint). (merge fd0bc17557 kk/complete-diff-color-moved later to maint). diff --git a/unicode-width.h b/unicode-width.h index c9d027625d..b50e686bae 100644 --- a/unicode-width.h +++ b/unicode-width.h @@ -59,7 +59,7 @@ static const struct interval zero_width[] = { { 0x0B3F, 0x0B3F }, { 0x0B41, 0x0B44 }, { 0x0B4D, 0x0B4D }, -{ 0x0B56, 0x0B56 }, +{ 0x0B55, 0x0B56 }, { 0x0B62, 0x0B63 }, { 0x0B82, 0x0B82 }, { 0x0BC0, 0x0BC0 }, @@ -82,6 +82,7 @@ static const struct interval zero_width[] = { { 0x0D41, 0x0D44 }, { 0x0D4D, 0x0D4D }, { 0x0D62, 0x0D63 }, +{ 0x0D81, 0x0D81 }, { 0x0DCA, 0x0DCA }, { 0x0DD2, 0x0DD4 }, { 0x0DD6, 0x0DD6 }, @@ -139,7 +140,7 @@ static const struct interval zero_width[] = { { 0x1A65, 0x1A6C }, { 0x1A73, 0x1A7C }, { 0x1A7F, 0x1A7F }, -{ 0x1AB0, 0x1ABE }, +{ 0x1AB0, 0x1AC0 }, { 0x1B00, 0x1B03 }, { 0x1B34, 0x1B34 }, { 0x1B36, 0x1B3A }, @@ -182,6 +183,7 @@ static const struct interval zero_width[] = { { 0xA806, 0xA806 }, { 0xA80B, 0xA80B }, { 0xA825, 0xA826 }, +{ 0xA82C, 0xA82C }, { 0xA8C4, 0xA8C5 }, { 0xA8E0, 0xA8F1 }, { 0xA8FF, 0xA8FF }, @@ -223,6 +225,7 @@ static const struct interval zero_width[] = { { 0x10A3F, 0x10A3F }, { 0x10AE5, 0x10AE6 }, { 0x10D24, 0x10D27 }, +{ 0x10EAB, 0x10EAC }, { 0x10F46, 0x10F50 }, { 0x11001, 0x11001 }, { 0x11038, 0x11046 }, @@ -238,6 +241,7 @@ static const struct interval zero_width[] = { { 0x11180, 0x11181 }, { 0x111B6, 0x111BE }, { 0x111C9, 0x111CC }, +{ 0x111CF, 0x111CF }, { 0x1122F, 0x11231 }, { 0x11234, 0x11234 }, { 0x11236, 0x11237 }, @@ -273,6 +277,9 @@ static const struct interval zero_width[] = { { 0x11727, 0x1172B }, { 0x1182F, 0x11837 }, { 0x11839, 0x1183A }, +{ 0x1193B, 0x1193C }, +{ 0x1193E, 0x1193E }, +{ 0x11943, 0x11943 }, { 0x119D4, 0x119D7 }, { 0x119DA, 0x119DB }, { 0x119E0, 0x119E0 }, @@ -305,6 +312,7 @@ static const struct interval zero_width[] = { { 0x16B30, 0x16B36 }, { 0x16F4F, 0x16F4F }, { 0x16F8F, 0x16F92 }, +{ 0x16FE4, 0x16FE4 }, { 0x1BC9D, 0x1BC9E }, { 0x1BCA0, 0x1BCA3 }, { 0x1D167, 0x1D169 }, @@ -376,8 +384,7 @@ static const struct interval double_width[] = { { 0x3099, 0x30FF }, { 0x3105, 0x312F }, { 0x3131, 0x318E }, -{ 0x3190, 0x31BA }, -{ 0x31C0, 0x31E3 }, +{ 0x3190, 0x31E3 }, { 0x31F0, 0x321E }, { 0x3220, 0x3247 }, { 0x3250, 0x4DBF }, @@ -392,9 +399,11 @@ static const struct interval double_width[] = { { 0xFE68, 0xFE6B }, { 0xFF01, 0xFF60 }, { 0xFFE0, 0xFFE6 }, -{ 0x16FE0, 0x16FE3 }, +{ 0x16FE0, 0x16FE4 }, +{ 0x16FF0, 0x16FF1 }, { 0x17000, 0x187F7 }, -{ 0x18800, 0x18AF2 }, +{ 0x18800, 0x18CD5 }, +{ 0x18D00, 0x18D08 }, { 0x1B000, 0x1B11E }, { 0x1B150, 0x1B152 }, { 0x1B164, 0x1B167 }, @@ -429,20 +438,22 @@ static const struct interval double_width[] = { { 0x1F680, 0x1F6C5 }, { 0x1F6CC, 0x1F6CC }, { 0x1F6D0, 0x1F6D2 }, -{ 0x1F6D5, 0x1F6D5 }, +{ 0x1F6D5, 0x1F6D7 }, { 0x1F6EB, 0x1F6EC }, -{ 0x1F6F4, 0x1F6FA }, +{ 0x1F6F4, 0x1F6FC }, { 0x1F7E0, 0x1F7EB }, -{ 0x1F90D, 0x1F971 }, -{ 0x1F973, 0x1F976 }, -{ 0x1F97A, 0x1F9A2 }, -{ 0x1F9A5, 0x1F9AA }, -{ 0x1F9AE, 0x1F9CA }, +{ 0x1F90C, 0x1F93A }, +{ 0x1F93C, 0x1F945 }, +{ 0x1F947, 0x1F978 }, +{ 0x1F97A, 0x1F9CB }, { 0x1F9CD, 0x1F9FF }, -{ 0x1FA70, 0x1FA73 }, +{ 0x1FA70, 0x1FA74 }, { 0x1FA78, 0x1FA7A }, -{ 0x1FA80, 0x1FA82 }, -{ 0x1FA90, 0x1FA95 }, +{ 0x1FA80, 0x1FA86 }, +{ 0x1FA90, 0x1FAA8 }, +{ 0x1FAB0, 0x1FAB6 }, +{ 0x1FAC0, 0x1FAC2 }, +{ 0x1FAD0, 0x1FAD6 }, { 0x20000, 0x2FFFD }, { 0x30000, 0x3FFFD } };