[PATCH 0/8] Refactor handling of alternates to work via sources
- From
Patrick Steinhardt <ps@pks.im>
- Date
- Dec 8, 2025, 08:04 UTC
- Message-ID
- <20251208-b4-pks-odb-alternates-via-source-v1-0-e7ebb8b18c03@pks.im>
Hi,
this patch series refactors how we handle alternate object directories so that the interface is structured around the object database source.
Next to being simpler to reason about, it also allows us to eventually abstract handling of alternates to use different mechanisms based on the specific backend used. In a world of pluggable object databases not every backend may use a physical directory, so it may not be possible to read alternates via "objects/info/alternates". Consequently, formats may need a different mechanism entirely to make this list available.
Thanks!
Patrick
---
Patrick Steinhardt (8):
odb: refactor parsing of alternates to be self-contained
odb: resolve relative alternative paths when parsing
odb: move computation of normalized objdir into `alt_odb_usable()`
odb: adapt `odb_add_to_alternates_file()` to call `odb_add_source()`
odb: remove mutual recursion when parsing alternates
odb: drop forward declaration of `read_info_alternates()`
odb: read alternates via sources
odb: write alternates via sourcesodb.c | 307 ++++++++++++++++++++++++++++++++++-------------------------------- 1 file changed, 158 insertions(+), 149 deletions(-)
--- base-commit: bdc5341ff65278a3cc80b2e8a02a2f02aa1fac06 change-id: 20251206-b4-pks-odb-alternates-via-source-802d87cbbda5