From: Jani Nikula Date: Mon, 3 Jun 2013 07:15:49 +0000 (+0200) Subject: Re: [RFC PATCH] revert: Removed top level --stderr= option X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=d907b34378b32d2bc5ecf74e5e92736be7591c1b;p=notmuch-archives.git Re: [RFC PATCH] revert: Removed top level --stderr= option --- diff --git a/cc/a0aaad5bea740f546a9fb5823a6eb848f97b98 b/cc/a0aaad5bea740f546a9fb5823a6eb848f97b98 new file mode 100644 index 000000000..037f80418 --- /dev/null +++ b/cc/a0aaad5bea740f546a9fb5823a6eb848f97b98 @@ -0,0 +1,250 @@ +Return-Path: +X-Original-To: notmuch@notmuchmail.org +Delivered-To: notmuch@notmuchmail.org +Received: from localhost (localhost [127.0.0.1]) + by olra.theworths.org (Postfix) with ESMTP id 45411429E21 + for ; Mon, 3 Jun 2013 00:16:11 -0700 (PDT) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: -0.7 +X-Spam-Level: +X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5 + tests=[RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled +Received: from olra.theworths.org ([127.0.0.1]) + by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id vyOcMxVOHybI for ; + Mon, 3 Jun 2013 00:15:59 -0700 (PDT) +Received: from mail-we0-f174.google.com (mail-we0-f174.google.com + [74.125.82.174]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id 0721D421180 + for ; Mon, 3 Jun 2013 00:15:58 -0700 (PDT) +Received: by mail-we0-f174.google.com with SMTP id q58so1357211wes.5 + for ; Mon, 03 Jun 2013 00:15:56 -0700 (PDT) +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=google.com; s=20120113; + h=from:to:cc:subject:in-reply-to:references:user-agent:date + :message-id:mime-version:content-type:x-gm-message-state; + bh=2CzrHMnjrrzerHmF3PlDYsqx/St92vkOVYc1BqLryDM=; + b=RMAvNGVC44tV78vrivmad7upt04grxnLmtRQvrfAmQjKwFDKtfU5itQcPC8kKSaZoS + cBLngsMe+JrGjNIBKpcjsHfu0tO87WcoyKYhW8knhL4icXwDKUT+nYiIwqVsRFYT1sJS + pDrglC25TUVW2KC6kzhFDdH7Fo/XAxX6G/g0tbJaF35fxrCf+g16dso6mP+HNjcJ2ToA + sh0VIaNXsoX42O7PVTxpKylp3eYsVuonl9Xi7z2f94alNj8bV0My5RoxNZdXKyNuGXeC + Kfj0TTS6Ui6T1HgvD32gVhZVIolH8xr9l9eY+vWML8S4V97ObB67jGl/zQyDYmKj6mLj + ShyQ== +X-Received: by 10.180.11.206 with SMTP id s14mr11027210wib.40.1370243754079; + Mon, 03 Jun 2013 00:15:54 -0700 (PDT) +Received: from localhost ([2001:4b98:dc0:43:216:3eff:fe1b:25f3]) + by mx.google.com with ESMTPSA id + fx7sm21268524wic.11.2013.06.03.00.15.52 for + (version=TLSv1.1 cipher=RC4-SHA bits=128/128); + Mon, 03 Jun 2013 00:15:53 -0700 (PDT) +From: Jani Nikula +To: Tomi Ollila , notmuch@notmuchmail.org +Subject: Re: [RFC PATCH] revert: Removed top level --stderr= option +In-Reply-To: <1370027431-16018-1-git-send-email-tomi.ollila@iki.fi> +References: <1370027431-16018-1-git-send-email-tomi.ollila@iki.fi> +User-Agent: Notmuch/0.15.2+128~g80473f0 (http://notmuchmail.org) Emacs/23.2.1 + (x86_64-pc-linux-gnu) +Date: Mon, 03 Jun 2013 09:15:49 +0200 +Message-ID: <87k3mb1x7e.fsf@nikula.org> +MIME-Version: 1.0 +Content-Type: text/plain; charset=us-ascii +X-Gm-Message-State: + ALoCoQnEsZLIxKKJZF7b8azJc8d9+rkZvFfaUk6HWb64ADWNHtM/OrJWh10nMzk5EeNuX89ammt8 +Cc: tomi.ollila@iki.fi +X-BeenThere: notmuch@notmuchmail.org +X-Mailman-Version: 2.1.13 +Precedence: list +List-Id: "Use and development of the notmuch mail system." + +List-Unsubscribe: , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: , + +X-List-Received-Date: Mon, 03 Jun 2013 07:16:11 -0000 + +On Fri, 31 May 2013, Tomi Ollila wrote: +> While looked good on paper, its attempted use caused confusion, complexity, +> and potential for information leak when passed through wrapper scripts. +> For slimmer code and to lessen demand for maintenance/support the set of +> commits which added top level --stderr= option is now reverted. +> --- +> +> Change was easy, commit message hard. Opinions? Revert is easiest to do now. +> Also, if someone comes with a novel idea how to utilize --stderr option +> please tell it now -- I'd be most eager to hear it :D +> +> +> This change was done the following way: +> +> $ git checkout -b rvrt b9020448bd +> $ git reset --hard HEAD^^^^ +> $ git reset b9020448bd +> $ git commit -a +> $ git diff HEAD~5..HEAD + +Protip ;) + +$ git revert -n b9020448bd^^^^..b9020448bd +$ git commit + +BR, +Jani. + +> +> (last one to reveal HEAD~5 & HEAD have identical trees). +> +> Question why: +> id:20130521195549.6550.53636@thinkbox.jade-hamburg.de +> +> Good reason why not: +> id:1369934016-22308-1-git-send-email-amdragon@mit.edu +> +> +> NEWS | 5 ----- +> man/man1/notmuch.1 | 7 ------- +> notmuch-client.h | 1 - +> notmuch.c | 32 -------------------------------- +> test/help-test | 9 --------- +> 5 files changed, 54 deletions(-) +> +> diff --git a/NEWS b/NEWS +> index 80abd97..a7f2ec6 100644 +> --- a/NEWS +> +++ b/NEWS +> @@ -35,11 +35,6 @@ Top level option to specify configuration file +> It's now possible to specify the configuration file to use on the +> command line using the `notmuch --config=FILE` option. +> +> -Top level option to redirect writes to stderr +> - +> - With `notmuch --stderr=FILE` all writes to stderr are redirected to +> - the specified file. If FILE is '-', stderr is redirected to stdout. +> - +> Deprecated commands "part" and "search-tags" are removed. +> +> Bash command-line completion +> diff --git a/man/man1/notmuch.1 b/man/man1/notmuch.1 +> index f5ca0ad..033cc10 100644 +> --- a/man/man1/notmuch.1 +> +++ b/man/man1/notmuch.1 +> @@ -76,14 +76,7 @@ Print the installed version of notmuch, and exit. +> +> Specify the configuration file to use. This overrides any +> configuration file specified by ${NOTMUCH_CONFIG}. +> -.RE +> - +> -.RS 4 +> -.TP 4 +> -.B \-\-stderr=FILE +> +> -Redirect all writes to stderr to the specified file. +> -If FILE is '-', stderr is redirected to stdout. +> .RE +> +> .SH COMMANDS +> diff --git a/notmuch-client.h b/notmuch-client.h +> index 4a3c7ac..45749a6 100644 +> --- a/notmuch-client.h +> +++ b/notmuch-client.h +> @@ -54,7 +54,6 @@ typedef GMimeCipherContext notmuch_crypto_context_t; +> #include +> #include +> #include +> -#include +> #include +> #include +> #include +> diff --git a/notmuch.c b/notmuch.c +> index 15e90c8..f51a84f 100644 +> --- a/notmuch.c +> +++ b/notmuch.c +> @@ -251,32 +251,6 @@ notmuch_command (notmuch_config_t *config, +> return 0; +> } +> +> -static int +> -redirect_stderr (const char * stderr_file) +> -{ +> - if (strcmp (stderr_file, "-") == 0) { +> - if (dup2 (STDOUT_FILENO, STDERR_FILENO) < 0) { +> - perror ("dup2"); +> - return 1; +> - } +> - } else { +> - int fd = open (stderr_file, O_WRONLY|O_CREAT|O_TRUNC, 0666); +> - if (fd < 0) { +> - fprintf (stderr, "Error: Cannot redirect stderr to '%s': %s\n", +> - stderr_file, strerror (errno)); +> - return 1; +> - } +> - if (fd != STDERR_FILENO) { +> - if (dup2 (fd, STDERR_FILENO) < 0) { +> - perror ("dup2"); +> - return 1; +> - } +> - close (fd); +> - } +> - } +> - return 0; +> -} +> - +> int +> main (int argc, char *argv[]) +> { +> @@ -285,7 +259,6 @@ main (int argc, char *argv[]) +> const char *command_name = NULL; +> command_t *command; +> char *config_file_name = NULL; +> - char *stderr_file = NULL; +> notmuch_config_t *config; +> notmuch_bool_t print_help=FALSE, print_version=FALSE; +> int opt_index; +> @@ -295,7 +268,6 @@ main (int argc, char *argv[]) +> { NOTMUCH_OPT_BOOLEAN, &print_help, "help", 'h', 0 }, +> { NOTMUCH_OPT_BOOLEAN, &print_version, "version", 'v', 0 }, +> { NOTMUCH_OPT_STRING, &config_file_name, "config", 'c', 0 }, +> - { NOTMUCH_OPT_STRING, &stderr_file, "stderr", '\0', 0 }, +> { 0, 0, 0, 0, 0 } +> }; +> +> @@ -315,10 +287,6 @@ main (int argc, char *argv[]) +> return 1; +> } +> +> - if (stderr_file && redirect_stderr (stderr_file) != 0) { +> - /* error already printed */ +> - return 1; +> - } +> if (print_help) +> return notmuch_help_command (NULL, argc - 1, &argv[1]); +> +> diff --git a/test/help-test b/test/help-test +> index bd0111c..f7df725 100755 +> --- a/test/help-test +> +++ b/test/help-test +> @@ -9,13 +9,4 @@ test_expect_success 'notmuch help' 'notmuch help' +> test_expect_success 'notmuch help tag' 'notmuch help tag' +> test_expect_success 'notmuch --version' 'notmuch --version' +> +> -test_begin_subtest "notmuch --stderr=stderr help %" +> -notmuch --stderr=stderr help % +> -test_expect_equal "$(cat stderr)" " +> -Sorry, % is not a known command. There's not much I can do to help." +> - +> -test_begin_subtest "notmuch --stderr=- help %" +> -test_expect_equal "$(notmuch --stderr=- help %)" " +> -Sorry, % is not a known command. There's not much I can do to help." +> - +> test_done +> -- +> 1.8.0 +> +> _______________________________________________ +> notmuch mailing list +> notmuch@notmuchmail.org +> http://notmuchmail.org/mailman/listinfo/notmuch