git: Update to version 2.43.0

Message ID
State Staged
Commit e49c0a4297a7087db55ee24506466501f8c379fd
Series git: Update to version 2.43.0 |

Commit Message

Adolf Belka Dec. 18, 2023, 5:28 p.m. UTC
  - Update from version 2.42.1 to 2.43.0
- Update of rootfile not required
- Changelog
      Backward Compatibility Notes
	 * The "--rfc" option of "git format-patch" used to be a valid way to
	   override an earlier "--subject-prefix=<something>" on the command
	   line and replace it with "[RFC PATCH]", but from this release, it
	   merely prefixes the string "RFC " in front of the given subject
	   prefix.  If you are negatively affected by this change, please use
	   "--subject-prefix=PATCH --rfc" as a replacement.
	 * In Git 2.42, "git rev-list --stdin" learned to take non-revisions
	   (like "--not") from the standard input, but the way such a "--not" was
	   handled was quite confusing, which has been rethought.  The updated
	   rule is that "--not" given from the command line only affects revs
	   given from the command line that comes but not revs read from the
	   standard input, and "--not" read from the standard input affects
	   revs given from the standard input and not revs given from the
	   command line.
      UI, Workflows & Features
	 * A message written in olden time prevented a branch from getting
	   checked out, saying it is already checked out elsewhere. But these
	   days, we treat a branch that is being bisected or rebased just like
	   a branch that is checked out and protect it from getting modified
	   with the same codepath.  The message has been rephrased to say that
	   the branch is "in use" to avoid confusion.
	 * Hourly and other schedules of "git maintenance" jobs are randomly
	   distributed now.
	 * "git cmd -h" learned to signal which options can be negated by
	   listing such options like "--[no-]opt".
	 * The way authentication related data other than passwords (e.g.,
	   oauth token and password expiration data) are stored in libsecret
	   keyrings has been rethought.
	 * Update the libsecret and wincred credential helpers to correctly
	   match which credential to erase; they erased the wrong entry in
	   some cases.
      Git GUI updates.
	 * "git format-patch" learned a new "--description-file" option that
	   lets cover letter description to be fed; this can be used on
	   detached HEAD where there is no branch description available, and
	   also can override the branch description if there is one.
	 * Use of the "--max-pack-size" option to allow multiple packfiles to
	   be created is now supported even when we are sending unreachable
	   objects to cruft packs.
	 * "git format-patch --rfc --subject-prefix=<foo>" used to ignore the
	   "--subject-prefix" option and used "[RFC PATCH]"; now we will add
	   "RFC" prefix to whatever subject prefix is specified.
	 * "git log --format" has been taught the %(decorate) placeholder for
	   further customization over what the "--decorate" option offers.
	 * The default log message created by "git revert", when reverting a
	   commit that records a revert, has been tweaked, to encourage people
	   to describe complex "revert of revert of revert" situations better in
	   their own words.
	 * The command-line completion support (in contrib/) learned to
	   complete "git commit --trailer=" for possible trailer keys.
	 * "git update-index" learned the "--show-index-version" option to
	   inspect the index format version used by the on-disk index file.
	 * "git diff" learned the "diff.statNameWidth" configuration variable,
	   to give the default width for the name part in the "--stat" output.
	 * "git range-diff --notes=foo" compared "log --notes=foo --notes" of
	   the two ranges, instead of using just the specified notes tree,
	   which has been corrected to use only the specified notes tree.
	 * The command line completion script (in contrib/) can be told to
	   complete aliases by including ": git <cmd> ;" in the alias to tell
	   it that the alias should be completed in a similar way to how "git
	   <cmd>" is completed.  The parsing code for the alias has been
	   loosened to allow ';' without an extra space before it.
	 * "git for-each-ref" and friends learned to apply mailmap to
	   authorname and other fields in a more flexible way than using
	   separate placeholder letters like %a[eElL] every time we want to
	   come up with small variants.
	 * "git repack" machinery learned to pay attention to the "--filter="
	 * "git repack" learned the "--max-cruft-size" option to prevent cruft
	   packs from growing without bounds.
	 * "git merge-tree" learned to take strategy backend specific options
	   via the "-X" option, like "git merge" does.
	 * "git log" and friends learned the "--dd" option that is a
	   short-hand for "--diff-merges=first-parent -p".
	 * The attribute subsystem learned to honor the "attr.tree"
	   configuration variable that specifies which tree to read the
	   .gitattributes files from.
	 * "git merge-file" learns a mode to read three variants of the
	   contents to be merged from blob objects.
      Performance, Internal Implementation, Development Support etc.
	 * "git check-attr" has been taught to work better with sparse-index.
	 * It may be tempting to leave the help text NULL for a command line
	   option that is either hidden or too obvious, but "git subcmd -h"
	   and "git subcmd --help-all" would have segfaulted if done so.  Now
	   the help text is truly optional.
	 * 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 messages
	   that make our tests unnecessarily flaky; we work around it by
	   filtering the uninteresting output.
	 * Unused parameters to functions are marked as such, and/or removed,
	   in order to bring us closer to "-Wunused-parameter" clean.
	 * The code to keep track of existing packs in the repository while
	   repacking has been refactored.
	 * The "streaming" interface used for bulk-checkin codepath has been
	   narrowed to take only blob objects for now, with no real loss of
	 * GitHub CI workflow has learned to trigger Coverity check.
	 * Test coverage for trailers has been improved.
	 * The code to iterate over loose references has been optimized to
	   reduce the number of lstat() system calls.
	 * The codepaths that read "chunk" formatted files have been corrected
	   to pay attention to the chunk size and notice broken files.
	 * Replace macos-12 used at GitHub CI with macos-13.
	   (merge 682a868f67 js/ci-use-macos-13 later to maint).

Signed-off-by: Adolf Belka <>
 lfs/git | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)


diff --git a/lfs/git b/lfs/git
index b74b3c8d8..648921525 100644
--- a/lfs/git
+++ b/lfs/git
@@ -24,7 +24,7 @@ 
 include Config
-VER        = 2.42.1
+VER        = 2.43.0
 SUMMARY    = Fast, scalable, distributed revision control system
 THISAPP    = git-$(VER)
@@ -33,7 +33,7 @@  DL_FROM    = $(URL_IPFIRE)
 PROG       = git
-PAK_VER    = 30
+PAK_VER    = 31
 DEPS       = perl-Authen-SASL perl-MIME-Base64 perl-Net-SMTP-SSL
@@ -47,7 +47,7 @@  objects = $(DL_FILE)
-$(DL_FILE)_BLAKE2 = 913427edcf02bc6ee4b07ba9ceb2f7ebc1482512016d24f838439150809ca2f8b496ec705f7894c5cc1b66a10e3d95bbff5b004e20b0637e29a805f07578cd39
+$(DL_FILE)_BLAKE2 = 5da19211df56e306eb95cef65b2a987134d2f0853dc1db30e1cc99d0357b3f5ab7f1e434e73948d7b6ad6b7bfc44f75349479f46050ee63a6516c72b774b4eba
 install : $(TARGET)