Subject: Re: What's cooking in git.git (May 2024, #07; Fri, 17)

From: Patrick Steinhardt <[email-masked]>
Date: Sat, 18 May 2024 06:52:07 +0200

On Fri, May 17, 2024 at 04:49:22PM -0700, Junio C Hamano wrote:
> [New Topics]
> 
> * tb/pack-bitmap-write-cleanups (2024-05-15) 6 commits
>  - pack-bitmap: introduce `bitmap_writer_free()`
>  - pack-bitmap-write.c: avoid uninitialized 'write_as' field
>  - pack-bitmap: drop unused `max_bitmaps` parameter
>  - pack-bitmap: avoid use of static `bitmap_writer`
>  - pack-bitmap-write.c: move commit_positions into commit_pos fields
>  - object.h: add flags allocated by pack-bitmap.h
> 
>  The pack bitmap code saw some clean-up to prepare for a follow-up topic.
> 
>  Will merge to 'next'?
>  source: <[email-masked]>

This patch series looks good to me. I left a few comments, but none of
them really need to be addressed.

> * ps/refs-without-the-repository-updates (2024-05-17) 17 commits
>  - refs/packed: remove references to `the_hash_algo`
>  - refs/files: remove references to `the_hash_algo`
>  - refs/files: use correct repository
>  - refs: remove `dwim_log()`
>  - refs: drop `git_default_branch_name()`
>  - refs: pass repo when peeling objects
>  - refs: move object peeling into "object.c"
>  - refs: pass ref store when detecting dangling symrefs
>  - refs: convert iteration over replace refs to accept ref store
>  - refs: retrieve worktree ref stores via associated repository
>  - refs: refactor `resolve_gitlink_ref()` to accept a repository
>  - refs: pass repo when retrieving submodule ref store
>  - refs: track ref stores via strmap
>  - refs: implement releasing ref storages
>  - refs: rename `init_db` callback to avoid confusion
>  - refs: adjust names for `init` and `init_db` callbacks
>  - Merge branch 'ps/refs-without-the-repository' into ps/refs-without-the-repository-updates
> 
>  Further clean-up the refs subsystem to stop relying on
>  the_repository, and instead use the repository associated to the
>  ref_store object.
> 
>  Will merge to 'next'?
>  source: <[email-masked]>

The second version hasn't seen any reviews yet, so I wouldn't mind
waiting a few more days. But overall the changes are quite straight
forward and shouldn't be all that controversial, so I wouldn't mind it
much if it was landing soonish.

> * ps/builtin-config-cleanup (2024-05-15) 22 commits
>  - builtin/config: pass data between callbacks via local variables
>  - builtin/config: convert flags to a local variable
>  - builtin/config: track "fixed value" option via flags only
>  - builtin/config: convert `key` to a local variable
>  - builtin/config: convert `key_regexp` to a local variable
>  - builtin/config: convert `regexp` to a local variable
>  - builtin/config: convert `value_pattern` to a local variable
>  - builtin/config: convert `do_not_match` to a local variable
>  - builtin/config: move `respect_includes_opt` into location options
>  - builtin/config: move default value into display options
>  - builtin/config: move type options into display options
>  - builtin/config: move display options into local variables
>  - builtin/config: move location options into local variables
>  - builtin/config: refactor functions to have common exit paths
>  - config: make the config source const
>  - builtin/config: check for writeability after source is set up
>  - builtin/config: move actions into `cmd_config_actions()`
>  - builtin/config: move legacy options into `cmd_config()`
>  - builtin/config: move subcommand options into `cmd_config()`
>  - builtin/config: move legacy mode into its own function
>  - builtin/config: stop printing full usage on misuse
>  - Merge branch 'ps/config-subcommands' into ps/builtin-config-cleanup
> 
>  Code clean-up to reduce inter-function communication inside
>  builtin/config.c done via the use of global variables.
> 
>  Will merge to 'next'?
>  source: <[email-masked]>

I think this should be ready to go.

> * ps/pseudo-ref-terminology (2024-05-15) 10 commits
>  - refs: refuse to write pseudorefs
>  - ref-filter: properly distinuish pseudo and root refs
>  - refs: pseudorefs are no refs
>  - refs: classify HEAD as a root ref
>  - refs: do not check ref existence in `is_root_ref()`
>  - refs: rename `is_special_ref()` to `is_pseudo_ref()`
>  - refs: rename `is_pseudoref()` to `is_root_ref()`
>  - Documentation/glossary: define root refs as refs
>  - Documentation/glossary: clarify limitations of pseudorefs
>  - Documentation/glossary: redefine pseudorefs as special refs
> 
>  Terminology to call various ref-like things are getting
>  straightened out.
> 
>  Will merge to 'next'?
>  cf. <vgzwb5xnlvz2gfiqamzrfcjs2xya3zhhoootyzopfpdrjapayq@wfsomyal4cf6>
>  source: <[email-masked]>

This has seen quite some discussion, but to the best of my knowlegde I
have addressed all the feedback. So I think this one should be ready to
go, too.

Thanks!

Patrick