git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: tb/cruft-packs (was Re: What's cooking in git.git (Mar 2022, #01; Thu, 3))

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Mar 7, 2022, 18:06 UTC
Message-ID
<YiZJiPVMZwPXbfrK@google.com>
In-Reply-To
<0870b8f0-976a-cf2f-f34f-7e966b9c426f@github.com>
Hi,
Derrick Stolee wrote:
> On 3/3/2022 11:31 PM, Junio C Hamano wrote:
Show 28 quoted lines
>> * tb/cruft-packs (2022-03-02) 17 commits
>>  - sha1-file.c: don't freshen cruft packs
>>  - builtin/gc.c: conditionally avoid pruning objects via loose
>>  - builtin/repack.c: add cruft packs to MIDX during geometric repack
>>  - builtin/repack.c: use named flags for existing_packs
>>  - builtin/repack.c: allow configuring cruft pack generation
>>  - builtin/repack.c: support generating a cruft pack
>>  - builtin/pack-objects.c: --cruft with expiration
>>  - reachable: report precise timestamps from objects in cruft packs
>>  - reachable: add options to add_unseen_recent_objects_to_traversal
>>  - builtin/pack-objects.c: --cruft without expiration
>>  - builtin/pack-objects.c: return from create_object_entry()
>>  - t/helper: add 'pack-mtimes' test-tool
>>  - pack-mtimes: support writing pack .mtimes files
>>  - chunk-format.h: extract oid_version()
>>  - pack-write: pass 'struct packing_data' to 'stage_tmp_packfiles'
>>  - pack-mtimes: support reading .mtimes files
>>  - Documentation/technical: add cruft-packs.txt
>>
>>  A mechanism to pack unreachable objects into a "cruft pack",
>>  instead of ejecting them into loose form to be reclaimed later, has
>>  been introduced.
>>
>>  Will merge to 'next'?
>>  source: <cover.1646266835.git.me@ttaylorr.com>
>
> This version looks good to me. There were some other comments that
> seem to have resolved without a need to change the patches.

I'm excited about this work! I just sent a quick review to the design doc.

Before merging to 'next', I'd be interested in two things:
 1. Marking the feature as experimental so we can learn from experience.
    Clarifying what aspects we consider to be stable / set in stone and
    what are subject to modification.
 2. Marking this as a repository format extension so it doesn't interact
    poorly with Git implementations (including older versions of Git
    itself) that are not aware of the new feature
Thoughts?

Thanks, Jonathan

Previous: Derrick StoleeNext: Taylor Blau
Message 10 of 22 in “What's cooking in git.git (Mar 2022, #01; Thu, 3)”
  1. Junio C HamanoMar 4, 2022
  2. ab/plug-random-leaks (was Re: What's cooking in git.git (Mar 2022, #01; Thu, 3))Derrick Stolee, Mar 4, 2022
  3. Ævar Arnfjörð BjarmasonMar 4, 2022
  4. tests: test show --word-diff --color-movedMichael J Gruber, Mar 17, 2022
  5. 0/2 diff.c: fix a recent memory leak regressionÆvar Arnfjörð Bjarmason, Mar 17, 2022
  6. 2/2 diff.c: fix a double-free regression in a18d66cefbÆvar Arnfjörð Bjarmason, Mar 17, 2022
  7. 1/2 tests: demonstrate "show --word-diff --color-moved" regressionÆvar Arnfjörð Bjarmason, Mar 17, 2022
  8. Junio C HamanoMar 17, 2022
  9. tb/cruft-packs (was Re: What's cooking in git.git (Mar 2022, #01; Thu, 3))Derrick Stolee, Mar 4, 2022
  10. Jonathan NiederMar 7, 2022
  11. Taylor BlauMar 7, 2022
  12. Derrick StoleeMar 7, 2022
  13. Jonathan NiederMar 7, 2022
  14. Derrick StoleeMar 7, 2022
  15. Junio C HamanoMar 7, 2022
  16. Taylor BlauMar 8, 2022
  17. Junio C HamanoMar 8, 2022
  18. Taylor BlauMar 8, 2022
  19. jc/stash-drop (was: What's cooking in git.git (Mar 2022, #01; Thu, 3))Ævar Arnfjörð Bjarmason, Mar 5, 2022
  20. Junio C HamanoMar 7, 2022
  21. ds/commit-graph-gen-v2-fixes (was Re: What's cooking in git.git (Mar 2022, #01; Thu, 3))Derrick Stolee, Mar 7, 2022
  22. Junio C HamanoMar 7, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.