Subject: Re: What's cooking in git.git (Oct 2021, #05; Mon, 18)

From: Emily Shaffer <[email-masked]>
Date: Wed, 27 Oct 2021 12:26:15 -0700

Pretty late sending this, so I'll try to include newer versions since
this mail came out last week, too.

On Mon, Oct 18, 2021 at 11:48:04PM -0700, Junio C Hamano wrote:
> [New Topics]
> 
> * gc/remote-with-fewer-static-global-variables (2021-10-13) 3 commits
>  - remote: add struct repository parameter to external functions
>  - remote: use remote_state parameter internally
>  - remote: move static variables into per-repository struct
> 
>  Code clean-up to eventually allow information on remotes defined
>  for an arbitrary repository to be read.
> 
>  Will merge to 'next'?

Sounds like there was a segfault reported on v3 (sent 2021-10-19, so
between this mail going out and now). Glen says he is working on reroll.

v3:
https://lore.kernel.org/git/[email-masked]/

> * ab/config-based-hooks-2 (2021-10-15) 14 commits
>  - run-command: remove old run_hook_{le,ve}() hook API
>  - receive-pack: convert push-to-checkout hook to hook.h
>  - read-cache: convert post-index-change to use hook.h
>  - commit: convert {pre-commit,prepare-commit-msg} hook to hook.h
>  - git-p4: use 'git hook' to run hooks
>  - send-email: use 'git hook run' for 'sendemail-validate'
>  - git hook run: add an --ignore-missing flag
>  - merge: convert post-merge to use hook.h
>  - hooks: convert 'post-checkout' hook to hook library
>  - am: convert applypatch to use hook.h
>  - rebase: convert pre-rebase to use hook.h
>  - gc: use hook library for pre-auto-gc hook
>  - hook: add 'run' subcommand
>  - Merge branch 'ab/config-based-hooks-1' into ab/config-based-hooks-2
> 
>  More "config-based hooks".
> 
>  Breaks t2400.

I see Ævar posted a reroll
(https://lore.kernel.org/git/[email-masked]/).
I reviewed the prior version, but my review is not very useful since I
wrote many of these patches in the first place. So others who can
provide review would be doing me (and Ævar!) a favor (and I'd be happy
to trade review-for-review if needed ;) )

> * js/branch-track-inherit (2021-10-18) 1 commit
>  - branch: add flags and config to inherit tracking
> 
>  "git -c branch.autosetupmerge=inherit branch new old" makes "new"
>  to have the same upstream as the "old" branch, instead of marking
>  "old" itself as its upstream.
> 
>  Under discussion.
>  cf. <[email-masked]>

I think Josh is waiting for discussion to settle before a reroll.

> --------------------------------------------------
> [Stalled]
> 
> * ar/submodule-update (2021-10-13) 9 commits
>  . submodule--helper: rename helper functions
>  . submodule--helper: remove unused helpers
>  . submodule: move core cmd_update() logic to C
>  . submodule--helper: run update using child process struct
>  . submodule--helper: allow setting superprefix for init_submodule()
>  . submodule--helper: refactor get_submodule_displaypath()
>  . submodule--helper: rename helpers for update-clone
>  . submodule--helper: get remote names from any repository
>  . submodule--helper: split up ensure_core_worktree()
> 
>  Rewrite of "git submodule update" in C.
> 
>  Kicked out of 'seen' to make room for es/superproject-aware-submodules
>  which is among the topics this topic stomps on.

The latest version of es/superproject-aware-submodules is starved for
review. I'd appreciate eyes on it (and can swap review for review if
folks need.)

> --------------------------------------------------
> [Cooking]
> 
> * es/superproject-aware-submodules (2021-10-14) 4 commits
>  - submodule: record superproject gitdir during 'update'
>  - submodule: record superproject gitdir during absorbgitdirs
>  - introduce submodule.superprojectGitDir record
>  - t7400-submodule-basic: modernize inspect() helper
> 
>  A configuration variable in a submodule points at the location of
>  the superproject it is bound to (RFC).
> 
>  Will merge to 'next'?

Sounds like Jonathan Tan asked for an additional test and a small fixup.
I can either send a squash patch or a reroll - your preference.

> * jt/no-abuse-alternate-odb-for-submodules (2021-10-08) 9 commits
>   (merged to 'next' on 2021-10-14 at ae49a2ceda)
>  + submodule: trace adding submodule ODB as alternate
>  + submodule: pass repo to check_has_commit()
>  + object-file: only register submodule ODB if needed
>  + merge-{ort,recursive}: remove add_submodule_odb()
>  + refs: peeling non-the_repository iterators is BUG
>  + refs: teach arbitrary repo support to iterators
>  + refs: plumb repo into ref stores
>  + Merge branch 'jk/ref-paranoia' into jt/no-abuse-alternate-odb-for-submodules
>  + Merge branch 'jt/add-submodule-odb-clean-up' into jt/no-abuse-alternate-odb-for-submodules
> 
>  Follow through the work to use the repo interface to access
>  submodule objects in-process, instead of abusing the alternate
>  object database interface.
> 
>  Will merge to 'master'.

Thanks, glad to see it go in.

Additionally:

https://lore.kernel.org/git/[email-masked]/

  Jonathan is planning on sending a v2 soon - "hopefully this week."

Thanks all.

 - Emily