[PATCH v2 0/6] batch tagging support: "notmuch tag --stdin"
[notmuch-archives.git] / 15 / 6a5ad36f87964cd06dc3a5b24511948bcb1fde
diff --git a/15/6a5ad36f87964cd06dc3a5b24511948bcb1fde b/15/6a5ad36f87964cd06dc3a5b24511948bcb1fde
new file mode 100644 (file)
index 0000000..d6ceb62
--- /dev/null
@@ -0,0 +1,111 @@
+Return-Path: <jani@nikula.org>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+       by olra.theworths.org (Postfix) with ESMTP id EA327431FAF\r
+       for <notmuch@notmuchmail.org>; Sat, 14 Apr 2012 05:15:39 -0700 (PDT)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: -0.7\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5\r
+       tests=[RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+       by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+       with ESMTP id YqorxJ8XWVRE for <notmuch@notmuchmail.org>;\r
+       Sat, 14 Apr 2012 05:15:37 -0700 (PDT)\r
+Received: from mail-lb0-f181.google.com (mail-lb0-f181.google.com\r
+       [209.85.217.181]) (using TLSv1 with cipher RC4-SHA (128/128 bits))\r
+       (No client certificate requested)\r
+       by olra.theworths.org (Postfix) with ESMTPS id 5E36C431FAE\r
+       for <notmuch@notmuchmail.org>; Sat, 14 Apr 2012 05:15:37 -0700 (PDT)\r
+Received: by lbdb5 with SMTP id b5so40243lbd.26\r
+       for <notmuch@notmuchmail.org>; Sat, 14 Apr 2012 05:15:35 -0700 (PDT)\r
+X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;\r
+       d=google.com; s=20120113;\r
+       h=from:to:cc:subject:date:message-id:x-mailer:x-gm-message-state;\r
+       bh=X9WNAza30JTCUSz9OcvVZmEcXc20o8V41Afm7ARg1VE=;\r
+       b=Iny5+c5Ohrv8LZn8YHZt1rDAqLJE+p+kRdcfi6WcFby3SoIQRfk/kab+ZFTlUwYR8J\r
+       ATVJEuEhyRh4y286xMr8gD+K+KPlW3gUgU84YzvbEiDDs5s8D8lbsKnR/5kQ+cUf5dyH\r
+       0qNZRU/uQK8vaUEq4lfaZM5hYsHqwZXbhlMYDg/c5oZX8ai2xQ7GS+D+je8XpvP6WOJ8\r
+       fPZdYuKpYFB19FYtc3mKHbozqR+tijnZ6WZDgvH7dziUVo6VWF1OSMzapMfSY1F9idC2\r
+       R6XrVLz9i6uCpSBIK3BOAne/cmlJxqZKZqnnDtXb0RVIHhpqj4Pt+f5iT3+W0bmUWMkF\r
+       P5aA==\r
+Received: by 10.152.102.228 with SMTP id fr4mr4478989lab.23.1334405735578;\r
+       Sat, 14 Apr 2012 05:15:35 -0700 (PDT)\r
+Received: from localhost (dsl-hkibrasgw4-fe50dc00-68.dhcp.inet.fi.\r
+       [80.220.80.68])\r
+       by mx.google.com with ESMTPS id te8sm12652318lab.3.2012.04.14.05.15.33\r
+       (version=SSLv3 cipher=OTHER); Sat, 14 Apr 2012 05:15:34 -0700 (PDT)\r
+From: Jani Nikula <jani@nikula.org>\r
+To: notmuch@notmuchmail.org\r
+Subject: [PATCH v2 0/6] batch tagging support: "notmuch tag --stdin"\r
+Date: Sat, 14 Apr 2012 15:15:25 +0300\r
+Message-Id: <cover.1334404979.git.jani@nikula.org>\r
+X-Mailer: git-send-email 1.7.5.4\r
+X-Gm-Message-State:\r
+ ALoCoQmdHvzFKrLcan7+8KQQQFl8F754uXiTWdmXl2j5R0t3oNe5Pa3JiYi6wM2ZbIkzOMm9pOKb\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+       <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Sat, 14 Apr 2012 12:15:40 -0000\r
+\r
+v2 of id:"cover.1333231401.git.jani@nikula.org"\r
+\r
+This series adds support for batch tagging through stdin to "notmuch\r
+tag". This should be useful and efficient for e.g. initial tagging\r
+scripts. Also, this adds locking around a batch of tag changes, which is\r
+also useful for initial tagging scripts. See the test patch for an\r
+example using a "here document".\r
+\r
+The idea is that the same format (and parser) would be later used for\r
+notmuch dump/restore, building on David's earlier work at\r
+id:"1324214111-32079-1-git-send-email-david@tethera.net".\r
+\r
+The v2 only has non-functional changes per David's comments, and\r
+squashes the first three patches of v1 into one.\r
+\r
+BR,\r
+Jani.\r
+\r
+\r
+David Bremner (3):\r
+  hex-escape: (en|de)code strings to/from restricted character set\r
+  test/hex-xcode: new test binary\r
+  test/hex-escaping: new test for hex escaping routines\r
+\r
+Jani Nikula (3):\r
+  cli: add support for batch tagging operations to "notmuch tag"\r
+  test: add test for notmuch tag --stdin option\r
+  man: document notmuch tag --stdin option\r
+\r
+ man/man1/notmuch-tag.1 |   44 +++++++++-\r
+ notmuch-tag.c          |  244 ++++++++++++++++++++++++++++++++++++++++++------\r
+ test/.gitignore        |    1 +\r
+ test/Makefile.local    |    6 +-\r
+ test/basic             |    2 +-\r
+ test/hex-escaping      |   26 +++++\r
+ test/hex-xcode.c       |  103 ++++++++++++++++++++\r
+ test/notmuch-test      |    1 +\r
+ test/tagging           |   13 +++\r
+ util/Makefile.local    |    2 +-\r
+ util/hex-escape.c      |  168 +++++++++++++++++++++++++++++++++\r
+ util/hex-escape.h      |   41 ++++++++\r
+ 12 files changed, 616 insertions(+), 35 deletions(-)\r
+ create mode 100755 test/hex-escaping\r
+ create mode 100644 test/hex-xcode.c\r
+ create mode 100644 util/hex-escape.c\r
+ create mode 100644 util/hex-escape.h\r
+\r
+-- \r
+1.7.5.4\r
+\r