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

Re: What's cooking in git.git (Sep 2020, #03; Wed, 9)

From
Jakub Narębski <jnareb@gmail.com>
Date
Sep 15, 2020, 19:05 UTC
Message-ID
<85ft7ivp1t.fsf@LAPTOP-ACER-ASPIRE-F5.i-did-not-set--mail-host-address--so-tickle-me>
In-Reply-To
<xmqq4ko6twc9.fsf@gitster.c.googlers.com>
Hello,
Junio C Hamano <gitster@pobox.com> writes:
Show 19 quoted lines
> * ss/submodule-summary-in-c (2020-08-12) 4 commits
>   (merged to 'next' on 2020-08-17 at 9bc352cb70)
>  + submodule: port submodule subcommand 'summary' from shell to C
>  + t7421: introduce a test script for verifying 'summary' output
>  + submodule: rename helper functions to avoid ambiguity
>  + submodule: remove extra line feeds between callback struct and macro
>  (this branch is used by ss/submodule-summary-in-c-fixes.)
>
>  Yet another subcommand of "git submodule" is getting rewritten in C.
>
>
> * ss/submodule-summary-in-c-fixes (2020-08-27) 3 commits
>   (merged to 'next' on 2020-09-02 at 7f959811b8)
>  + t7421: eliminate 'grep' check in t7421.4 for mingw compatibility
>  + submodule: fix style in function definition
>  + submodule: eliminate unused parameters from print_submodule_summary()
>  (this branch uses ss/submodule-summary-in-c.)
>
>  Fixups to a topic in 'next'.

Those are patches that are part of GSoC project of Shourya Shukla: 'Convert submodule to builtin'.

Show 15 quoted lines
> * hv/ref-filter-misc (2020-08-28) 8 commits
>   (merged to 'next' on 2020-09-02 at 9a8bb84f20)
>  + ref-filter: add `sanitize` option for 'subject' atom
>  + pretty: refactor `format_sanitized_subject()`
>  + ref-filter: add `short` modifier to 'parent' atom
>  + ref-filter: add `short` modifier to 'tree' atom
>  + ref-filter: rename `objectname` related functions and fields
>  + ref-filter: modify error messages in `grab_objectname()`
>  + ref-filter: refactor `grab_objectname()`
>  + ref-filter: support different email formats
>
>  The "--format=" option to the "for-each-ref" command and friends
>  learned a few more tricks, e.g. the ":short" suffix that applies to
>  "objectname" now also can be used for "parent", "tree", etc.
>

Those are patches that are part of GSoC project of Hariom Verma: 'Unify ref-filter formats with other --pretty formats'

I'd like to point out that latest series of patches by Abhishek Kumar which are final part of 'Implement Generation Number v2' is at what I believe is next to final iteration:

  "[PATCH v3 00/11] [GSoC] Implement Corrected Commit Date"
  https://lore.kernel.org/git/pull.676.v3.git.1597509583.gitgitgadget@gmail.com/T/#u

It is waiting for the decision on *how to implement storing* new generation number in the commit-graph file: should we store corrected commit date directly as 64 bit value, or should we store corrected commit date offset as 32 bit value with overflow handling?

Switching from 64 bits to 32 bits halves the size of the GDAT (Generation DATa) chunk, but decreases the size of the commit-graph file by at most 7%. For large repository, like MS Windows with 3M commits in 2019 it would mean decreasing the size of the commit-graph file by 11.8 MiB (if I calculated it correctly).

Because corrected commit date offsets are not monotone, that is after value that doesn't fit in 32 bits (in parent) there can be one that does (in child). It is extremely unlikely that in real repositories there would be that large corrections needed, but it can happen in theory, and therfore we need some way to handle overflow if we choose this option. And of course we should test that overflow handling works correctly.

So there is tradeoff between complexity and commit-graph file size.
Best,
-- 
Jakub Narębski
Previous: Junio C HamanoNext: Taylor Blau
Message 6 of 13 in “What's cooking in git.git (Sep 2020, #03; Wed, 9)”
  1. Junio C HamanoSep 9, 2020
  2. Eric SunshineSep 9, 2020
  3. Junio C HamanoSep 10, 2020
  4. Eric SunshineSep 15, 2020
  5. Junio C HamanoSep 15, 2020
  6. Jakub NarębskiSep 15, 2020
  7. Taylor BlauSep 15, 2020
  8. Junio C HamanoSep 15, 2020
  9. Jakub NarębskiSep 15, 2020
  10. Junio C HamanoSep 15, 2020
  11. Taylor BlauSep 15, 2020
  12. Junio C HamanoSep 15, 2020
  13. Jakub NarębskiSep 15, 2020

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.