From a76682a2d2f61eb14e938eeab8f2824891d8e18c Mon Sep 17 00:00:00 2001 From: David Bremner Date: Sat, 19 Jan 2013 14:25:53 -0400 Subject: [PATCH] CLI: remove alias machinery, and "part", "search-tags" commands The commands are long deprecated, so removal is probably overdue. The real motivation is to simplify argument handling for notmuch so that we can migrate to the common argument parsing framework. --- NEWS | 8 ++++++++ devel/TODO | 7 ------- notmuch.c | 50 +------------------------------------------------- 3 files changed, 9 insertions(+), 56 deletions(-) diff --git a/NEWS b/NEWS index 9d6bd198..9db9daf0 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,11 @@ +Notmuch 0.16 (2013-MM-DD) +========================= + +Command-Line Interface +---------------------- + +Deprecated commands "part" and "search-tags" are removed. + Notmuch 0.15 (2013-01-18) ========================= diff --git a/devel/TODO b/devel/TODO index eb757af5..3741f0ef 100644 --- a/devel/TODO +++ b/devel/TODO @@ -118,13 +118,6 @@ file. Allow configuration for filename patterns that should be ignored when indexing. -Replace the "notmuch part --part=id" command with "notmuch show ---part=id", (David Edmondson wants to rewrite some of "notmuch show" to -provide more MIME-structure information in its output first). - -Replace the "notmuch search-tags" command with "notmuch search ---output=tags". - Fix to avoid this ugly message: (process:17197): gmime-CRITICAL **: g_mime_message_get_mime_part: assertion `GMIME_IS_MESSAGE (message)' failed diff --git a/notmuch.c b/notmuch.c index 4fc0973d..f13fd27a 100644 --- a/notmuch.c +++ b/notmuch.c @@ -31,18 +31,6 @@ typedef struct command { const char *summary; } command_t; -#define MAX_ALIAS_SUBSTITUTIONS 3 - -typedef struct alias { - const char *name; - const char *substitutions[MAX_ALIAS_SUBSTITUTIONS]; -} alias_t; - -alias_t aliases[] = { - { "part", { "show", "--format=raw"}}, - { "search-tags", {"search", "--output=tags", "*"}} -}; - static int notmuch_help_command (void *ctx, int argc, char *argv[]); @@ -260,9 +248,7 @@ main (int argc, char *argv[]) { void *local; command_t *command; - alias_t *alias; - unsigned int i, j; - const char **argv_local; + unsigned int i; talloc_enable_null_tracking (); @@ -285,40 +271,6 @@ main (int argc, char *argv[]) return 0; } - for (i = 0; i < ARRAY_SIZE (aliases); i++) { - alias = &aliases[i]; - - if (strcmp (argv[1], alias->name) == 0) - { - int substitutions; - - argv_local = talloc_size (local, sizeof (char *) * - (argc + MAX_ALIAS_SUBSTITUTIONS - 1)); - if (argv_local == NULL) { - fprintf (stderr, "Out of memory.\n"); - return 1; - } - - /* Copy all substution arguments from the alias. */ - argv_local[0] = argv[0]; - for (j = 0; j < MAX_ALIAS_SUBSTITUTIONS; j++) { - if (alias->substitutions[j] == NULL) - break; - argv_local[j+1] = alias->substitutions[j]; - } - substitutions = j; - - /* And copy all original arguments (skipping the argument - * that matched the alias of course. */ - for (j = 2; j < (unsigned) argc; j++) { - argv_local[substitutions+j-1] = argv[j]; - } - - argc += substitutions - 1; - argv = (char **) argv_local; - } - } - for (i = 0; i < ARRAY_SIZE (commands); i++) { command = &commands[i];