{"thread":{"id":"60457","subject":"[ANNOUNCE] Git v2.42.1","startedAt":"2023-11-02T17:36:38Z","lastAt":"2023-11-02T17:36:38Z","messageCount":1,"participants":["Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"484372","messageId":"xmqq4ji4m50l.fsf@gitster.g","threadId":"60457","inReplyTo":null,"subject":"[ANNOUNCE] Git v2.42.1","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2023-11-02T17:36:26Z","receivedAt":"2023-11-02T17:36:38Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"The latest maintenance release Git v2.42.1 is now available at\nthe usual places.\n\nThere is nothing exciting to see here.  Relative to Git 2.42, this\nrelease contains the fixes that have already been merged to the\n'master' branch of the development towards Git 2.43 that has been\ntagged as Git 2.43.0-rc0.\n\nThe tarballs are found at:\n\n    https://www.kernel.org/pub/software/scm/git/\n\nThe following public repositories all have a copy of the 'v2.42.1'\ntag and the 'maint' branch that the tag points at:\n\n  url = https://git.kernel.org/pub/scm/git/git\n  url = https://kernel.googlesource.com/pub/scm/git/git\n  url = git://repo.or.cz/alt-git.git\n  url = https://github.com/gitster/git\n\n----------------------------------------------------------------\n\nGit 2.42.1 Release Notes\n========================\n\nThere is nothing exciting to see here.  Relative to Git 2.42, this\nrelease contains the fixes that have already been merged to the\n'master' branch of the development towards Git 2.43 that has been\ntagged as Git 2.43.0-rc0.\n\nFixes since Git 2.42.0\n----------------------\n\n * Tests that are known to pass with LSan are now marked as such.\n\n * Flaky \"git p4\" tests, as well as \"git svn\" tests, are now skipped\n   in the (rather expensive) sanitizer CI job.\n\n * Tests with LSan from time to time seem to emit harmless message\n   that makes our tests unnecessarily flaky; we work it around by\n   filtering the uninteresting output.\n\n * GitHub CI workflow has learned to trigger Coverity check.\n\n * Overly long label names used in the sequencer machinery are now\n   chopped to fit under filesystem limitation.\n\n * Scalar updates.\n\n * Tweak GitHub Actions CI so that pushing the same commit to multiple\n   branch tips at the same time will not waste building and testing\n   the same thing twice.\n\n * The commit-graph verification code that detects mixture of zero and\n   non-zero generation numbers has been updated.\n\n * \"git diff -w --exit-code\" with various options did not work\n   correctly, which is being addressed.\n\n * transfer.unpackLimit ought to be used as a fallback, but overrode\n   fetch.unpackLimit and receive.unpackLimit instead.\n\n * The use of API between two calls to require_clean_work_tree() from\n   the sequencer code has been cleaned up for consistency.\n\n * \"git diff --no-such-option\" and other corner cases around the exit\n   status of the \"diff\" command has been corrected.\n\n * \"git for-each-ref --sort='contents:size'\" sorts the refs according\n   to size numerically, giving a ref that points at a blob twelve-byte\n   (12) long before showing a blob hundred-byte (100) long.\n\n * Various fixes to the behavior of \"rebase -i\" when the command got\n   interrupted by conflicting changes.\n\n * References from description of the `--patch` option in various\n   manual pages have been simplified and improved.\n\n * \"git grep -e A --no-or -e B\" is accepted, even though the negation\n   of \"or\" did not mean anything, which has been tightened.\n\n * The completion script (in contrib/) has been taught to treat the\n   \"-t\" option to \"git checkout\" and \"git switch\" just like the\n   \"--track\" option, to complete remote-tracking branches.\n\n * \"git diff --no-index -R <(one) <(two)\" did not work correctly,\n   which has been corrected.\n\n * Update \"git maintenance\" timers' implementation based on systemd\n   timers to work with WSL.\n\n * \"git diff --cached\" codepath did not fill the necessary stat\n   information for a file when fsmonitor knows it is clean and ended\n   up behaving as if it is not clean, which has been corrected.\n\n * Clarify how \"alias.foo = : git cmd ; aliased-command-string\" should\n   be spelled with necessary whitespaces around punctuation marks to\n   work.\n\n * HTTP Header redaction code has been adjusted for a newer version of\n   cURL library that shows its traces differently from earlier\n   versions.\n\n * An error message given by \"git send-email\" when given a malformed\n   address did not give correct information, which has been corrected.\n\n * UBSan options were not propagated through the test framework to git\n   run via the httpd, unlike ASan options, which has been corrected.\n\nAlso contains various documentation updates, code clean-ups and minor fixups.\n\n----------------------------------------------------------------\n\nChanges since v2.42.0 are as follows:\n\nCaleb Hill (1):\n      git-clean doc: fix \"without do cleaning\" typo\n\nChristian Hesse (2):\n      t/lib-gpg: forcibly run a trustdb update\n      t/t6300: drop magic filtering\n\nDerrick Stolee (4):\n      upload-pack: fix race condition in error messages\n      scalar: add --[no-]src option\n      setup: add discover_git_directory_reason()\n      scalar reconfigure: help users remove buggy repos\n\nEvan Gates (1):\n      git-config: fix misworded --type=path explanation\n\nHan Young (1):\n      show doc: redirect user to git log manual instead of git diff-tree\n\nJacob Abel (1):\n      builtin/worktree.c: fix typo in \"forgot fetch\" msg\n\nJeff King (17):\n      hashmap: use expected signatures for comparison functions\n      diff-files: avoid negative exit value\n      diff: show usage for unknown builtin_diff_files() options\n      diff: die when failing to read index in git-diff builtin\n      diff: drop useless return from run_diff_{files,index} functions\n      diff: drop useless return values in git-diff helpers\n      diff: drop useless \"status\" parameter from diff_result_code()\n      commit-graph: verify swapped zero/non-zero generation cases\n      test-lib: ignore uninteresting LSan output\n      ci: allow branch selection through \"vars\"\n      ci: deprecate ci/config/allow-ref script\n      http: factor out matching of curl http/2 trace lines\n      http: update curl http/2 info matching for curl 8.3.0\n      test-lib: set UBSAN_OPTIONS to match ASan\n      decorate: add clear_decoration() function\n      revision: clear decoration structs during release_revisions()\n      daemon: free listen_addr before returning\n\nJohannes Schindelin (12):\n      rebase: allow overriding the maximal length of the generated labels\n      ci: avoid building from the same commit in parallel\n      ci(linux-asan-ubsan): let's save some time\n      var: avoid a segmentation fault when `HOME` is unset\n      completion(switch/checkout): treat --track and -t the same\n      maintenance(systemd): support the Windows Subsystem for Linux\n      ci: add a GitHub workflow to submit Coverity scans\n      coverity: cache the Coverity Build Tool\n      coverity: allow overriding the Coverity project\n      coverity: support building on Windows\n      coverity: allow running on macOS\n      coverity: detect and report when the token or project is incorrect\n\nJosip Sokcevic (1):\n      diff-lib: fix check_removed when fsmonitor is on\n\nJunio C Hamano (12):\n      mv: fix error for moving directory to another\n      diff: move the fallback \"--exit-code\" code down\n      diff: mode-only change should be noticed by \"--patch -w --exit-code\"\n      diff: teach \"--stat -w --exit-code\" to notice differences\n      t4040: remove test that succeeded for a wrong reason\n      diff: spell DIFF_INDEX_CACHED out when calling run_diff_index()\n      diff: the -w option breaks --exit-code for --raw and other output modes\n      transfer.unpackLimit: fetch/receive.unpackLimit takes precedence\n      doc: update list archive reference to use lore.kernel.org\n      commit: do not use cryptic \"new_index\" in end-user facing messages\n      am: align placeholder for --whitespace option with apply\n      Git 2.42.1\n\nKousik Sanagavarapu (1):\n      ref-filter: sort numerically when \":size\" is used\n\nMark Ruvald Pedersen (1):\n      sequencer: truncate labels to accommodate loose refs\n\nMichal Suchanek (1):\n      git-push doc: more visibility for -q option\n\nNaomi Ibe (1):\n      builtin/add.c: clean up die() messages\n\nOswald Buddenhagen (6):\n      t9001: fix indentation in test_no_confirm()\n      sequencer: rectify empty hint in call of require_clean_work_tree()\n      sequencer: fix error message on failure to copy SQUASH_MSG\n      t3404-rebase-interactive.sh: fix typos in title of a rewording test\n      sequencer: remove unreachable exit condition in pick_commits()\n      am: fix error message in parse_opt_show_current_patch()\n\nPatrick Steinhardt (4):\n      upload-pack: fix exit code when denying fetch of unreachable object ID\n      doc/git-worktree: mention \"refs/rewritten\" as per-worktree refs\n      doc/git-repack: fix syntax for `-g` shorthand option\n      doc/git-repack: don't mention nonexistent \"--unpacked\" option\n\nPhilippe Blain (1):\n      completion: improve doc for complex aliases\n\nPhillip Wood (7):\n      rebase -i: move unlink() calls\n      rebase -i: remove patch file after conflict resolution\n      sequencer: use rebase_path_message()\n      sequencer: factor out part of pick_commits()\n      rebase: fix rewritten list for failed pick\n      rebase --continue: refuse to commit after failed command\n      rebase -i: fix adding failed command to the todo list\n\nRené Scharfe (5):\n      name-rev: use OPT_HIDDEN_BOOL for --peel-tag\n      grep: use OPT_INTEGER_F for --max-depth\n      grep: reject --no-or\n      diff --no-index: fix -R with stdin\n      parse-options: drop unused parse_opt_ctx_t member\n\nSergey Organov (1):\n      doc/diff-options: fix link to generating patch section\n\nTaylor Blau (7):\n      commit-graph: introduce `commit_graph_generation_from_graph()`\n      t/t5318-commit-graph.sh: test generation zero transitions during fsck\n      commit-graph: avoid repeated mixed generation number warnings\n      leak tests: mark a handful of tests as leak-free\n      leak tests: mark t3321-notes-stripspace.sh as leak-free\n      leak tests: mark t5583-push-branches.sh as leak-free\n      git-send-email.perl: avoid printing undef when validating addresses\n\nWesley Schwengle (2):\n      git-push.txt: fix grammar\n      git-svn: drop FakeTerm hack\n\nŠtěpán Němec (1):\n      doc/cat-file: make synopsis and description less confusing\n\n王常新 (1):\n      merge-ort.c: fix typo 'neeed' to 'needed'\n\n"}]}