From: Junio C Hamano <gitster@pobox.com>
To: git@vger.kernel.org
Cc: git-packagers@googlegroups.com
Subject: [ANNOUNCE] Git v2.33.1
Date: Tue, 12 Oct 2021 17:18:53 -0700 [thread overview]
Message-ID: <xmqqczo922vm.fsf@gitster.g> (raw)
The latest maintenance release Git v2.33.1 is now available at the
usual places. There is nothing spectacular; just backporting
accumulated fixes that already are merged for the next feature
release.
The tarballs are found at:
https://www.kernel.org/pub/software/scm/git/
The following public repositories all have a copy of the 'v2.33.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.33.1 Release Notes
========================
This primarily is to backport various fixes accumulated during the
development towards Git 2.34, the next feature release.
Fixes since v2.33
-----------------
* The unicode character width table (used for output alignment) has
been updated.
* Input validation of "git pack-objects --stdin-packs" has been
corrected.
* Bugfix for common ancestor negotiation recently introduced in "git
push" codepath.
* "git pull" had various corner cases that were not well thought out
around its --rebase backend, e.g. "git pull --ff-only" did not stop
but went ahead and rebased when the history on other side is not a
descendant of our history. The series tries to fix them up.
* "git apply" miscounted the bytes and failed to read to the end of
binary hunks.
* "git range-diff" code clean-up.
* "git commit --fixup" now works with "--edit" again, after it was
broken in v2.32.
* Use upload-artifacts v1 (instead of v2) for 32-bit linux, as the
new version has a blocker bug for that architecture.
* Checking out all the paths from HEAD during the last conflicted
step in "git rebase" and continuing would cause the step to be
skipped (which is expected), but leaves MERGE_MSG file behind in
$GIT_DIR and confuses the next "git commit", which has been
corrected.
* Various bugs in "git rebase -r" have been fixed.
* mmap() imitation used to call xmalloc() that dies upon malloc()
failure, which has been corrected to just return an error to the
caller to be handled.
* "git diff --relative" segfaulted and/or produced incorrect result
when there are unmerged paths.
* The delayed checkout code path in "git checkout" etc. were chatty
even when --quiet and/or --no-progress options were given.
* "git branch -D <branch>" used to refuse to remove a broken branch
ref that points at a missing commit, which has been corrected.
* Build update for Apple clang.
* The parser for the "--nl" option of "git column" has been
corrected.
* "git upload-pack" which runs on the other side of "git fetch"
forgot to take the ref namespaces into account when handling
want-ref requests.
* The sparse-index support can corrupt the index structure by storing
a stale and/or uninitialized data, which has been corrected.
* Buggy tests could damage repositories outside the throw-away test
area we created. We now by default export GIT_CEILING_DIRECTORIES
to limit the damage from such a stray test.
* Even when running "git send-email" without its own threaded
discussion support, a threading related header in one message is
carried over to the subsequent message to result in an unwanted
threading, which has been corrected.
* The output from "git fast-export", when its anonymization feature
is in use, showed an annotated tag incorrectly.
* Recent "diff -m" changes broke "gitk", which has been corrected.
* "git maintenance" scheduler fix for macOS.
* A pathname in an advice message has been made cut-and-paste ready.
* The "git apply -3" code path learned not to bother the lower level
merge machinery when the three-way merge can be trivially resolved
without the content level merge.
* The code that optionally creates the *.rev reverse index file has
been optimized to avoid needless computation when it is not writing
the file out.
* "git range-diff -I... <range> <range>" segfaulted, which has been
corrected.
* The order in which various files that make up a single (conceptual)
packfile has been reevaluated and straightened up. This matters in
correctness, as an incomplete set of files must not be shown to a
running Git.
* The "mode" word is useless in a call to open(2) that does not
create a new file. Such a call in the files backend of the ref
subsystem has been cleaned up.
* "git update-ref --stdin" failed to flush its output as needed,
which potentially led the conversation to a deadlock.
* When "git am --abort" fails to abort correctly, it still exited
with exit status of 0, which has been corrected.
* Correct nr and alloc members of strvec struct to be of type size_t.
* "git stash", where the tentative change involves changing a
directory to a file (or vice versa), was confused, which has been
corrected.
* "git clone" from a repository whose HEAD is unborn into a bare
repository didn't follow the branch name the other side used, which
is corrected.
* "git cvsserver" had a long-standing bug in its authentication code,
which has finally been corrected (it is unclear and is a separate
question if anybody is seriously using it, though).
* "git difftool --dir-diff" mishandled symbolic links.
* Sensitive data in the HTTP trace were supposed to be redacted, but
we failed to do so in HTTP/2 requests.
* "make clean" has been updated to remove leftover .depend/
directories, even when it is not told to use them to compute header
dependencies.
* Protocol v0 clients can get stuck parsing a malformed feature line.
Also contains various documentation updates and code clean-ups.
----------------------------------------------------------------
Changes since v2.33.0 are as follows:
Alex Henrie (1):
pull: abort if --ff-only is given and fast-forwarding is impossible
Andrzej Hunt (1):
connect: also update offset for features without values
Bagas Sanjaya (1):
Documentation: fix default directory of git bugreport -o
Carlo Marcelo Arenas Belón (12):
build: update detect-compiler for newer Xcode version
builtin/merge: avoid -Wformat-extra-args from ancient Xcode
ci: run a pedantic build as part of the GitHub workflow
ci: update freebsd 12 cirrus job
ci: use upload-artifacts v1 for dockerized jobs
remote: avoid -Wunused-but-set-variable in gcc with -DNDEBUG
tree-diff: fix leak when not HAVE_ALLOCA_H
t0000: avoid masking git exit value through pipes
git-cvsserver: use crypt correctly to compare password hashes
git-cvsserver: protect against NULL in crypt(3)
Documentation: cleanup git-cvsserver
unicode: update the width tables to Unicode 14
David Aguilar (1):
difftool: fix symlink-file writing in dir-diff mode
Derrick Stolee (1):
maintenance: skip bootout/bootstrap when plist is registered
Elijah Newren (25):
t7601: test interaction of merge/rebase/fast-forward flags and options
t7601: add tests of interactions with multiple merge heads and config
pull: since --ff-only overrides, handle it first
pull: make --rebase and --no-rebase override pull.ff=only
pull: abort by default when fast-forwarding is not possible
pull: update docs & code for option compatibility with rebasing
pull: fix handling of multiple heads
git-rebase.txt: correct antiquated claims about --rebase-merges
directory-rename-detection.txt: small updates due to merge-ort optimizations
Documentation: edit awkward references to `git merge-recursive`
merge-strategies.txt: update wording for the resolve strategy
merge-strategies.txt: do not imply using copy detection is desired
merge-strategies.txt: avoid giving special preference to patience algorithm
merge-strategies.txt: fix simple capitalization error
git-rebase.txt: correct out-of-date and misleading text about renames
merge-strategies.txt: add coverage of the `ort` merge strategy
Update error message and code comment
t3903: document a pair of directory/file bugs
stash: avoid feeding directories to update-index
stash: restore untracked files AFTER restoring tracked files
git-am.txt: clarify --abort behavior
t4151: add a few am --abort tests
am: fix incorrect exit status on am fail to abort
trace2.h: fix trivial comment typo
merge-ort: fix completely wrong comment
Felipe Contreras (4):
completion: bash: fix prefix detection in branch.*
completion: bash: fix for suboptions with value
completion: bash: fix for multiple dash commands
completion: bash: add correct suffix in variables
Jeff Hostetler (1):
sparse-index: copy dir_hash in ensure_full_index()
Jeff King (13):
build: clang version may not be followed by extra words
range-diff: drop useless "offset" variable from read_patches()
range-diff: handle unterminated lines in read_patches()
range-diff: use ssize_t for parsed "len" in read_patches()
apply: keep buffer/size pair in sync when parsing binary hunks
t5323: drop mentions of "master"
logmsg_reencode(): warn when iconv() fails
docs: use "character encoding" to refer to commit-object encoding
t5562: use alarm() to interrupt timed child-wait
strvec: use size_t to store nr and alloc
t1400: avoid SIGPIPE race condition on fifo
clone: handle unborn branch in bare repos
http: match headers case-insensitively when redacting
Joel Klinghed (1):
commit: restore --edit when combined with --fixup
Johannes Schindelin (1):
maintenance: create `launchctl` configuration using a lock file
Johannes Sixt (1):
t9001: PATH must not use Windows-style paths
Jonathan Tan (3):
send-pack: fix push.negotiate with remote helper
send-pack: fix push nego. when remote has refs
fetch: die on invalid --negotiation-tip hash
Josh Steadmon (1):
connect, protocol: log negotiated protocol version
Junio C Hamano (4):
build: catch clang that identifies itself as "$VENDOR clang"
apply: resolve trivial merge without hitting ll-merge with "--3way"
hash-object: prefix_filename() returns allocated memory these days
Git 2.33.1
Kim Altintop (3):
t5730: introduce fetch command helper
upload-pack.c: treat want-ref relative to namespace
docs: clarify the interaction of transfer.hideRefs and namespaces
Kyle Zhao (1):
pack-revindex.h: correct the time complexity descriptions
Marvin Häuser (1):
send-email: avoid incorrect header propagation
Matheus Tavares (1):
checkout: make delayed checkout respect --quiet and --no-progress
Matthias Aßhauer (1):
documentation: add documentation for 'git version'
Mickey Endito (1):
t5582: remove spurious 'cd "$D"' line
Mike Hommey (1):
credential: fix leak in credential_apply_config()
Patrick Steinhardt (1):
update-ref: fix streaming of status updates
Philip Oakley (1):
doc: config, tell readers of `git help --config`
Phillip Wood (7):
t3403: fix commit authorship
rebase --apply: restore some tests
rebase --continue: remove .git/MERGE_MSG
rebase -r: make 'merge -c' behave like reword
rebase -i: add another reword test
rebase -r: don't write .git/MERGE_MSG when fast-forwarding
rebase -r: fix merge -c with a merge strategy
René Scharfe (10):
compat: let git_mmap use malloc(3) directly
xopen: explicitly report creation failures
use xopen() to handle fatal open(2) failures
show-branch: simplify rev_is_head()
archive: convert queue_directory to struct object_id
branch: allow deleting dangling branches with --force
range-diff: avoid segfault with -I
setup: use xopen and xdup in sanitize_stdfds
refs/files-backend: remove unused open mode parameter
compression: drop write-only core_compression_* variables
SZEDER Gábor (3):
Makefile: remove archives before manipulating them with 'ar'
column: fix parsing of the '--nl' option
test-lib: set GIT_CEILING_DIRECTORIES to protect the surrounding repository
Sergey Organov (1):
diff-index: restore -c/--cc options handling
Takashi Iwai (1):
completion: tcsh: Fix regression by drop of wrapper functions
Tal Kelrich (1):
fast-export: fix anonymized tag using original length
Taylor Blau (4):
bulk-checkin.c: store checksum directly
pack-write.c: rename `.idx` files after `*.rev`
builtin/repack.c: move `.idx` files into place last
builtin/index-pack.c: move `.idx` files into place last
Zoker (1):
doc: fix syntax error and the format of printf
Ævar Arnfjörð Bjarmason (20):
pack-objects tests: cover blindspots in stdin handling
pack-objects: fix segfault in --stdin-packs option
bundle doc: rewrite the "DESCRIPTION" section
bundle doc: elaborate on object prerequisites
bundle doc: elaborate on rev<->ref restriction
bundle doc: replace "basis" with "prerequsite(s)"
ls-remote: set packet_trace_identity(<name>)
rebase: emit one "fatal" in "fatal: fatal: <error>"
protocol-caps.c: fix memory leak in send_info()
mailmap.c: fix a memory leak in free_mailap_{info,entry}()
gc: remove trailing dot from "gc.log" line
send-email: fix a "first config key wins" regression in v2.33.0
Makefile: remove the check_bindir script
pack-write: skip *.rev work when not writing *.rev
pack.h: line-wrap the definition of finish_tmp_packfile()
pack-write: refactor renaming in finish_tmp_packfile()
index-pack: refactor renaming in final()
pack-write: split up finish_tmp_packfile() function
pack-objects: rename .idx files into place after .bitmap files
Makefile: clean .depend dirs under COMPUTE_HEADER_DEPENDENCIES != yes
Đoàn Trần Công Danh (3):
t6300: don't run cat-file on non-existent object
t6300: check for cat-file exit status code
diff-lib: ignore paths that are outside $cwd if --relative asked
reply other threads:[~2021-10-13 0:19 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqczo922vm.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git-packagers@googlegroups.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.