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 56572431FBD for ; Sun, 18 Nov 2012 13:55:56 -0800 (PST) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: -0.799 X-Spam-Level: X-Spam-Status: No, score=-0.799 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, 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 b-ajqx+NimOc for ; Sun, 18 Nov 2012 13:55:55 -0800 (PST) Received: from mail-qc0-f181.google.com (mail-qc0-f181.google.com [209.85.216.181]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by olra.theworths.org (Postfix) with ESMTPS id D4136431FB6 for ; Sun, 18 Nov 2012 13:55:55 -0800 (PST) Received: by mail-qc0-f181.google.com with SMTP id x40so3164203qcp.26 for ; Sun, 18 Nov 2012 13:55:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:in-reply-to:references:user-agent:date:message-id :mime-version:content-type; bh=/HKZfC1QBOVEMSc2efm5FR5i/r0NXl+pmoj8vWTLgao=; b=LOc3d6RSpqZJ4t2Zkkv1Uxv2ZBuYppevQZKYWuodFLLDv8t46pciltDQhUxri388BI Smo67Zn6QZ6clsS5RZba0WbeOvAL+Qv7hFq9KQYJ8rFGakvMmStlIKfjHu/Wiyq8U4p3 A+GbGQ5aOQqqxlgr+NylCDlCP05R38uVYDhFDZeID4oEDjFFb8k/3OpUDxIf0Lho4VWB 6MpxNzU2K9pwvho2pPg6AHu+Fsbse0Yziy838J7du+5cn/Wfa+cNGLYJutnguyrACJrk shzzBb5CVRreMBdNqbhGbjEkxYqpOhEQ05X4lJW3DSrhkqZ5l89ssJr7mXOV4i9cLdGK xKTg== Received: by 10.49.2.74 with SMTP id 10mr11599665qes.10.1353275755225; Sun, 18 Nov 2012 13:55:55 -0800 (PST) Received: from smtp.gmail.com ([66.114.71.21]) by mx.google.com with ESMTPS id la6sm4366443qeb.8.2012.11.18.13.55.45 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 18 Nov 2012 13:55:46 -0800 (PST) From: Ethan Glasser-Camp To: david@tethera.net, notmuch@notmuchmail.org Subject: Re: Add new dump/restore format and batch tagging. In-Reply-To: <1353265498-3839-1-git-send-email-david@tethera.net> References: <1353265498-3839-1-git-send-email-david@tethera.net> User-Agent: Notmuch/0.14+45~g6ea9330 (http://notmuchmail.org) Emacs/24.1.1 (x86_64-pc-linux-gnu) Date: Sun, 18 Nov 2012 16:55:43 -0500 Message-ID: <87obiu1sps.fsf@betacantrips.com> MIME-Version: 1.0 Content-Type: text/plain 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: Sun, 18 Nov 2012 21:55:56 -0000 david@tethera.net writes: > which was revied by Tomi and Ethan. I think I implemented their > suggestions. Actually, I don't think you implemented all of mine. - Patch 4 still has a subject line that ends in a period. I don't think this is mandatory for everyone but some people consider it best practice. You still have the spelling "seperate" (also, patch 7 has "seperated"). - In patch 4, I still think this would look better if you switched the branches. + if (private_status == NOTMUCH_PRIVATE_STATUS_NO_DOCUMENT_FOUND) { + _notmuch_message_add_term (message, "type", "mail"); + } else { + return NOTMUCH_STATUS_DUPLICATE_MESSAGE_ID; + } - In patch 5, I still think this looks funny: + int num_tags = random () % (max_tags + 1); + int this_mid_len = random () % message_id_len + 1; Additionally, I would like a check that message_id_len is reasonable (more than 1, say). - Patch 8: +int +parse_tag_stream (void *ctx, + notmuch_database_t *notmuch, + FILE *input, + tag_callback_t callback, + tag_op_flag_t flags, + volatile sig_atomic_t *interrupted); Am I going crazy, or does this function not get implemented? - Patch 11: DUMP_FORMAT can change from DUMP_FORMAT_BATCH_TAG to DUMP_FORMAT_SUP if a paren is anywhere on the first line. I'd prefer this only happens if we have DUMP_FORMAT_AUTO. You probably want to move the comment "Dump output is..." closer to the regex. I don't see why it's necessary to have this: + query_string = query_string + 3; - Patch 13: + cp /dev/null EXPECTED.$test_count + notmuch dump --format=batch-tag -- from:cworth |\ + awk "{ print \"+$enc1 +$enc2 +$enc3 -- \" \$5 }" > EXPECTED.$test_count What's the purpose of the CP here? It just creates an empty file. You could do it with touch. Why even bother since you're going to fill it with stuff in a second? Actually, care to explain the dump and sed call? It looks like you're using this dump to encode the message IDs. If format=batch-tag skips a message for some reason or terminates early, the test won't fail. - Patch 16: +message-ids may contained arbitrary non-null characters. Note also I think this should be "may contain", or something else entirely if you're trying to describe past behavior of sup? Ethan