Jeff King <peff@xxxxxxxx> writes: > On Sat, Mar 01, 2014 at 12:01:44PM +0100, Matthieu Moy wrote: > >> Jeff King <peff@xxxxxxxx> writes: >> >> > If we had the keys in-memory, we could reverse this: config code asks >> > for keys it cares about, and we can do an optimized lookup (binary >> > search, hash, etc). >> >> I'm actually dreaming of a system where a configuration variable could >> be "declared" in Git's source code, with associated type (list/single >> value, boolean/string/path/...), default value and documentation (and >> then Documentation/config.txt could become a generated file). One could >> imagine a lot of possibilities like > > Yes, I think something like that would be very nice. ... > ... >> Migrating the whole code to such system would take time, but creating >> the system and applying it to a few examples might be feasible as a GSoC >> project. > > Agreed, as long as we have enough examples to feel confident that the > infrastructure is sufficient. I agree that it would give us a lot of enhancement opportunities if we had a central catalog of what the supported configuration variables are and what semantics (e.g. type, multi-value-ness, etc.) they have. One thing we need to be careful about is that we still must support random configuration items that git-core does not care about at all but scripts (and future versions of git-core) read off of, though. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html