| 1 | Git 2.42.1 Release Notes |
| 2 | ======================== |
| 3 | |
| 4 | There is nothing exciting to see here. Relative to Git 2.42, this |
| 5 | release contains the fixes that have already been merged to the |
| 6 | 'master' branch of the development towards Git 2.43 that has been |
| 7 | tagged as Git 2.43.0-rc0. |
| 8 | |
| 9 | Fixes since Git 2.42.0 |
| 10 | ---------------------- |
| 11 | |
| 12 | * Tests that are known to pass with LSan are now marked as such. |
| 13 | |
| 14 | * Flaky "git p4" tests, as well as "git svn" tests, are now skipped |
| 15 | in the (rather expensive) sanitizer CI job. |
| 16 | |
| 17 | * Tests with LSan from time to time seem to emit harmless message |
| 18 | that makes our tests unnecessarily flaky; we work it around by |
| 19 | filtering the uninteresting output. |
| 20 | |
| 21 | * GitHub CI workflow has learned to trigger Coverity check. |
| 22 | |
| 23 | * Overly long label names used in the sequencer machinery are now |
| 24 | chopped to fit under filesystem limitation. |
| 25 | |
| 26 | * Scalar updates. |
| 27 | |
| 28 | * Tweak GitHub Actions CI so that pushing the same commit to multiple |
| 29 | branch tips at the same time will not waste building and testing |
| 30 | the same thing twice. |
| 31 | |
| 32 | * The commit-graph verification code that detects mixture of zero and |
| 33 | non-zero generation numbers has been updated. |
| 34 | |
| 35 | * "git diff -w --exit-code" with various options did not work |
| 36 | correctly, which is being addressed. |
| 37 | |
| 38 | * transfer.unpackLimit ought to be used as a fallback, but overrode |
| 39 | fetch.unpackLimit and receive.unpackLimit instead. |
| 40 | |
| 41 | * The use of API between two calls to require_clean_work_tree() from |
| 42 | the sequencer code has been cleaned up for consistency. |
| 43 | |
| 44 | * "git diff --no-such-option" and other corner cases around the exit |
| 45 | status of the "diff" command has been corrected. |
| 46 | |
| 47 | * "git for-each-ref --sort='contents:size'" sorts the refs according |
| 48 | to size numerically, giving a ref that points at a blob twelve-byte |
| 49 | (12) long before showing a blob hundred-byte (100) long. |
| 50 | |
| 51 | * Various fixes to the behavior of "rebase -i" when the command got |
| 52 | interrupted by conflicting changes. |
| 53 | |
| 54 | * References from description of the `--patch` option in various |
| 55 | manual pages have been simplified and improved. |
| 56 | |
| 57 | * "git grep -e A --no-or -e B" is accepted, even though the negation |
| 58 | of "or" did not mean anything, which has been tightened. |
| 59 | |
| 60 | * The completion script (in contrib/) has been taught to treat the |
| 61 | "-t" option to "git checkout" and "git switch" just like the |
| 62 | "--track" option, to complete remote-tracking branches. |
| 63 | |
| 64 | * "git diff --no-index -R <(one) <(two)" did not work correctly, |
| 65 | which has been corrected. |
| 66 | |
| 67 | * Update "git maintenance" timers' implementation based on systemd |
| 68 | timers to work with WSL. |
| 69 | |
| 70 | * "git diff --cached" codepath did not fill the necessary stat |
| 71 | information for a file when fsmonitor knows it is clean and ended |
| 72 | up behaving as if it is not clean, which has been corrected. |
| 73 | |
| 74 | * Clarify how "alias.foo = : git cmd ; aliased-command-string" should |
| 75 | be spelled with necessary whitespaces around punctuation marks to |
| 76 | work. |
| 77 | |
| 78 | * HTTP Header redaction code has been adjusted for a newer version of |
| 79 | cURL library that shows its traces differently from earlier |
| 80 | versions. |
| 81 | |
| 82 | * An error message given by "git send-email" when given a malformed |
| 83 | address did not give correct information, which has been corrected. |
| 84 | |
| 85 | * UBSan options were not propagated through the test framework to git |
| 86 | run via the httpd, unlike ASan options, which has been corrected. |
| 87 | |
| 88 | Also contains various documentation updates, code clean-ups and minor fixups. |