Skip to content

Commit cf1557c

Browse files
committed
config caching idea: Fix a problem pointed out by Junio
And add another link to the mailing list.
1 parent 7521b80 commit cf1557c

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

SoC-2014-Ideas.md

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -298,11 +298,15 @@ This goal of this project is to make configuration work as follows:
298298
appropriate data structure in memory.
299299

300300
* Change `git_config()` to iterate through the pre-read values in
301-
memory rather than re-reading the configuration files.
301+
memory rather than re-reading the configuration files. This
302+
function should remain backwards-compatible with the old
303+
implementation so that callers don't have to all be rewritten at
304+
once.
302305

303-
* Add new API calls that allow the cache to be inquired easily and
304-
efficiently. Rewrite other functions like `git_config_int()` to be
305-
cache-aware.
306+
* Add new API functions that allow the cache to be inquired easily and
307+
efficiently. Add helper functions to retrieve configuration values
308+
of various types (string, integer, boolean, etc.) from the cache by
309+
name.
306310

307311
* Rewrite callers to use the new API wherever possible.
308312

@@ -311,8 +315,10 @@ like `git_config_early()` and `git_config_from_file()`, as well as how
311315
to invalidate the cache correctly in the case that the configuration
312316
is changed while `git` is executing.
313317

314-
See
315-
[this mailing list thread](http://article.gmane.org/gmane.comp.version-control.git/242952)
318+
See [this mailing list
319+
thread](http://article.gmane.org/gmane.comp.version-control.git/242952)
320+
and [this
321+
email](http://article.gmane.org/gmane.comp.version-control.git/243542)
316322
for some discussion about this and related ideas.
317323

318324
- Language: C

0 commit comments

Comments
 (0)