From: Patrick Steinhardt <ps@pks.im>
To: git@vger.kernel.org
Cc: Jeff King <peff@peff.net>, Junio C Hamano <gitster@pobox.com>,
Patrick Steinhardt <ps@pks.im>
Subject: [PATCH v4 00/15] config: make git_config_set die on failure
Date: Tue, 2 Feb 2016 12:51:41 +0100 [thread overview]
Message-ID: <1454413916-31984-1-git-send-email-ps@pks.im> (raw)
This is the fourth version of my patch series. Version three of
these patches can be found at [1]. These patches convert the
`git_config_set` family of functions such that they die by
default whenever an error is encountered in persisting configs.
This catches a lot of cases where we wrote configs without
checking the returned status code, thus leading to inconsistent
state witouth even notifying the user.
This version combines both version 2 ([2]) and version 3 of this
patch series in that we first introduce `git_config_set_or_die`
wrappers and converting most call sites to use these. After the
conversion is done, we rename `git_config_set` to
`git_config_set_gently` and adjusting remaining call sites. The
last step was to rename `git_config_set_or_die` to
`git_config_set` in order to get the desired default behavior.
This back-and-forth should hopefully help easing the transition
and review by breaking down the actual transition into small
pieces.
[1]: http://article.gmane.org/gmane.comp.version-control.git/285198
[2]: http://article.gmane.org/gmane.comp.version-control.git/285000
Patrick Steinhardt (15):
config: introduce set_or_die wrappers
branch: die on error in setting up tracking branch
branch: die on config error when unsetting upstream
branch: die on config error when editing branch description
submodule: die on config error when linking modules
submodule--helper: die on config error when cloning module
remote: die on config error when setting URL
remote: die on config error when setting/adding branches
remote: die on config error when manipulating remotes
clone: die on config error in cmd_clone
init-db: die on config errors when initializing empty repo
sequencer: die on config error when saving replay opts
compat: die when unable to set core.precomposeunicode
config: rename git_config_set to git_config_set_gently
config: rename git_config_set_or_die to git_config_set
branch.c | 13 +++++----
branch.h | 1 +
builtin/branch.c | 5 ++--
builtin/clone.c | 2 +-
builtin/config.c | 28 +++++++++----------
builtin/init-db.c | 2 +-
builtin/remote.c | 70 +++++++++++++++++-------------------------------
cache.h | 14 ++++++----
compat/precompose_utf8.c | 3 ++-
config.c | 52 ++++++++++++++++++++++++++---------
submodule.c | 10 +++----
t/t3200-branch.sh | 16 ++++++++++-
t/t5505-remote.sh | 9 +++++++
13 files changed, 128 insertions(+), 97 deletions(-)
--
2.7.0
next reply other threads:[~2016-02-02 11:52 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-02 11:51 Patrick Steinhardt [this message]
2016-02-02 11:51 ` [PATCH v4 01/15] config: introduce set_or_die wrappers Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 02/15] branch: die on error in setting up tracking branch Patrick Steinhardt
2016-02-02 20:49 ` Junio C Hamano
2016-02-08 13:42 ` Patrick Steinhardt
2016-02-08 14:03 ` Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 03/15] branch: die on config error when unsetting upstream Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 04/15] branch: die on config error when editing branch description Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 05/15] submodule: die on config error when linking modules Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 06/15] submodule--helper: die on config error when cloning module Patrick Steinhardt
2016-02-02 18:45 ` Eric Sunshine
2016-02-08 14:05 ` Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 07/15] remote: die on config error when setting URL Patrick Steinhardt
2016-02-02 12:00 ` Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 08/15] remote: die on config error when setting/adding branches Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 09/15] remote: die on config error when manipulating remotes Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 10/15] clone: die on config error in cmd_clone Patrick Steinhardt
2016-02-02 20:55 ` Junio C Hamano
2016-02-02 11:51 ` [PATCH v4 11/15] init-db: die on config errors when initializing empty repo Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 12/15] sequencer: die on config error when saving replay opts Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 13/15] compat: die when unable to set core.precomposeunicode Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 14/15] config: rename git_config_set to git_config_set_gently Patrick Steinhardt
2016-02-02 11:51 ` [PATCH v4 15/15] config: rename git_config_set_or_die to git_config_set Patrick Steinhardt
2016-02-02 18:52 ` [PATCH v4 00/15] config: make git_config_set die on failure Stefan Beller
2016-02-02 20:58 ` Junio C Hamano
2016-02-04 8:56 ` Patrick Steinhardt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1454413916-31984-1-git-send-email-ps@pks.im \
--to=ps@pks.im \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).