Skip to content
Snippets Groups Projects
This project is mirrored from https://*****:*****@gitlab.com/git-scm/git.git. Pull mirroring updated .
  1. Feb 06, 2025
    • Junio C Hamano's avatar
      Merge branch 'ps/leakfixes-0129' · 5f338eae
      Junio C Hamano authored
      A few more leakfixes.
      
      * ps/leakfixes-0129:
        scalar: free result of `remote_default_branch()`
        unix-socket: fix memory leak when chdir(3p) fails
      5f338eae
    • Junio C Hamano's avatar
      Merge branch 'ps/zlib-ng' · 9d0e81e2
      Junio C Hamano authored
      The code paths to interact with zlib has been cleaned up in
      preparation for building with zlib-ng.
      
      * ps/zlib-ng:
        ci: make "linux-musl" job use zlib-ng
        ci: switch linux-musl to use Meson
        compat/zlib: allow use of zlib-ng as backend
        git-zlib: cast away potential constness of `next_in` pointer
        compat/zlib: provide stubs for `deflateSetHeader()`
        compat/zlib: provide `deflateBound()` shim centrally
        git-compat-util: move include of "compat/zlib.h" into "git-zlib.h"
        compat: introduce new "zlib.h" header
        git-compat-util: drop `z_const` define
        compat: drop `uncompress2()` compatibility shim
      9d0e81e2
    • Junio C Hamano's avatar
      Merge branch 'js/bundle-unbundle-fd-reuse-fix' · 9fad473f
      Junio C Hamano authored
      The code path used when "git fetch" fetches from a bundle file
      closed the same file descriptor twice, which sometimes broke things
      unexpectedly when the file descriptor was reused, which has been
      corrected.
      
      * js/bundle-unbundle-fd-reuse-fix:
        bundle: avoid closing file descriptor twice
      9fad473f
    • Junio C Hamano's avatar
      Merge branch 'ps/ci-misc-updates' · 2bf3c7fa
      Junio C Hamano authored
      CI updates (containerization, dropping stale ones, etc.).
      
      * ps/ci-misc-updates:
        ci: remove stale code for Azure Pipelines
        ci: use latest Ubuntu release
        ci: stop special-casing for Ubuntu 16.04
        gitlab-ci: add linux32 job testing against i386
        gitlab-ci: remove the "linux-old" job
        github: simplify computation of the job's distro
        github: convert all Linux jobs to be containerized
        github: adapt containerized jobs to be rootless
        t7422: fix flaky test caused by buffered stdout
        t0060: fix EBUSY in MinGW when setting up runtime prefix
      2bf3c7fa
  2. Feb 03, 2025
    • Junio C Hamano's avatar
      The seventh batch · bc204b74
      Junio C Hamano authored
      
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      bc204b74
    • Junio C Hamano's avatar
      Merge branch 'kn/reflog-migration-fix-fix' · 1f124f30
      Junio C Hamano authored
      Fix bugs in an earlier attempt to fix "git refs migration".
      
      * kn/reflog-migration-fix-fix:
        refs/reftable: fix uninitialized memory access of `max_index`
        reftable: write correct max_update_index to header
      1f124f30
    • Junio C Hamano's avatar
      Merge branch 'kn/pack-write-with-reduced-globals' · b83a2f90
      Junio C Hamano authored
      Code clean-up.
      
      * kn/pack-write-with-reduced-globals:
        pack-write: pass hash_algo to internal functions
        pack-write: pass hash_algo to `write_rev_file()`
        pack-write: pass hash_algo to `write_idx_file()`
        pack-write: pass repository to `index_pack_lockfile()`
        pack-write: pass hash_algo to `fixup_pack_header_footer()`
      b83a2f90
    • Junio C Hamano's avatar
      Merge branch 'ps/build-meson-fixes' · f49905d4
      Junio C Hamano authored
      More build fixes and enhancements on meson based build procedure.
      
      * ps/build-meson-fixes:
        ci: wire up Visual Studio build with Meson
        ci: raise error when Meson generates warnings
        meson: fix compilation with Visual Studio
        meson: make the CSPRNG backend configurable
        meson: wire up fuzzers
        meson: wire up generation of distribution archive
        meson: wire up development environments
        meson: fix dependencies for generated headers
        meson: populate project version via GIT-VERSION-GEN
        GIT-VERSION-GEN: allow running without input and output files
        GIT-VERSION-GEN: simplify computing the dirty marker
      f49905d4
    • Junio C Hamano's avatar
      Merge branch 'ps/3.0-remote-deprecation' · 803b5aca
      Junio C Hamano authored
      Following the procedure we established to introduce breaking
      changes for Git 3.0, allow an early opt-in for removing support of
      $GIT_DIR/branches/ and $GIT_DIR/remotes/ directories to configure
      remotes.
      
      * ps/3.0-remote-deprecation:
        remote: announce removal of "branches/" and "remotes/"
        builtin/pack-redundant: remove subcommand with breaking changes
        ci: repurpose "linux-gcc" job for deprecations
        ci: merge linux-gcc-default into linux-gcc
        Makefile: wire up build option for deprecated features
      803b5aca
    • Junio C Hamano's avatar
      Merge branch 'jk/combine-diff-cleanup' · c43136d6
      Junio C Hamano authored
      Code clean-up for code paths around combined diff.
      
      * jk/combine-diff-cleanup:
        tree-diff: make list tail-passing more explicit
        tree-diff: simplify emit_path() list management
        tree-diff: use the name "tail" to refer to list tail
        tree-diff: drop list-tail argument to diff_tree_paths()
        combine-diff: drop public declaration of combine_diff_path_size()
        tree-diff: inline path_appendnew()
        tree-diff: pass whole path string to path_appendnew()
        tree-diff: drop path_appendnew() alloc optimization
        run_diff_files(): de-mystify the size of combine_diff_path struct
        diff: add a comment about combine_diff_path.parent.path
        combine-diff: use pointer for parent paths
        tree-diff: clear parent array in path_appendnew()
        combine-diff: add combine_diff_path_new()
        run_diff_files(): delay allocation of combine_diff_path
      c43136d6
    • Junio C Hamano's avatar
      Merge branch 'tb/unsafe-hash-cleanup' · caf17423
      Junio C Hamano authored
      The API around choosing to use unsafe variant of SHA-1
      implementation has been updated in an attempt to make it harder to
      abuse.
      
      * tb/unsafe-hash-cleanup:
        hash.h: drop unsafe_ function variants
        csum-file: introduce hashfile_checkpoint_init()
        t/helper/test-hash.c: use unsafe_hash_algo()
        csum-file.c: use unsafe_hash_algo()
        hash.h: introduce `unsafe_hash_algo()`
        csum-file.c: extract algop from hashfile_checksum_valid()
        csum-file: store the hash algorithm as a struct field
        t/helper/test-tool: implement sha1-unsafe helper
      caf17423
  3. Jan 31, 2025
  4. Jan 30, 2025
    • Patrick Steinhardt's avatar
      scalar: free result of `remote_default_branch()` · 087740d6
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      We don't free the result of `remote_default_branch()`, leading to a
      memory leak. This leak is exposed by t9211, but only when run with Meson
      with the `-Db_sanitize=leak` option:
      
          Direct leak of 5 byte(s) in 1 object(s) allocated from:
              #0 0x5555555cfb93 in malloc (scalar+0x7bb93)
              #1 0x5555556b05c2 in do_xmalloc ../wrapper.c:55:8
              #2 0x5555556b06c4 in do_xmallocz ../wrapper.c:89:8
              #3 0x5555556b0656 in xmallocz ../wrapper.c:97:9
              #4 0x5555556b0728 in xmemdupz ../wrapper.c:113:16
              #5 0x5555556b07a7 in xstrndup ../wrapper.c:119:9
              #6 0x5555555d3a4b in remote_default_branch ../scalar.c:338:14
              #7 0x5555555d20e6 in cmd_clone ../scalar.c:493:28
              #8 0x5555555d196b in cmd_main ../scalar.c:992:14
              #9 0x5555557c4059 in main ../common-main.c:64:11
              #10 0x7ffff7a2a1fb in __libc_start_call_main (/nix/store/h7zcxabfxa7v5xdna45y2hplj31ncf8a-glibc-2.40-36/lib/libc.so.6+0x2a1fb) (BuildId: 0a855678aa0cb573cecbb2bcc73ab8239ec472d0)
              #11 0x7ffff7a2a2b8 in __libc_start_main@GLIBC_2.2.5 (/nix/store/h7zcxabfxa7v5xdna45y2hplj31ncf8a-glibc-2.40-36/lib/libc.so.6+0x2a2b8) (BuildId: 0a855678aa0cb573cecbb2bcc73ab8239ec472d0)
              #12 0x555555592054 in _start (scalar+0x3e054)
      
          DEDUP_TOKEN: __interceptor_malloc--do_xmalloc--do_xmallocz--xmallocz--xmemdupz--xstrndup--remote_default_branch--cmd_clone--cmd_main--main--__libc_start_call_main--__libc_start_main@GLIBC_2.2.5--_start
          SUMMARY: LeakSanitizer: 5 byte(s) leaked in 1 allocation(s).
      
      As the `branch` variable may contain a string constant obtained from
      parsing command line arguments we cannot free the leaking variable
      directly. Instead, introduce a new `branch_to_free` variable that only
      ever gets assigned the allocated string and free that one to plug the
      leak.
      
      It is unclear why the leak isn't flagged when running the test via our
      Makefile.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      087740d6
    • Patrick Steinhardt's avatar
      unix-socket: fix memory leak when chdir(3p) fails · c5fe29f6
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      When trying to create a Unix socket in a path that exceeds the maximum
      socket name length we try to first change the directory into the parent
      folder before creating the socket to reduce the length of the name. When
      this fails we error out of `unix_sockaddr_init()` with an error code,
      which indicates to the caller that the context has not been initialized.
      Consequently, they don't release that context.
      
      This leads to a memory leak: when we have already populated the context
      with the original directory that we need to chdir(3p) back into, but
      then the chdir(3p) into the socket's parent directory fails, then we
      won't release the original directory's path. The leak is exposed by
      t0301, but only when running tests in a directory hierarchy whose path
      is long enough to make the socket name length exceed the maximum socket
      name length:
      
          Direct leak of 129 byte(s) in 1 object(s) allocated from:
              #0 0x5555555e85c6 in realloc.part.0 lsan_interceptors.cpp.o
              #1 0x55555590e3d6 in xrealloc ../wrapper.c:140:8
              #2 0x5555558c8fc6 in strbuf_grow ../strbuf.c:114:2
              #3 0x5555558cacab in strbuf_getcwd ../strbuf.c:605:3
              #4 0x555555923ff6 in unix_sockaddr_init ../unix-socket.c:65:7
              #5 0x555555923e42 in unix_stream_connect ../unix-socket.c:84:6
              #6 0x55555562a984 in send_request ../builtin/credential-cache.c:46:11
              #7 0x55555562a89e in do_cache ../builtin/credential-cache.c:108:6
              #8 0x55555562a655 in cmd_credential_cache ../builtin/credential-cache.c:178:3
              #9 0x555555700547 in run_builtin ../git.c:480:11
              #10 0x5555556ff0e0 in handle_builtin ../git.c:740:9
              #11 0x5555556ffee8 in run_argv ../git.c:807:4
              #12 0x5555556fee6b in cmd_main ../git.c:947:19
              #13 0x55555593f689 in main ../common-main.c:64:11
              #14 0x7ffff7a2a1fb in __libc_start_call_main (/nix/store/h7zcxabfxa7v5xdna45y2hplj31ncf8a-glibc-2.40-36/lib/libc.so.6+0x2a1fb) (BuildId: 0a855678aa0cb573cecbb2bcc73ab8239ec472d0)
              #15 0x7ffff7a2a2b8 in __libc_start_main@GLIBC_2.2.5 (/nix/store/h7zcxabfxa7v5xdna45y2hplj31ncf8a-glibc-2.40-36/lib/libc.so.6+0x2a2b8) (BuildId: 0a855678aa0cb573cecbb2bcc73ab8239ec472d0)
              #16 0x5555555ad1d4 in _start (git+0x591d4)
      
          DEDUP_TOKEN: ___interceptor_realloc.part.0--xrealloc--strbuf_grow--strbuf_getcwd--unix_sockaddr_init--unix_stream_connect--send_request--do_cache--cmd_credential_cache--run_builtin--handle_builtin--run_argv--cmd_main--main--__libc_start_call_main--__libc_start_main@GLIBC_2.2.5--_start
          SUMMARY: LeakSanitizer: 129 byte(s) leaked in 1 allocation(s).
      
      Fix this leak.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      c5fe29f6
  5. Jan 29, 2025
    • Junio C Hamano's avatar
      The fifth batch · 3b0d05c4
      Junio C Hamano authored
      
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      3b0d05c4
    • Junio C Hamano's avatar
      Merge branch 'ps/reflog-migration-with-logall-fix' · 296cf82f
      Junio C Hamano authored
      The "git refs migrate" command did not migrate the reflog for
      refs/stash, which is the contents of the stashes, which has been
      corrected.
      
      * ps/reflog-migration-with-logall-fix:
        refs: fix migration of reflogs respecting "core.logAllRefUpdates"
      296cf82f
    • Junio C Hamano's avatar
      Merge branch 'am/trace2-with-valueless-true' · c5216a1b
      Junio C Hamano authored
      The trace2 code was not prepared to show a configuration variable
      that is set to true using the valueless true syntax, which has been
      corrected.
      
      * am/trace2-with-valueless-true:
        trace2: prevent segfault on config collection with valueless true
      c5216a1b
    • Junio C Hamano's avatar
      Merge branch 'kn/reflog-symref-fix' · d205f06a
      Junio C Hamano authored
      reflog entries for symbolic ref updates were broken, which has been
      corrected.
      
      * kn/reflog-symref-fix:
        refs: fix creation of reflog entries for symrefs
      d205f06a
    • Junio C Hamano's avatar
      Merge branch 'rs/ref-fitler-used-atoms-value-fix' · 8d6240d4
      Junio C Hamano authored
      "git branch --sort=..." and "git for-each-ref --format=... --sort=..."
      did not work as expected with some atoms, which has been corrected.
      
      * rs/ref-fitler-used-atoms-value-fix:
        ref-filter: remove ref_format_clear()
        ref-filter: move is-base tip to used_atom
        ref-filter: move ahead-behind bases into used_atom
      8d6240d4
    • Junio C Hamano's avatar
      Merge branch 'ja/doc-commit-markup-updates' · de56e1d7
      Junio C Hamano authored
      Doc updates.
      
      * ja/doc-commit-markup-updates:
        doc: migrate git-commit manpage secondary files to new format
        doc: convert git commit config to new format
        doc: make more direct explanations in git commit options
        doc: the mode param of -u of git commit is optional
        doc: apply new documentation guidelines to git commit
      de56e1d7
    • Junio C Hamano's avatar
      Merge branch 'ds/path-walk-1' · f046ab2d
      Junio C Hamano authored
      Introduce a new API to visit objects in batches based on a common
      path, or by type.
      
      * ds/path-walk-1:
        path-walk: drop redundant parse_tree() call
        path-walk: reorder object visits
        path-walk: mark trees and blobs as UNINTERESTING
        path-walk: visit tags and cached objects
        path-walk: allow consumer to specify object types
        t6601: add helper for testing path-walk API
        test-lib-functions: add test_cmp_sorted
        path-walk: introduce an object walk by path
      f046ab2d
  6. Jan 28, 2025
    • Patrick Steinhardt's avatar
      ci: make "linux-musl" job use zlib-ng · 78cdeed4
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      We don't yet have any test coverage for the new zlib-ng backend as part
      of our CI. Add it by installing zlib-ng in Alpine Linux, which causes
      Meson to pick it up automatically.
      
      Note that we are somewhat limited with regards to where we run that job:
      Debian-based distributions don't have zlib-ng in their repositories,
      Fedora has it but doesn't run tests, and Alma Linux doesn't have the
      package either. Alpine Linux does have it available and is running our
      test suite, which is why it was picked.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      78cdeed4
    • Patrick Steinhardt's avatar
      ci: switch linux-musl to use Meson · 84bb5eea
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      Switch over the "linux-musl" job to use Meson instead of Makefiles. This
      is done due to multiple reasons:
      
        - It simplifies our CI infrastructure a bit as we don't have to
          manually specify a couple of build options anymore.
      
        - It verifies that Meson detects and sets those build options
          automatically.
      
        - It makes it easier for us to wire up a new CI job using zlib-ng as
          backend.
      
      One platform compatibility that Meson cannot easily detect automatically
      is the `GIT_TEST_UTF8_LOCALE` variable used in tests. Wire up a build
      option for it, which we set via a new "MESONFLAGS" environment variable.
      
      Note that we also drop the CC variable, which is set to "gcc". We
      already default to GCC when CC is unset in "ci/lib.sh", so this is not
      needed.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      84bb5eea
    • Patrick Steinhardt's avatar
      compat/zlib: allow use of zlib-ng as backend · b9d6f643
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      The zlib-ng library is a hard fork of the old and venerable zlib
      library. It describes itself as zlib replacement with optimizations for
      "next generation" systems. As such, it contains several implementations
      of central algorithms using for example SSE2, AVX2 and other vectorized
      CPU intrinsics that supposedly speed up in- and deflating data.
      
      And indeed, compiling Git against zlib-ng leads to a significant speedup
      when reading objects. The following benchmark uses git-cat-file(1) with
      `--batch --batch-all-objects` in the Git repository:
      
          Benchmark 1: zlib
            Time (mean ± σ):     52.085 s ±  0.141 s    [User: 51.500 s, System: 0.456 s]
            Range (min … max):   52.004 s … 52.335 s    5 runs
      
          Benchmark 2: zlib-ng
            Time (mean ± σ):     40.324 s ±  0.134 s    [User: 39.731 s, System: 0.490 s]
            Range (min … max):   40.135 s … 40.484 s    5 runs
      
          Summary
            zlib-ng ran
              1.29 ± 0.01 times faster than zlib
      
      So we're looking at a ~25% speedup compared to zlib. This is of course
      an extreme example, as it makes us read through all objects in the
      repository. But regardless, it should be possible to see some sort of
      speedup in most commands that end up accessing the object database.
      
      The zlib-ng library provides a compatibility layer that makes it a
      proper drop-in replacement for zlib: nothing needs to change in the
      build system to support it. Unfortunately though, this mode isn't easy
      to use on most systems because distributions do not allow you to install
      zlib-ng in that way, as that would mean that the zlib library would be
      globally replaced. Instead, many distributions provide a package that
      installs zlib-ng without the compatibility layer. This version does
      provide effectively the same APIs like zlib does, but all of the symbols
      are prefixed with `zng_` to avoid symbol collisions.
      
      Implement a new build option that allows us to link against zlib-ng
      directly. If set, we redefine zlib symbols so that we use the `zng_`
      prefixed versions thereof provided by that library. Like this, it
      becomes possible to install both zlib and zlib-ng (without the compat
      layer) and then pick whichever library one wants to link against for
      Git.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      b9d6f643
    • Patrick Steinhardt's avatar
      git-zlib: cast away potential constness of `next_in` pointer · 9170c03f
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      The `struct git_zstream::next_in` variable points to the input data and
      is used in combination with `struct z_stream::next_in`. While that
      latter field is not marked as a constant in zlib, it is marked as such
      in zlib-ng. This causes a couple of compiler errors when we try to
      assign these fields to one another due to mismatching constness.
      
      Fix the issue by casting away the potential constness of `next_in`.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      9170c03f
    • Patrick Steinhardt's avatar
      compat/zlib: provide stubs for `deflateSetHeader()` · bb5d35c1
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      The function `deflateSetHeader()` has been introduced with zlib v1.2.2.1,
      so we don't use it when linking against an older version of it. Refactor
      the code to instead provide a central stub via "compat/zlib.h" so that
      we can adapt it based on whether or not we use zlib-ng in a subsequent
      commit.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      bb5d35c1
    • Patrick Steinhardt's avatar
      compat/zlib: provide `deflateBound()` shim centrally · a2dcb699
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      The `deflateBound()` function has only been introduced with zlib 1.2.0.
      When linking against a zlib version older than that we thus provide our
      own compatibility shim. Move this shim into "compat/zlib.h" so that we
      can adapt it based on whether or not we use zlib-ng in a subsequent
      commit.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      a2dcb699
    • Patrick Steinhardt's avatar
      git-compat-util: move include of "compat/zlib.h" into "git-zlib.h" · 41f1a843
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      We include "compat/zlib.h" in "git-compat-util.h", which is
      unnecessarily broad given that we only have a small handful of files
      that use the zlib library. Move the header into "git-zlib.h" instead and
      adapt users of zlib to include that header.
      
      One exception is the reftable library, as we don't want to use the
      Git-specific wrapper of zlib there, so we include "compat/zlib.h"
      instead. Furthermore, we move the include into "reftable/system.h" so
      that users of the library other than Git can wire up zlib themselves.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      41f1a843
    • Patrick Steinhardt's avatar
      compat: introduce new "zlib.h" header · 629188ed
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      Introduce a new "compat/zlib-compat.h" header that we include instead of
      including <zlib.h> directly. This will allow us to wire up zlib-ng as an
      alternative backend for zlib compression in a subsequent commit.
      
      Note that we cannot just call the file "compat/zlib.h", as that may
      otherwise cause us to include that file instead of <zlib.h>.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      629188ed
    • Patrick Steinhardt's avatar
      git-compat-util: drop `z_const` define · 27e89600
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      Before including <zlib.h> we explicitly define `z_const` to an empty
      value. This has the effect that the `z_const` macro in "zconf.h" itself
      will remain empty instead of being defined as `const`, which effectively
      adapts a couple of APIs so that their parameters are not marked as being
      constants.
      
      It is dubious though whether this is something we actually want: not
      marking a parameter as a constant doesn't make it any less constant than
      it was. The define was added via 07564773 (compat: auto-detect if zlib
      has uncompress2(), 2022-01-24), where it was seemingly carried over from
      our internal compatibility shim for `uncompress2()` that was removed in
      the preceding commit. The commit message doesn't mention why we carry
      over the define and make it public, either, and I cannot think of any
      reason for why we would want to have it.
      
      Drop the define.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      27e89600
    • Patrick Steinhardt's avatar
      compat: drop `uncompress2()` compatibility shim · 3656d57b
      Patrick Steinhardt authored and Junio C Hamano's avatar Junio C Hamano committed
      
      Our compat library has an implementation of zlib's `uncompress2()`
      function that gets used when linking against an old version of zlib
      that doesn't yet have it. The last user of `uncompress2()` got removed
      in 15a60b74 (reftable/block: open-code call to `uncompress2()`,
      2024-04-08), so the compatibility code is not required anymore. Drop it.
      
      Signed-off-by: default avatarPatrick Steinhardt <ps@pks.im>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      3656d57b
    • Junio C Hamano's avatar
      The fourth batch · da898a5c
      Junio C Hamano authored
      
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      da898a5c
    • Junio C Hamano's avatar
      Merge branch 'jp/t8002-printf-fix' · b09b10ad
      Junio C Hamano authored
      Test fix.
      
      * jp/t8002-printf-fix:
        t8002: fix ambiguous printf conversion specifications
      b09b10ad
    • Junio C Hamano's avatar
      Merge branch 'ps/reftable-sign-compare' · a17fd7dd
      Junio C Hamano authored
      The reftable/ library code has been made -Wsign-compare clean.
      
      * ps/reftable-sign-compare:
        reftable: address trivial -Wsign-compare warnings
        reftable/blocksource: adjust `read_block()` to return `ssize_t`
        reftable/blocksource: adjust type of the block length
        reftable/block: adjust type of the restart length
        reftable/block: adapt header and footer size to return a `size_t`
        reftable/basics: adjust `hash_size()` to return `uint32_t`
        reftable/basics: adjust `common_prefix_size()` to return `size_t`
        reftable/record: handle overflows when decoding varints
        reftable/record: drop unused `print` function pointer
        meson: stop disabling -Wsign-compare
      a17fd7dd
    • Junio C Hamano's avatar
      Merge branch 'mh/credential-cache-authtype-request-fix' · 73e055d7
      Junio C Hamano authored
      The "cache" credential back-end did not handle authtype correctly,
      which has been corrected.
      
      * mh/credential-cache-authtype-request-fix:
        credential-cache: respect authtype capability
      73e055d7
    • Junio C Hamano's avatar
      Merge branch 'jk/pack-header-parse-alignment-fix' · f8b9821f
      Junio C Hamano authored
      It was possible for "git unpack-objects" and "git index-pack" to
      make an unaligned access, which has been corrected.
      
      * jk/pack-header-parse-alignment-fix:
        index-pack, unpack-objects: use skip_prefix to avoid magic number
        index-pack, unpack-objects: use get_be32() for reading pack header
        parse_pack_header_option(): avoid unaligned memory writes
        packfile: factor out --pack_header argument parsing
        bswap.h: squelch potential sparse -Wcast-truncate warnings
      f8b9821f
Loading