| From: |
| Junio C Hamano <gitster-AT-pobox.com> |
| To: |
| git-AT-vger.kernel.org |
| Subject: |
| What's cooking in git.git (Dec 2024, #03; Sun, 8) |
| Date: |
| Sun, 08 Dec 2024 18:31:47 +0900 |
| Message-ID: |
| <xmqq7c8asepo.fsf@gitster.g> |
| Archive-link: |
| Article |
Here are the topics that have been cooking in my tree. Commits
prefixed with '+' are in 'next' (being in 'next' is a sign that a
topic is stable enough to be used and are candidate to be in a
future release). Commits prefixed with '-' are only in 'seen', and
aren't considered "accepted" at all and may be annotated with an URL
to a message that raises issues but they are no means exhaustive. A
topic without enough support may be discarded after a long period of
no activity (of course they can be resubmit when new interests
arise).
Copies of the source code to Git live in many repositories, and the
following is a list of the ones I push into or their mirrors. Some
repositories have only a subset of branches.
With maint, master, next, seen, todo:
git://git.kernel.org/pub/scm/git/git.git/
git://repo.or.cz/alt-git.git/
https://kernel.googlesource.com/pub/scm/git/git/
https://github.com/git/git/
https://gitlab.com/git-scm/git/
With all the integration branches and topics broken out:
https://github.com/gitster/git/
Even though the preformatted documentation in HTML and man format
are not sources, they are published in these repositories for
convenience (replace "htmldocs" with "manpages" for the manual
pages):
git://git.kernel.org/pub/scm/git/git-htmldocs.git/
https://github.com/gitster/git-htmldocs.git/
Release tarballs are available at:
https://www.kernel.org/pub/software/scm/git/
--------------------------------------------------
[New Topics]
* bf/explicit-config-set-in-advice-messages (2024-12-06) 1 commit
- advice: suggest using subcommand "git config set"
The advice messages now tell the newer 'git config set' command to
set the advice.token configuration variable to squelch a message.
Will merge to 'next'.
source: <20241205122225.1184215-1-bence@ferdinandy.com>
* cc/lop-remote (2024-12-07) 5 commits
- doc: add technical design doc for large object promisors
- promisor-remote: check advertised name or URL
- Add 'promisor-remote' capability to protocol v2
- strbuf: refactor strbuf_trim_trailing_ch()
- version: refactor strbuf_sanitize()
source: <20241206124248.160494-1-christian.couder@gmail.com>
* ds/backfill (2024-12-07) 6 commits
- backfill: assume --sparse when sparse-checkout is enabled
- backfill: add --sparse option
- backfill: add --batch-size=<n> option
- backfill: basic functionality and tests
- backfill: add builtin boilerplate
- Merge branch 'ds/path-walk-1' into ds/backfill
(this branch uses ds/path-walk-1.)
source: <pull.1820.git.1733515638.gitgitgadget@gmail.com>
* kn/reftable-writer-log-write-verify (2024-12-07) 1 commit
- reftable/writer: ensure valid range for log's update_index
source: <20241206-424-reftable-writer-add-check-for-limits-v2-1-82ca350b10be@gmail.com>
* ps/ci-gitlab-update (2024-12-07) 4 commits
- ci/lib: fix "CI setup" sections with GitLab CI
- ci/lib: use echo instead of printf to set up sections
- ci/lib: remove duplicate trap to end "CI setup" group
- gitlab-ci: update macOS images to Sonoma
source: <20241206-pks-ci-section-fixes-v1-0-7ab1b69e3648@pks.im>
* ps/commit-with-message-syntax-fix (2024-12-08) 1 commit
- object-name: fix reversed ordering with ":/<text>" revisions
The syntax ":/<text>" to name the latest commit with the matching
text was broken with a recent change, which has been corrected.
Will merge to 'next'.
source: <20241206-pks-rev-parse-fix-reversed-list-v3-1-d934c17db168@pks.im>
* jc/set-head-symref-fix (2024-12-07) 2 commits
- fetch: do not ask for HEAD unnecessarily
- Merge branch 'bf/set-head-symref' into js/set-head-symref-fix
(this branch uses bf/set-head-symref.)
"git fetch" from a configured remote learned to update a missing
remote-tracking HEAD but it asked the remote about their HEAD even
when it did not need to, which has been corrected. Incidentally,
this also corrects "git fetch --tags $URL" which was broken by the
new feature in an unspecified way.
Will merge to 'next'.
source: <xmqqcyi5xmhr.fsf@gitster.g>
* re/submodule-parse-opt (2024-12-08) 3 commits
- git-submodule.sh: improve parsing of short options
- git-submodule.sh: improve parsing of some long options
- git-submodule.sh: make some variables boolean
"git submodule" learned various ways to spell the same option,
e.g. "--branch=B" can be spelled "--branch B" or "-bB".
Will merge to 'next'?
source: <20241207135201.2536-1-royeldar0@gmail.com>
--------------------------------------------------
[Graduated to 'master']
* kh/sequencer-comment-char (2024-11-26) 3 commits
(merged to 'next' on 2024-11-28 at 84693f6bb7)
+ sequencer: comment commit messages properly
+ sequencer: comment `--reference` subject line properly
+ sequencer: comment checked-out branch properly
The sequencer failed to honor core.commentString in some places.
source: <cover.1732565412.git.code@khaugsbakk.name>
* sj/refs-symref-referent-fix (2024-11-27) 1 commit
(merged to 'next' on 2024-11-28 at 65eba16b56)
+ ref-cache: fix invalid free operation in `free_ref_entry`
A double-free that may not trigger in practice by luck has been
corrected in the reference resolution code.
source: <Z0Xd-cYPNNrxwuAB@ArchLinux>
--------------------------------------------------
[Cooking]
* jt/fix-fattening-promisor-fetch (2024-12-04) 4 commits
- index-pack: work around false positive use of uninitialized variable
- index-pack --promisor: also check commits' trees
- index-pack --promisor: don't check blobs
- index-pack --promisor: dedup before checking links
Fix performance regression of a recent "fatten promisor pack with
local objects" protection against an unwanted gc.
Need to squash the fix-up at the tip.
source: <cover.1733262661.git.jonathantanmy@google.com>
* kk/doc-ancestry-path (2024-12-04) 1 commit
(merged to 'next' on 2024-12-05 at 36d6c51c96)
+ doc: mention rev-list --ancestry-path restrictions
The --ancestry-path option is designed to be given a commit that is
on the path, which was not documented, which has been corrected.
Will merge to 'master'.
source: <CADYQcGrD5KtM1sZQbccAtDaLmUXD8Gxv_nUWmapjfZm=TMq=Jw@mail.gmail.com>
* kh/doc-bundle-typofix (2024-12-02) 1 commit
(merged to 'next' on 2024-12-04 at 5da441ce36)
+ Documentation/git-bundle.txt: fix word join typo
Typofix.
Will merge to 'master'.
source: <164b94bab9214f6030909df8f1e7c476b7f79e55.1732822997.git.code@khaugsbakk.name>
* kh/doc-update-ref-grammofix (2024-12-02) 1 commit
(merged to 'next' on 2024-12-04 at 9905f16afc)
+ Documentation/git-update-ref.txt: add missing word
Grammofix.
Will merge to 'master'.
source: <6cc7a9d60216c966bcf77675aa22a39cfa8993e2.1732906187.git.code@khaugsbakk.name>
* ps/build-sign-compare (2024-12-06) 16 commits
- t/helper: don't depend on implicit wraparound
- scalar: address -Wsign-compare warnings
- builtin/patch-id: fix type of `get_one_patchid()`
- builtin/blame: fix type of `length` variable when emitting object ID
- gpg-interface: address -Wsign-comparison warnings
- daemon: fix type of `max_connections`
- daemon: fix loops that have mismatching integer types
- global: trivial conversions to fix `-Wsign-compare` warnings
- pkt-line: fix -Wsign-compare warning on 32 bit platform
- csum-file: fix -Wsign-compare warning on 32-bit platform
- diff.h: fix index used to loop through unsigned integer
- config.mak.dev: drop `-Wno-sign-compare`
- global: mark code units that generate warnings with `-Wsign-compare`
- compat/win32: fix -Wsign-compare warning in "wWinMain()"
- compat/regex: explicitly ignore "-Wsign-compare" warnings
- git-compat-util: introduce macros to disable "-Wsign-compare" warnings
Start working to make the codebase buildable with -Wsign-compare.
Will merge to 'next'?
source: <20241206-pks-sign-compare-v4-0-0344c6dfb219@pks.im>
* rj/strvec-splice-fix (2024-12-05) 2 commits
- strvec: `strvec_splice()` to a statically initialized vector
- Merge branch 'ps/leakfixes-part-10' into rj/strvec-splice-fix
Correct strvec_splice() that misbehaved when the strvec is empty.
Will merge to 'next'?
source: <3c7b3c26-7501-4797-8afa-c7f7e9c46558@gmail.com>
* jc/forbid-head-as-tagname (2024-12-03) 4 commits
- tag: "git tag" refuses to use HEAD as a tagname
- t5604: do not expect that HEAD can be a valid tagname
- refs: drop strbuf_ prefix from helpers
- refs: move ref name helpers around
"git tag" has been taught to refuse to create refs/tags/HEAD
as such a tag will be confusing in the context of UI provided by
the Git Porcelain commands.
Will merge to 'next'.
source: <20241203023240.3852850-1-gitster@pobox.com>
* en/fast-import-verify-path (2024-12-04) 3 commits
(merged to 'next' on 2024-12-05 at bbdd9b9659)
+ t9300: test verification of renamed paths
(merged to 'next' on 2024-12-02 at 2932fa51e4)
+ fast-import: disallow more path components
(merged to 'next' on 2024-11-27 at 8b145bb543)
+ fast-import: disallow "." and ".." path components
"git fast-import" learned to reject paths with ".." and "." as
their components to avoid creating invalid tree objects.
Will merge to 'master'.
source: <pull.1831.v2.git.1732561248717.gitgitgadget@gmail.com>
source: <pull.1832.git.1732740464398.gitgitgadget@gmail.com>
source: <20241203210652.GA1413195@coredump.intra.peff.net>
* bf/fetch-set-head-config (2024-12-06) 5 commits
- remote set-head: set followRemoteHEAD to "warn" if "always"
- fetch set_head: add warn-if-not-$branch option
- fetch set_head: move warn advice into advise_if_enabled
(merged to 'next' on 2024-12-04 at 69bfc59fb5)
+ fetch: add configuration for set_head behaviour
+ Merge branch 'bf/set-head-symref' into bf/fetch-set-head-config
(this branch uses bf/set-head-symref.)
"git fetch" honors "remote.<remote>.followRemoteHEAD" settings to
tweak the remote-tracking HEAD in "refs/remotes/<remote>/HEAD".
Will merge to 'next'.
source: <20241128230806.2058962-1-bence@ferdinandy.com>
source: <20241204104003.514905-1-bence@ferdinandy.com>
source: <20241128111946.366584-1-bence@ferdinandy.com>
* jc/doc-error-message-guidelines (2024-11-29) 1 commit
(merged to 'next' on 2024-12-04 at 2d19ff44e5)
+ CodingGuidelines: a handful of error message guidelines
Developer documentation update.
Will merge to 'master'.
source: <xmqqa5dkqjmr.fsf_-_@gitster.g>
* jc/doc-opt-tilde-expand (2024-11-25) 1 commit
(merged to 'next' on 2024-12-02 at e345717b87)
+ doc: option value may be separate for valid reasons
Describe a case where an option value needs to be spelled as a
separate argument, i.e. "--opt val", not "--opt=val".
Will merge to 'master'.
source: <xmqqh67w6m4m.fsf@gitster.g>
* kn/midx-wo-the-repository (2024-12-04) 10 commits
(merged to 'next' on 2024-12-05 at e48a185ed0)
+ midx: inline the `MIDX_MIN_SIZE` definition
+ midx: pass down `hash_algo` to functions using global variables
+ midx: pass `repository` to `load_multi_pack_index`
+ midx: cleanup internal usage of `the_repository` and `the_hash_algo`
+ midx-write: pass down repository to `write_midx_file[_only]`
+ write-midx: add repository field to `write_midx_context`
+ midx-write: use `revs->repo` inside `read_refs_snapshot`
+ midx-write: pass down repository to static functions
+ Merge branch 'kn/pass-repo-to-builtin-sub-sub-commands' into kn/midx-wo-the-repository
+ Merge branch 'kn/the-repository' into kn/midx-wo-the-repository
(this branch uses kn/the-repository.)
Yet another "pass the repository through the callchain" topic.
Will merge to 'master'.
source:
<20241127-374-refactor-midx-c-and-midx-write-c-to-not-depend-on-global-state-v3-0-c5a99f85009b@gmail.com>
* tb/unsafe-hash-test (2024-11-21) 2 commits
- t/helper/test-tool: implement sha1-unsafe helper
- t/helper/test-sha1: prepare for an unsafe mode
Preliminary addition to the test tool to allow a plain SHA-1 hash
algorithm without collision protection.
Comments?
cf. <xmqqr073antj.fsf@gitster.g>
source: <cover.1730833506.git.me@ttaylorr.com>
* jt/bundle-fsck (2024-11-28) 4 commits
(merged to 'next' on 2024-12-04 at bfd07a8936)
+ transport: propagate fsck configuration during bundle fetch
+ fetch-pack: split out fsck config parsing
+ bundle: support fsck message configuration
+ bundle: add bundle verification options type
"git bundle --unbundle" and "git clone" running on a bundle file
both learned to trigger fsck over the new objects with configurable
fck check levels.
Will merge to 'master'.
cf. <Z08VoOHGZ1wecUx6@pks.im>
source: <20241127233312.27710-1-jltobler@gmail.com>
* bc/allow-upload-pack-from-other-people (2024-11-15) 1 commit
(merged to 'next' on 2024-12-02 at bf711f018c)
+ Allow cloning from repositories owned by another user
Loosen overly strict ownership check introduced in the recent past,
to keep the promise "cloning a suspicious repository is a safe
first step to inspect it".
Will merge to 'master'.
cf. <xmqqed2yzc5z.fsf@gitster.g>
source: <20241115005404.3747302-2-sandals@crustytoothpaste.net>
* tb/incremental-midx-part-2 (2024-11-20) 15 commits
- midx: implement writing incremental MIDX bitmaps
- pack-bitmap.c: use `ewah_or_iterator` for type bitmap iterators
- pack-bitmap.c: keep track of each layer's type bitmaps
- ewah: implement `struct ewah_or_iterator`
- pack-bitmap.c: apply pseudo-merge commits with incremental MIDXs
- pack-bitmap.c: compute disk-usage with incremental MIDXs
- pack-bitmap.c: teach `rev-list --test-bitmap` about incremental MIDXs
- pack-bitmap.c: support bitmap pack-reuse with incremental MIDXs
- pack-bitmap.c: teach `show_objects_for_type()` about incremental MIDXs
- pack-bitmap.c: teach `bitmap_for_commit()` about incremental MIDXs
- pack-bitmap.c: open and store incremental bitmap layers
- pack-revindex: prepare for incremental MIDX bitmaps
- Documentation: describe incremental MIDX bitmaps
- Merge branch 'tb/pseudo-merge-bitmap-fixes' into tb/incremental-midx-part-2
- Merge branch 'tb/incremental-midx-part-1' into tb/incremental-midx-part-2
Incrementally updating multi-pack index files.
Needs review.
source: <cover.1732054032.git.me@ttaylorr.com>
* pb/mergetool-errors (2024-11-25) 5 commits
(merged to 'next' on 2024-12-02 at b439b146c2)
+ git-difftool--helper.sh: exit upon initialize_merge_tool errors
+ git-mergetool--lib.sh: add error message for unknown tool variant
+ git-mergetool--lib.sh: add error message if 'setup_user_tool' fails
+ git-mergetool--lib.sh: use TOOL_MODE when erroring about unknown tool
+ completion: complete '--tool-help' in 'git mergetool'
End-user experience of "git mergetool" when the command errors out
has been improved.
Will merge to 'master'.
source: <pull.1827.v2.git.1732305022.gitgitgadget@gmail.com>
* ps/send-pack-unhide-error-in-atomic-push (2024-11-14) 2 commits
- transport: don't ignore git-receive-pack(1) exit code on atomic push
- t5504: modernize test by moving heredocs into test bodies
"git push --atomic --porcelain" used to ignore failures from the
other side, losing the error status from the child process, which
has been corrected.
Needs review.
source: <20241113-pks-push-atomic-respect-exit-code-v1-0-7965f01e7f4e@pks.im>
* js/log-remerge-keep-ancestry (2024-11-12) 1 commit
- log: --remerge-diff needs to keep around commit parents
"git log -p --remerge-diff --reverse" was completely broken.
Expecting a hopefully small and final reroll.
cf. <xmqqa5e5berx.fsf@gitster.g>
source: <pull.1825.v2.git.1731350009491.gitgitgadget@gmail.com>
* ps/reftable-iterator-reuse (2024-11-26) 11 commits
(merged to 'next' on 2024-12-02 at 3c1d2e2a6a)
+ refs/reftable: reuse iterators when reading refs
+ reftable/merged: drain priority queue on reseek
+ reftable/stack: add mechanism to notify callers on reload
+ refs/reftable: refactor reflog expiry to use reftable backend
+ refs/reftable: refactor reading symbolic refs to use reftable backend
+ refs/reftable: read references via `struct reftable_backend`
+ refs/reftable: figure out hash via `reftable_stack`
+ reftable/stack: add accessor for the hash ID
+ refs/reftable: handle reloading stacks in the reftable backend
+ refs/reftable: encapsulate reftable stack
+ Merge branch 'ps/reftable-detach' into ps/reftable-iterator-reuse
(this branch uses ps/reftable-detach.)
Optimize reading random references out of the reftable backend by
allowing reuse of iterator objects.
Will merge to 'master'.
source: <20241126-pks-reftable-backend-reuse-iter-v4-0-b17fd27df126@pks.im>
* jc/move-is-bare-repository-cfg-variable-to-repo (2024-11-07) 3 commits
- repository: BUG when is_bare_cfg is not initialized
- setup: initialize is_bare_cfg
- git: remove is_bare_repository_cfg global variable
Code rewrite to turn the is_bare_repository_cfg global variable
into a member in the the_repo singleton repository object.
Waiting for response to reviews.
cf. <xmqqy116xvr3.fsf@gitster.g>
source: <pull.1826.git.git.1730926082.gitgitgadget@gmail.com>
* jk/describe-perf (2024-12-06) 5 commits
- describe: split "found all tags" and max_candidates logic
(merged to 'next' on 2024-12-02 at 0f34109a85)
+ describe: stop traversing when we run out of names
+ describe: stop digging for max_candidates+1
+ t/perf: add tests for git-describe
+ t6120: demonstrate weakness in disjoint-root handling
"git describe" optimization.
Will merge to 'next'.
source: <20241106192236.GC880133@coredump.intra.peff.net>
source: <20241206054218.GA3203047@coredump.intra.peff.net>
* js/range-diff-diff-merges (2024-11-11) 1 commit
- range-diff: optionally include merge commits' diffs in the analysis
"git range-diff" learned to optionally show and compare merge
commits in the ranges being compared, with the --diff-merges
option.
Expecting a (hopefully final and) small reroll.
cf. <eb502feb-1563-b1b5-5345-784673c89c79@gmx.de>
source: <pull.1734.v2.git.1731073383564.gitgitgadget@gmail.com>
* ds/name-hash-tweaks (2024-12-03) 8 commits
- pack-objects: add third name hash version
- pack-objects: prevent name hash version change
- test-tool: add helper for name-hash values
- p5313: add size comparison test
- pack-objects: add GIT_TEST_NAME_HASH_VERSION
- repack: add --name-hash-version option
- pack-objects: add --name-hash-version option
- pack-objects: create new name-hash function version
"git pack-objects" and its wrapper "git repack" learned an option
to use an alternative path-hash function to improve delta-base
selection to produce a packfile with deeper history than window
size.
source: <pull.1823.v2.git.1733181682.gitgitgadget@gmail.com>
* ds/path-walk-1 (2024-12-07) 7 commits
- 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
(this branch is used by ds/backfill.)
Introduce a new API to visit objects in batches based on a common
path, or by type.
Will merge to 'next'?
source: <pull.1818.v3.git.1733514358.gitgitgadget@gmail.com>
* bc/ancient-ci (2024-11-01) 3 commits
(merged to 'next' on 2024-12-02 at f6128744ce)
+ Add additional CI jobs to avoid accidental breakage
+ ci: remove clause for Ubuntu 16.04
+ gitlab-ci: switch from Ubuntu 16.04 to 20.04
Drop support for ancient environments in various CI jobs.
Will merge to 'master'.
source: <20241031234934.3451390-1-sandals@crustytoothpaste.net>
* cw/worktree-extension (2024-12-02) 8 commits
(merged to 'next' on 2024-12-05 at 7bd98d132c)
+ worktree: refactor `repair_worktree_after_gitdir_move()`
+ worktree: add relative cli/config options to `repair` command
+ worktree: add relative cli/config options to `move` command
+ worktree: add relative cli/config options to `add` command
+ worktree: add `write_worktree_linking_files()` function
+ worktree: refactor infer_backlink return
+ worktree: add `relativeWorktrees` extension
+ setup: correctly reinitialize repository version
Introduce a new repository extension to prevent older Git versions
from mis-interpreting worktrees created with relative paths.
Will merge to 'master'.
cf. <103c7a4d-a74b-4381-a9c7-33a89d5db192@gmail.com>
source: <20241129-wt_relative_options-v6-0-44e4e0bec8c3@pm.me>
* as/show-index-uninitialized-hash (2024-11-11) 2 commits
- t5300: add test for 'show-index --object-format'
- show-index: fix uninitialized hash function
Regression fix for 'show-index' when run outside of a repository.
Comments?
source: <20241109092739.14276-1-abhijeet.nkt@gmail.com>
* ps/reftable-detach (2024-11-19) 8 commits
(merged to 'next' on 2024-12-02 at e105e787b6)
+ reftable/system: provide thin wrapper for lockfile subsystem
+ reftable/stack: drop only use of `get_locked_file_path()`
+ reftable/system: provide thin wrapper for tempfile subsystem
+ reftable/stack: stop using `fsync_component()` directly
+ reftable/system: stop depending on "hash.h"
+ reftable: explicitly handle hash format IDs
+ reftable/system: move "dir.h" to its only user
+ Merge branch 'ps/reftable-strbuf' into ps/reftable-detach
(this branch is used by ps/reftable-iterator-reuse.)
Isolates the reftable subsystem from the rest of Git's codebase by
using fewer pieces of Git's infrastructure.
Will merge to 'master'.
source: <cover.1731943954.git.ps@pks.im>
* km/config-remote-by-name (2024-10-21) 1 commit
- config: support remote name in includeIf.hasconfig condition
Support conditionally including configuration by remote name, instead
of just URL.
Will discard?
source: <20241020173216.40852-2-ken@kmatsui.me>
* y5/diff-pager (2024-10-21) 1 commit
- diff: setup pager only before diff contents truly ready
Delay setting up the pager in 'git diff' until after the diff contents
itself is fully prepared.
Will discard?
source: <pull.1817.git.git.1729370390416.gitgitgadget@gmail.com>
* es/oss-fuzz (2024-10-16) 3 commits
(merged to 'next' on 2024-12-05 at 1f973aece2)
+ fuzz: port fuzz-url-decode-mem from OSS-Fuzz
+ fuzz: port fuzz-parse-attr-line from OSS-Fuzz
+ fuzz: port fuzz-credential-from-url-gently from OSS-Fuzz
Backport oss-fuzz tests for us to our codebase.
Will merge to 'master'.
source: <cover.1728939687.git.steadmon@google.com>
* bf/set-head-symref (2024-11-25) 10 commits
(merged to 'next' on 2024-12-02 at b142ff3d8e)
+ fetch set_head: handle mirrored bare repositories
+ fetch: set remote/HEAD if it does not exist
+ refs: add create_only option to refs_update_symref_extended
+ refs: add TRANSACTION_CREATE_EXISTS error
+ remote set-head: better output for --auto
+ remote set-head: refactor for readability
+ refs: atomically record overwritten ref in update_symref
+ refs: standardize output of refs_read_symbolic_ref
+ t/t5505-remote: test failure of set-head
+ t/t5505-remote: set default branch to main
(this branch is used by bf/fetch-set-head-config and jc/set-head-symref-fix)
When "git fetch $remote" notices that refs/remotes/$remote/HEAD is
missing and discovers what branch the other side points with its
HEAD, refs/remotes/$remote/HEAD is updated to point to it.
Needs to wait until set-head-symref-fix topic solidifies.
source: <20241122123138.66960-1-bence@ferdinandy.com>
* ps/build (2024-12-08) 25 commits
- meson: fix conflicts with in-flight topics
- Introduce support for the Meson build system
- Documentation: add comparison of build systems
- t: allow overriding build dir
- t: better support for out-of-tree builds
- Documentation: extract script to generate a list of mergetools
- Documentation: teach "cmd-list.perl" about out-of-tree builds
- Documentation: allow sourcing generated includes from separate dir
- Makefile: simplify building of templates
- Makefile: write absolute program path into bin-wrappers
- Makefile: allow "bin-wrappers/" directory to exist
- Makefile: refactor generators to be PWD-independent
- Makefile: extract script to generate gitweb.js
- Makefile: extract script to generate gitweb.cgi
- Makefile: extract script to massage Python scripts
- Makefile: extract script to massage Shell scripts
- Makefile: use "generate-perl.sh" to massage Perl library
- Makefile: extract script to massage Perl scripts
- Makefile: consistently use PERL_PATH
- Makefile: generate doc versions via GIT-VERSION-GEN
- Makefile: generate "git.rc" via GIT-VERSION-GEN
- Makefile: propagate Git version via generated header
- Makefile: refactor GIT-VERSION-GEN to be reusable
- Makefile: consistently use @PLACEHOLDER@ to substitute
- Makefile: use common template for GIT-BUILD-OPTIONS
Build procedure update plus introduction of Mason based builds
Will merge to 'next' (except for the tip one).
source: <20241206-pks-meson-v11-0-525ed4792b88@pks.im>
* ej/cat-file-remote-object-info (2024-11-25) 6 commits
- cat-file: add remote-object-info to batch-command
- transport: add client support for object-info
- serve: advertise object-info feature
- fetch-pack: move fetch initialization
- fetch-pack: refactor packet writing
- cat-file: add declaration of variable i inside its for loop
"git cat-file --batch" and friends can optionally ask a remote
server about objects it does not have.
Expecting a reroll.
cf. <Z0RIrKwUnaWWm_gJ@pks.im>
source: <20241125053616.25170-1-eric.peijian@gmail.com>
* js/libgit-rust (2024-10-16) 5 commits
- Makefile: add option to build and test libgit-rs and libgit-rs-sys
- libgit: add higher-level libgit crate
- libgit-sys: also export some config_set functions
- libgit-sys: introduce Rust wrapper for libgit.a
- common-main: split init and exit code into new files
An rust binding to libgit.a functions has been introduced.
Will discard?
source: <cover.1729032373.git.steadmon@google.com>
* kn/the-repository (2024-12-04) 10 commits
+ packfile.c: remove unnecessary prepare_packed_git() call
+ midx: add repository to `multi_pack_index` struct
+ config: make `packed_git_(limit|window_size)` non-global variables
+ config: make `delta_base_cache_limit` a non-global variable
+ packfile: pass down repository to `for_each_packed_object`
+ packfile: pass down repository to `has_object[_kept]_pack`
+ packfile: pass down repository to `odb_pack_name`
+ packfile: pass `repository` to static function in the file
+ packfile: use `repository` from `packed_git` directly
+ packfile: add repository to struct `packed_git`
(this branch is used by kn/midx-wo-the-repository.)
Various implicit uses of 'the_repoository' in the packfile code
have been eliminated.
Will merge to 'master'.
source: <cover.1733236936.git.karthik.188@gmail.com>