From: Junio C Hamano <gitster@pobox.com>
To: Justin Tobler <jltobler@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 5/5] transport: propagate fsck configuration during bundle fetch
Date: Fri, 22 Nov 2024 10:59:56 +0900 [thread overview]
Message-ID: <xmqq5xogc9k3.fsf@gitster.g> (raw)
In-Reply-To: <20241121204119.1440773-6-jltobler@gmail.com> (Justin Tobler's message of "Thu, 21 Nov 2024 14:41:19 -0600")
Justin Tobler <jltobler@gmail.com> writes:
> When fetching directly from a bundle, fsck message severity
> configuration is not propagated to the underlying git-index-pack(1). It
> is only capable of enabling or disabling fsck checks entirely. This does
> not align with the fsck behavior for fetches through git-fetch-pack(1).
>
> Use the message configuration from fetch-pack and wire it through to
> `unbundle()` to enable the same fsck configuration as done through
> fetch-pack.
>
> Signed-off-by: Justin Tobler <jltobler@gmail.com>
> ---
> t/t5607-clone-bundle.sh | 7 +++++++
> transport.c | 5 +++++
> 2 files changed, 12 insertions(+)
Nicely done.
>
> diff --git a/t/t5607-clone-bundle.sh b/t/t5607-clone-bundle.sh
> index 7ceaa8194d..c69aa88eae 100755
> --- a/t/t5607-clone-bundle.sh
> +++ b/t/t5607-clone-bundle.sh
> @@ -171,6 +171,13 @@ test_expect_success 'clone bundle with different fsckObjects configurations' '
>
> test_must_fail git -c transfer.fsckObjects=true \
> clone bundle-fsck/bad.bundle bundle-transfer-fsck 2>err &&
> + test_grep "missingEmail" err &&
> +
> + git -c fetch.fsckObjects=true -c fetch.fsck.missingEmail=ignore \
> + clone bundle-fsck/bad.bundle bundle-fsck-ignore &&
> +
> + test_must_fail git -c fetch.fsckObjects=true -c fetch.fsck.missingEmail=error \
> + clone bundle-fsck/bad.bundle bundle-fsck-error 2>err &&
> test_grep "missingEmail" err
> '
>
> diff --git a/transport.c b/transport.c
> index 7e0ec4adc9..a9e03c3964 100644
> --- a/transport.c
> +++ b/transport.c
> @@ -178,6 +178,7 @@ static int fetch_refs_from_bundle(struct transport *transport,
> {
> struct verify_bundle_opts opts = { .flags = fetch_pack_fsck_objects() ?
> VERIFY_BUNDLE_FSCK : 0 };
> + struct fetch_pack_options fetch_pack_options = FETCH_PACK_OPTIONS_INIT;
> struct bundle_transport_data *data = transport->data;
> struct strvec extra_index_pack_args = STRVEC_INIT;
> int ret;
> @@ -188,11 +189,15 @@ static int fetch_refs_from_bundle(struct transport *transport,
> if (!data->get_refs_from_bundle_called)
> get_refs_from_bundle_inner(transport);
>
> + git_config(fetch_pack_config_cb, &fetch_pack_options);
> + opts.fsck_msg_types = fetch_pack_options.fsck_msg_types.buf;
> +
> ret = unbundle(the_repository, &data->header, data->fd,
> &extra_index_pack_args, &opts);
> transport->hash_algo = data->header.hash_algo;
>
> strvec_clear(&extra_index_pack_args);
> + strbuf_release(&fetch_pack_options.fsck_msg_types);
> return ret;
> }
next prev parent reply other threads:[~2024-11-22 1:59 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-21 20:41 [PATCH 0/5] propagate fsck message severity for bundle fetch Justin Tobler
2024-11-21 20:41 ` [PATCH 1/5] bundle: add bundle verification options type Justin Tobler
2024-11-22 1:21 ` Junio C Hamano
2024-11-22 15:22 ` Justin Tobler
2024-11-26 9:08 ` Patrick Steinhardt
2024-11-26 15:59 ` Justin Tobler
2024-11-21 20:41 ` [PATCH 2/5] bundle: support fsck message configuration Justin Tobler
2024-11-22 1:30 ` Junio C Hamano
2024-11-22 15:44 ` Justin Tobler
2024-11-25 1:33 ` Junio C Hamano
2024-11-21 20:41 ` [PATCH 3/5] fetch-pack: introduce `fetch_pack_options` Justin Tobler
2024-11-22 1:46 ` Junio C Hamano
2024-11-22 3:46 ` Junio C Hamano
2024-11-22 17:31 ` Justin Tobler
2024-11-21 20:41 ` [PATCH 4/5] fetch-pack: expose `fetch_pack_config_cb()` Justin Tobler
2024-11-22 1:57 ` Junio C Hamano
2024-11-22 17:41 ` Justin Tobler
2024-11-22 16:45 ` shejialuo
2024-11-27 1:21 ` Justin Tobler
2024-11-21 20:41 ` [PATCH 5/5] transport: propagate fsck configuration during bundle fetch Justin Tobler
2024-11-22 1:59 ` Junio C Hamano [this message]
2024-11-27 0:57 ` [PATCH v2 0/4] propagate fsck message severity for " Justin Tobler
2024-11-27 0:57 ` [PATCH v2 1/4] bundle: add bundle verification options type Justin Tobler
2024-11-27 0:57 ` [PATCH v2 2/4] bundle: support fsck message configuration Justin Tobler
2024-11-27 5:44 ` Patrick Steinhardt
2024-11-27 0:57 ` [PATCH v2 3/4] fetch-pack: split out fsck config parsing Justin Tobler
2024-11-27 5:44 ` Patrick Steinhardt
2024-11-27 17:37 ` Justin Tobler
2024-11-27 0:57 ` [PATCH v2 4/4] transport: propagate fsck configuration during bundle fetch Justin Tobler
2024-11-27 1:39 ` Junio C Hamano
2024-11-27 23:33 ` [PATCH v3 0/4] propagate fsck message severity for " Justin Tobler
2024-11-27 23:33 ` [PATCH v3 1/4] bundle: add bundle verification options type Justin Tobler
2024-11-27 23:33 ` [PATCH v3 2/4] bundle: support fsck message configuration Justin Tobler
2024-11-27 23:33 ` [PATCH v3 3/4] fetch-pack: split out fsck config parsing Justin Tobler
2024-11-28 3:25 ` Junio C Hamano
2024-12-03 9:34 ` Patrick Steinhardt
2024-12-03 14:23 ` Justin Tobler
2024-12-03 14:28 ` Patrick Steinhardt
2024-12-03 23:17 ` Junio C Hamano
2024-12-04 2:39 ` Junio C Hamano
2024-11-27 23:33 ` [PATCH v3 4/4] transport: propagate fsck configuration during bundle fetch Justin Tobler
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=xmqq5xogc9k3.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=jltobler@gmail.com \
/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.