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