All of lore.kernel.org
 help / color / mirror / Atom feed
From: Patrick Steinhardt <ps@pks.im>
To: Karthik Nayak <karthik.188@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 01/13] commit-graph: require resolved packfile paths for `stdin_packs`
Date: Tue, 6 Oct 2026 14:18:14 +0200	[thread overview]
Message-ID: <asTnBsWxEvgphOV7@pks.im> (raw)
In-Reply-To: <CAOLa=ZS_S3bYXEufor7AgXpX76NwtV4NJdGRO57-bpSkYZrzvw@mail.gmail.com>

On Mon, Oct 05, 2026 at 03:27:27PM -0400, Karthik Nayak wrote:
> Patrick Steinhardt <ps@pks.im> writes:
> 
> > Users can ask git-commit-graph(1) to write a commit graph specifically
> > for a set of packfiles via the "--stdin-packs" option. Those users are
> > expected to pass in relative paths, and those eventually get resolved in
> > `fill_oids_from_packs()`. This ties the logic in "commit-graph.c" to the
> > specific object database source.
> >
> > Refactor the logic to instead require the caller to pass in resolved
> > packfiles to untangle that dependency.
> >
> 
> Nit: the changes look good, what I'm missing is 'why' are we doing this
> change.

It's basically this sentence:

  This ties the logic in "commit-graph.c" to the specific object
  database source.

With the current logic we have assumptions in "commit-graph.c" about
where a specific packfile lives relative to an object database source.
But with the next commit that becomes a bit harder to realize So
resolving packfile paths early on gets rid of parts of these
assumptions, so that we don't have to resolve those paths in
"commit-graph.c" anymore.

I'll rephrase this a bit.

Patrick

  reply	other threads:[~2026-10-06 12:18 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-02 10:08 [PATCH 00/13] odb/source-files: move alternates into the backend Patrick Steinhardt
2026-10-02 10:08 ` [PATCH 01/13] commit-graph: require resolved packfile paths for `stdin_packs` Patrick Steinhardt
2026-10-05 19:27   ` Karthik Nayak
2026-10-06 12:18     ` Patrick Steinhardt [this message]
2026-10-02 10:08 ` [PATCH 02/13] commit-graph: stop depending on `struct odb_source` Patrick Steinhardt
2026-10-05 19:43   ` Karthik Nayak
2026-10-06 12:18     ` Patrick Steinhardt
2026-10-06 20:11       ` Karthik Nayak
2026-10-02 10:08 ` [PATCH 03/13] odb/source-files: introduce `struct odb_files_dir` Patrick Steinhardt
2026-10-02 10:08 ` [PATCH 04/13] odb: refactor `odb_for_each_alternate()` to yield dirs Patrick Steinhardt
2026-10-06  8:42   ` Karthik Nayak
2026-10-02 10:08 ` [PATCH 05/13] odb: refactor `odb_find_source()` " Patrick Steinhardt
2026-10-02 10:08 ` [PATCH 06/13] odb/source-files: add the ability to have multiple object dirs Patrick Steinhardt
2026-10-02 10:08 ` [PATCH 07/13] tmp-objdir: absorb logic to set and restore primary sources Patrick Steinhardt
2026-10-02 10:08 ` [PATCH 08/13] tmp-objdir: manage quarantine as an object directory Patrick Steinhardt
2026-10-06 20:18   ` Karthik Nayak
2026-10-06 20:27     ` Karthik Nayak
2026-10-02 10:08 ` [PATCH 09/13] tmp-objdir: replace primary source at creation time Patrick Steinhardt
2026-10-02 10:08 ` [PATCH 10/13] odb/source: make `will_destroy` an implementation detail Patrick Steinhardt
2026-10-02 10:08 ` [PATCH 11/13] odb/source-files: extract reading alternates Patrick Steinhardt
2026-10-02 10:08 ` [PATCH 12/13] odb/source-files: move alternates into the backend Patrick Steinhardt
2026-10-06 20:51   ` Karthik Nayak
2026-10-07  5:50     ` Patrick Steinhardt
2026-10-02 10:08 ` [PATCH 13/13] odb/source: drop `read_alternates` callback Patrick Steinhardt
2026-10-06 20:53 ` [PATCH 00/13] odb/source-files: move alternates into the backend Karthik Nayak
2026-10-07  5:50   ` Patrick Steinhardt
2026-10-08  8:35 ` [PATCH v2 " Patrick Steinhardt
2026-10-08  8:35   ` [PATCH v2 01/13] commit-graph: require resolved packfile paths for `stdin_packs` Patrick Steinhardt
2026-10-08  8:35   ` [PATCH v2 02/13] commit-graph: stop depending on `struct odb_source` Patrick Steinhardt
2026-10-08  8:35   ` [PATCH v2 03/13] odb/source-files: introduce `struct odb_files_dir` Patrick Steinhardt
2026-10-08  8:35   ` [PATCH v2 04/13] odb: refactor `odb_for_each_alternate()` to yield dirs Patrick Steinhardt
2026-10-08  8:35   ` [PATCH v2 05/13] odb: refactor `odb_find_source()` " Patrick Steinhardt
2026-10-08  8:35   ` [PATCH v2 06/13] odb/source-files: add the ability to have multiple object dirs Patrick Steinhardt
2026-10-08  8:35   ` [PATCH v2 07/13] tmp-objdir: absorb logic to set and restore primary sources Patrick Steinhardt
2026-10-08  8:35   ` [PATCH v2 08/13] tmp-objdir: manage quarantine as an object directory Patrick Steinhardt
2026-10-08  8:35   ` [PATCH v2 09/13] tmp-objdir: replace primary source at creation time Patrick Steinhardt
2026-10-08  8:36   ` [PATCH v2 10/13] odb/source: make `will_destroy` an implementation detail Patrick Steinhardt
2026-10-08  8:36   ` [PATCH v2 11/13] odb/source-files: extract reading alternates Patrick Steinhardt
2026-10-08  8:36   ` [PATCH v2 12/13] odb/source-files: move alternates into the backend Patrick Steinhardt
2026-10-08  8:36   ` [PATCH v2 13/13] odb/source: drop `read_alternates` callback Patrick Steinhardt
2026-10-08  9:24   ` [PATCH v2 00/13] odb/source-files: move alternates into the backend Karthik Nayak

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=asTnBsWxEvgphOV7@pks.im \
    --to=ps@pks.im \
    --cc=git@vger.kernel.org \
    --cc=karthik.188@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.