Re: [PATCH v2 00/32] repository object
- From
- Jonathan Tan <jonathantanmy@google.com>
- Date
- Jun 12, 2017, 19:01 UTC
- Message-ID
- <20170612120140.3da90194@twelve2.svl.corp.google.com>
- In-Reply-To
- <20170610060712.foqre5fscaxu3tnx@sigill.intra.peff.net>
On Sat, 10 Jun 2017 02:07:12 -0400 Jeff King <peff@peff.net> wrote:
Show 6 quoted lines
> I do agree that "pass just what the sub-function needs" is a good rule > of thumb. But the reason that these are globals in the first place is > that there are a ton of them, and they are used at the lowest levels of > call chains. So I have a feeling that we're always going to need some > big object to hold all that context when doing multi-repo operations in > a single process.
From my experience with the codebase, it seems that most of these config variables are static (file-local). This means that the lowest levels of call chains could probably get away with storing per-repo configs in a static hashmap or associative array keyed by repo (if they cannot just pass the config around).
Having said that, if it did come to the hashmap, I probably would prefer just putting the config in the repo object too. So maybe that is the way to go.