git/odb
Patrick Steinhardt 0de2467e6c odb/source-packed: start converting to a proper `struct odb_source`
Start converting `struct odb_source_packed` into a proper pluggable
`struct odb_source` by embedding the base struct and assigning it the
new `ODB_SOURCE_PACKED` type. Furthermore, wire up lifecycle management
of this source by implementing the `free` callback and taking ownership
of the chdir notifications.

Note that the packed source is not yet functional as a standalone `struct
odb_source`, as it's missing all of the callback implementations. These
will be wired up in subsequent commits.

Further note that we're also registering a `chdir_notify` callback to
reparent our path. This wasn't previously necessary (and still isn't at
this point in time) because all paths are taken from the owning "files"
source, and that source already handles the reparenting for us. But a
subsequent commit will change that so that we're using the path of the
"packed" source, and once that happens we'll need it to be updated when
changing the working directory.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2026-06-17 05:00:00 -07:00
..
source-files.c odb/source-packed: start converting to a proper `struct odb_source` 2026-06-17 05:00:00 -07:00
source-files.h packfile: rename `struct packfile_store` to `odb_source_packed` 2026-06-17 04:59:59 -07:00
source-inmemory.c odb/source-inmemory: stub out remaining functions 2026-05-15 04:50:45 +09:00
source-inmemory.h odb/source-inmemory: convert to use oidtree 2026-05-15 04:50:45 +09:00
source-loose.c odb/source-loose: drop pointer to the "files" source 2026-06-01 18:47:19 +09:00
source-loose.h odb/source-loose: drop pointer to the "files" source 2026-06-01 18:47:19 +09:00
source-packed.c odb/source-packed: start converting to a proper `struct odb_source` 2026-06-17 05:00:00 -07:00
source-packed.h odb/source-packed: start converting to a proper `struct odb_source` 2026-06-17 05:00:00 -07:00
source.c odb/source: make `free()` function pluggable 2026-03-05 11:45:15 -08:00
source.h odb/source-packed: start converting to a proper `struct odb_source` 2026-06-17 05:00:00 -07:00
streaming.c Merge branch 'ps/odb-in-memory' into ps/odb-source-loose 2026-05-21 22:34:55 +09:00
streaming.h Merge branch 'ps/odb-in-memory' into ps/odb-source-loose 2026-05-21 22:34:55 +09:00
transaction.c odb/transaction: make `write_object_stream()` pluggable 2026-05-15 04:44:40 +09:00
transaction.h odb/transaction: make `write_object_stream()` pluggable 2026-05-15 04:44:40 +09:00