| 1 | Git 2.51.1 Release Notes |
| 2 | ======================== |
| 3 | |
| 4 | There shouldn't be anything exciting to see here. This is primarily |
| 5 | to flush the "do you still use it?" improvements that has landed on |
| 6 | the master front, together with a handful of low-hanging, low-impact |
| 7 | fixes that should be safe. |
| 8 | |
| 9 | |
| 10 | Fixes since Git 2.51.0 |
| 11 | ---------------------- |
| 12 | |
| 13 | * The "do you still use it?" message given by a command that is |
| 14 | deeply deprecated and allow us to suggest alternatives has been |
| 15 | updated. |
| 16 | |
| 17 | * The compatObjectFormat extension is used to hide an incomplete |
| 18 | feature that is not yet usable for any purpose other than |
| 19 | developing the feature further. Document it as such to discourage |
| 20 | its use by mere mortals. |
| 21 | |
| 22 | * Manual page for "gitk" is updated with the current maintainer's |
| 23 | name. |
| 24 | |
| 25 | * Update the instructions for using GGG in the MyFirstContribution |
| 26 | document to say that a GitHub PR could be made against `git/git` |
| 27 | instead of `gitgitgadget/git`. |
| 28 | |
| 29 | * Clang-format update to let our control macros be formatted the way we |
| 30 | had them traditionally, e.g., "for_each_string_list_item()" without |
| 31 | space before the parentheses. |
| 32 | |
| 33 | * A few places where a size_t value was cast to curl_off_t without |
| 34 | checking has been updated to use the existing helper function. |
| 35 | |
| 36 | * The start_delayed_progress() function in the progress eye-candy API |
| 37 | did not clear its internal state, making an initial delay value |
| 38 | larger than 1 second ineffective, which has been corrected. |
| 39 | |
| 40 | * Makefile tried to run multiple "cargo build" which would not work |
| 41 | very well; serialize their execution to work around this problem. |
| 42 | |
| 43 | * Adjust to the way newer versions of cURL selectively enable tracing |
| 44 | options, so that our tests can continue to work. |
| 45 | |
| 46 | * During interactive rebase, using 'drop' on a merge commit led to |
| 47 | an error, which has been corrected. |
| 48 | |
| 49 | * "git refs migrate" to migrate the reflog entries from a refs |
| 50 | backend to another had a handful of bugs squashed. |
| 51 | |
| 52 | * "git push" had a code path that led to BUG() but it should have |
| 53 | been a die(), as it is a response to a usual but invalid end-user |
| 54 | action to attempt pushing an object that does not exist. |
| 55 | |
| 56 | * Various bugs about rename handling in "ort" merge strategy have |
| 57 | been fixed. |
| 58 | |
| 59 | * "git diff --no-index" run inside a subdirectory under control of a |
| 60 | Git repository operated at the top of the working tree and stripped |
| 61 | the prefix from the output, and oddballs like "-" (stdin) did not |
| 62 | work correctly because of it. Correct the set-up by undoing what |
| 63 | the set-up sequence did to cwd and prefix. |
| 64 | |
| 65 | * Various options to "git diff" that make comparison ignore certain |
| 66 | aspects of the differences (like "space changes are ignored", |
| 67 | "differences in lines that match these regular expressions are |
| 68 | ignored") did not work well with "--name-only" and friends. |
| 69 | |
| 70 | * Under a race against another process that is repacking the |
| 71 | repository, especially a partially cloned one, "git fetch" may |
| 72 | mistakenly think some objects we do have are missing, which has |
| 73 | been corrected. |
| 74 | |
| 75 | * "git repack --path-walk" lost objects in some corner cases, which |
| 76 | has been corrected. |
| 77 | cf. <CABPp-BHFxxGrqKc0m==TjQNjDGdO=H5Rf6EFsf2nfE1=TuraOQ@mail.gmail.com> |
| 78 | |
| 79 | * Fixes multiple crashes around midx write-out codepaths. |
| 80 | |
| 81 | * A broken or malicious "git fetch" can say that it has the same |
| 82 | object for many many times, and the upload-pack serving it can |
| 83 | exhaust memory storing them redundantly, which has been corrected. |
| 84 | |
| 85 | * A corner case bug in "git log -L..." has been corrected. |
| 86 | |
| 87 | * Some among "git add -p" and friends ignored color.diff and/or |
| 88 | color.ui configuration variables, which is an old regression, which |
| 89 | has been corrected. |
| 90 | |
| 91 | * "git rebase -i" failed to clean-up the commit log message when the |
| 92 | command commits the final one in a chain of "fixup" commands, which |
| 93 | has been corrected. |
| 94 | |
| 95 | * Deal more gracefully with directory / file conflicts when the files |
| 96 | backend is used for ref storage, by failing only the ones that are |
| 97 | involved in the conflict while allowing others. |
| 98 | |
| 99 | Also contains various documentation updates, code cleanups and minor fixups. |