| Git v2.53 Release Notes |
| ======================= |
| |
| UI, Workflows & Features |
| ------------------------ |
| |
| * "git maintenance" command learned "is-needed" subcommand to tell if |
| it is necessary to perform various maintenance tasks. |
| |
| * "git replay" (experimental) learned to perform ref updates itself |
| in a transaction by default, instead of emitting where each refs |
| should point at and leaving the actual update to another command. |
| |
| * "git blame" learns "--diff-algorithm=<algo>" option. |
| |
| * "git repo info" learned "--all" option. |
| |
| * Both "git apply" and "git diff" learn a new whitespace error class, |
| "incomplete-line". |
| |
| * Add a new manual that describes the data model. |
| |
| * "git fast-import" learns "--strip-if-invalid" option to drop |
| invalid cryptographic signature from objects. |
| |
| |
| Performance, Internal Implementation, Development Support etc. |
| -------------------------------------------------------------- |
| |
| * The list of packfiles used in a running Git process is moved from |
| the packed_git structure into the packfile store. |
| |
| * Some ref backend storage can hold not just the object name of an |
| annotated tag, but the object name of the object the tag points at. |
| The code to handle this information has been streamlined. |
| |
| * As "git diff --quiet" only cares about the existence of any |
| changes, disable rename/copy detection to skip more expensive |
| processing whose result will be discarded anyway. |
| |
| * A part of code paths that deals with loose objects has been cleaned |
| up. |
| |
| * "make strip" has been taught to strip "scalar" as well as "git". |
| |
| * Dockerised jobs at the GitHub Actions CI have been taught to show |
| more details of failed tests. |
| |
| * Code refactoring around object database sources. |
| |
| |
| Fixes since v2.52 |
| ----------------- |
| |
| * Ever since we added whitespace rules for this project, we misspelt |
| an entry, which has been corrected. |
| (merge 358e94dc70 jc/gitattributes-whitespace-no-indent-fix later to maint). |
| |
| * The code to expand attribute macros has been rewritten to avoid |
| recursion to avoid running out of stack space in an uncontrolled |
| way. |
| (merge 42ed046866 jk/attr-macroexpand-wo-recursion later to maint). |
| |
| * Adding a repository that uses a different hash function is a no-no, |
| but "git submodule add" did nt prevent it, which has been corrected. |
| (merge 6fe288bfbc bc/submodule-force-same-hash later to maint). |
| |
| * An earlier check added to osx keychain credential helper to avoid |
| storing the credential itself supplied was overeager and rejected |
| credential material supplied by other helper backends that it would |
| have wanted to store, which has been corrected. |
| (merge 4580bcd235 kn/osxkeychain-idempotent-store-fix later to maint). |
| |
| * The "git repo structure" subcommand tried to align its output but |
| mixed up byte count and display column width, which has been |
| corrected. |
| (merge 7a03a10a3a jx/repo-struct-utf8width-fix later to maint). |
| |
| * Yet another corner case fix around renames in the "ort" merge |
| strategy. |
| (merge a562d90a35 en/ort-rename-another-fix later to maint). |
| |
| * Test leakfix. |
| (merge 14b561e768 jk/test-mktemp-leakfix later to maint). |
| |
| * Update a version of action used at the GitHub Actrions CI. |
| (merge cd99203f86 js/ci-github-setup-go-update later to maint). |
| |
| * The "return errno = EFOO, -1" construct, which is heavily used in |
| compat/mingw.c and triggers warnings under "-Wcomma", has been |
| rewritten to avoid the warnings. |
| (merge af3919816f js/mingw-assign-comma-fix later to maint). |
| |
| * Makefile based build have recently been updated to build a |
| libgit.a that also has reftable and xdiff objects; CMake based |
| build procedure has been updated to match. |
| (merge b0d5c88cca js/cmake-libgit-fix later to maint). |
| |
| * Under-allocation fix. |
| (merge d22a488482 js/wincred-get-credential-alloc-fix later to maint). |
| |
| * "git worktree list" attempts to show paths to worktrees while |
| aligning them, but miscounted display columns for the paths when |
| non-ASCII characters were involved, which has been corrected. |
| (merge 08dfa59835 pw/worktree-list-display-width-fix later to maint). |
| |
| * "Windows+meson" job at the GitHub Actions CI was hard to debug, as |
| it did not show and save failed test artifacts, which has been |
| corrected. |
| (merge 17bd1108ea jk/ci-windows-meson-test-fix later to maint). |
| |
| * Emulation code clean-up. |
| (merge 2367c6bcd6 gf/win32-pthread-cond-wait-err later to maint). |
| |
| * Various issues detected by Asan have been corrected. |
| (merge a031b6181a jk/asan-bonanza later to maint). |
| |
| * "git config get --path" segfaulted on an ":(optional)path" that |
| does not exist, which has been corrected. |
| (merge 0bd16856ff jc/optional-path later to maint). |
| |
| * The "--committer-date-is-author-date" option of "git am/rebase" is |
| a misguided one. The documentation is updated to discourage its |
| use. |
| (merge fbf3d0669f kh/doc-committer-date-is-author-date later to maint). |
| |
| * The option help text given by "git config unset -h" described |
| the "--all" option to "replace", not "unset", multiple variables, |
| which has been corrected. |
| (merge 18bf67b753 rs/config-unset-opthelp-fix later to maint). |
| |
| * The error message given by "git config set", when the variable |
| being updated has more than one values defined, used old style "git |
| config" syntax with an incorrect option in its hint, both of which |
| have been corrected. |
| (merge df963f0df4 rs/config-set-multi-error-message-fix later to maint). |
| |
| * Other code cleanup, docfix, build fix, etc. |
| (merge 46207a54cc qj/doc-http-bad-want-response later to maint). |
| (merge df90eccd93 kh/doc-commit-extra-references later to maint). |
| (merge f18aa68861 rs/xmkstemp-simplify later to maint). |
| (merge fddba8f737 ja/doc-synopsis-style later to maint). |
| (merge 22ce0cb639 en/xdiff-cleanup-2 later to maint). |