[PATCH v2 00/11] git_config callers rewritten with the new config-set API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[v2]: git_die_config() messages changed. Diff between v1 and v2 is at the bottom.

The ta/config-set API is more or less solidified.

This series builds on the top of 4c715ebb in pu (ta/config-set). On top of it,
it also requires series [1] (Rewrite `git_config()` using config-set API) for
proper error checking.

This series is the first batch of patches which rewrites the existing callers
using a non-callback approach.
This series aims to,

* rewrite the existing callers, as you can see from the diff stat the bew API
  provides a much concise and clear control flow.

* stress test the new API, see if any corner cases or deficiencies arise or not.

The series passes all the tests, only thing to watch is that the config variables
that have been rewritten are single valued only. Though I have tried my best to
ascertain it, still mistakes may arise.

[1]: http://thread.gmane.org/gmane.comp.version-control.git/254633/

Tanay Abhra (11):
  daemon.c: replace `git_config()` with `git_config_get_bool()` family
  http-backend.c: replace `git_config()` with `git_config_get_bool()`
    family
  read-cache.c: replace `git_config()` with `git_config_get_*()` family
  archive.c: replace `git_config()` with `git_config_get_bool()` family
  fetchpack.c: replace `git_config()` with `git_config_get_*()` family
  rerere.c: replace `git_config()` with `git_config_get_*()` family
  builtin/gc.c: replace `git_config()` with `git_config_get_*()` family
  pager.c: replace `git_config()` with `git_config_get_value()`
  imap-send.c: replace `git_config()` with `git_config_get_*()` family
  alias.c: replace `git_config()` with `git_config_get_string()`
  branch.c: replace `git_config()` with `git_config_get_string()

 alias.c        | 25 ++++++------------------
 archive.c      | 12 +++---------
 branch.c       | 27 +++++++-------------------
 builtin/gc.c   | 51 ++++++++++++++++++++-----------------------------
 daemon.c       | 26 ++++---------------------
 fetch-pack.c   | 35 ++++++++--------------------------
 http-backend.c | 31 ++++++++++++------------------
 imap-send.c    | 60 +++++++++++++++++++++++++---------------------------------
 pager.c        | 40 +++++++++++++--------------------------
 read-cache.c   | 14 +++-----------
 rerere.c       | 43 ++++++++++++-----------------------------
 11 files changed, 114 insertions(+), 250 deletions(-)

-- 
1.9.0.GIT


-- 8< --
diff --git a/builtin/gc.c b/builtin/gc.c
index 4612ef5..5173657 100644
--- a/builtin/gc.c
+++ b/builtin/gc.c
@@ -76,8 +76,8 @@ static void gc_config(void)
    if (strcmp(prune_expire, "now")) {
      unsigned long now = approxidate("now");
      if (approxidate(prune_expire) >= now) {
-       error(_("Invalid %s: '%s'"), "gc.pruneexpire", prune_expire);
-       git_die_config("gc.pruneexpire");
+       git_die_config("gc.pruneexpire", _("Invalid gc.pruneexpire: '%s'"),
+                       prune_expire);
      }
    }
  }


diff --git a/daemon.c b/daemon.c
index fb16664..6f78b61 100644
--- a/daemon.c
+++ b/daemon.c
@@ -342,7 +342,6 @@ static int run_service(const char *dir, struct daemon_service *service)
    git_config_get_bool(var.buf, &enabled);
    strbuf_release(&var);
  }
-
  if (!enabled) {
    logerror("'%s': service not enabled for '%s'",
       service->name, path);
diff --git a/imap-send.c b/imap-send.c
index 586bdd8..618d75b 100644
--- a/imap-send.c
+++ b/imap-send.c
@@ -1336,8 +1336,7 @@ static void git_imap_config(void)
 
  if (!git_config_get_value("imap.host", &val)) {
    if (!val) {
-     config_error_nonbool("imap.host");
-     git_die_config("imap.host");
+     git_die_config("imap.host", "Missing value for 'imap.host'");
    } else {
      if (starts_with(val, "imap:"))
  val += 5;
-- 8< --
--
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




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]