From patchwork Thu Apr 8 15:04:16 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12191695 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5E42AC433B4 for ; Thu, 8 Apr 2021 15:04:39 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 224DD610F9 for ; Thu, 8 Apr 2021 15:04:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231964AbhDHPEs (ORCPT ); Thu, 8 Apr 2021 11:04:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59900 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231863AbhDHPEq (ORCPT ); Thu, 8 Apr 2021 11:04:46 -0400 Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B3886C061761 for ; Thu, 8 Apr 2021 08:04:34 -0700 (PDT) Received: by mail-ed1-x52e.google.com with SMTP id s15so2838637edd.4 for ; Thu, 08 Apr 2021 08:04:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jRJuW7H4YQZnbbZkqFt7TviHuo/lv8u9yJCh6cdE75M=; b=m9IwSbkEXRXwyzB+kJwzB/HTsBbbAqW3eycKeYiBfIGKaQhSC4h61wGidOB9XQ26sb z69S/1UnlWU3oSZahTjsX7Y8Xmuqk7BHKry6iyIhpoCzMbqRcPuV/g9hjwNdp8I5TPjq NjmMkoIoc+NSNUp1m19nPaUHsrJQ6UWzaXUeFCLDymbBGUc/C6rTJzK3AhUZPxZJzxPh QvaF5lK8G1Eny1UIaW6Yx5T5sY8XC4yQxahPr8REvwPyjm8GFOgiL7/IC0q8KETnO/jC owkbQujHmWN5Q3ASlqBxgwwZm2d+xHyq6qWE45FrX7zsOYMRWQ4L1vsMFOsH3YMmYN+A RPCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=jRJuW7H4YQZnbbZkqFt7TviHuo/lv8u9yJCh6cdE75M=; b=E4BD7exO9zRVuZdnRecsphh+9imH3gcRkiLGoiX0bse48ua8IUnMSis4YHkoFw027x 7dJFFFqGHIa6VRyDBPMqS22vwSYlrnV8lXx7aOqK/s2ckaPhWv2Rt5DQV8hNU/22JCH3 Fj2JLOO5xsztFgBpG2RFeayKISG3z3K09IRq4Y8B6UULoe62ozsSyPqPQH/poK1fMj+K 2YghAmJpZ1lgHF1VuVhGXpxzmWWmfhj5o33lk778Bupkq0iDhW7kzmVzX1dBMnCW0MCk EwIvrhYi9PfkO8eopMM2VgtYSxjuEltPX9RRI4iH9E4ZdIK75ue6iahEaS+xz2XU+o04 Tx2Q== X-Gm-Message-State: AOAM530WemJTLr4Lom5zRLEAckmjbQWxvJd0v6qWuyl5uQOCd7zWZvn3 KcrLavQpl8Gjo7YicUCcgLRs4eMJzi3VNw== X-Google-Smtp-Source: ABdhPJx3vtQpwNLDQbJ92t2CwYnNXqHVN+AM9bH9KcKK2/RsZHePQLvd4JvNMKdBngOoFnCrXUkaDg== X-Received: by 2002:a05:6402:3592:: with SMTP id y18mr11873547edc.360.1617894273124; Thu, 08 Apr 2021 08:04:33 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id h25sm2479253ejx.105.2021.04.08.08.04.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Apr 2021 08:04:32 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v5 1/9] userdiff style: re-order drivers in alphabetical order Date: Thu, 8 Apr 2021 17:04:16 +0200 Message-Id: X-Mailer: git-send-email 2.31.1.527.g9b8f7de2547 In-Reply-To: References: MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Address some old code smell and move around the built-in userdiff drivers so they're both in alphabetical order, and now in the same order they appear in the gitattributes(5) documentation. The two started drifting in be58e70dba (diff: unify external diff and funcname parsing code, 2008-10-05), and then even further in 80c49c3de2 (color-words: make regex configurable via attributes, 2009-01-17) when the "cpp" pattern was added. There are no functional changes here, and as --color-moved will show only moved existing lines. Signed-off-by: Ævar Arnfjörð Bjarmason --- userdiff.c | 76 +++++++++++++++++++++++++++--------------------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/userdiff.c b/userdiff.c index 3f81a2261c..650f421d63 100644 --- a/userdiff.c +++ b/userdiff.c @@ -44,6 +44,44 @@ PATTERNS("bash", /* -- */ /* Characters not in the default $IFS value */ "[^ \t]+"), +PATTERNS("bibtex", "(@[a-zA-Z]{1,}[ \t]*\\{{0,1}[ \t]*[^ \t\"@',\\#}{~%]*).*$", + "[={}\"]|[^={}\" \t]+"), +PATTERNS("cpp", + /* Jump targets or access declarations */ + "!^[ \t]*[A-Za-z_][A-Za-z_0-9]*:[[:space:]]*($|/[/*])\n" + /* functions/methods, variables, and compounds at top level */ + "^((::[[:space:]]*)?[A-Za-z_].*)$", + /* -- */ + "[a-zA-Z_][a-zA-Z0-9_]*" + "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lLuU]*" + "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->\\*?|\\.\\*"), +PATTERNS("csharp", + /* Keywords */ + "!^[ \t]*(do|while|for|if|else|instanceof|new|return|switch|case|throw|catch|using)\n" + /* Methods and constructors */ + "^[ \t]*(((static|public|internal|private|protected|new|virtual|sealed|override|unsafe|async)[ \t]+)*[][<>@.~_[:alnum:]]+[ \t]+[<>@._[:alnum:]]+[ \t]*\\(.*\\))[ \t]*$\n" + /* Properties */ + "^[ \t]*(((static|public|internal|private|protected|new|virtual|sealed|override|unsafe)[ \t]+)*[][<>@.~_[:alnum:]]+[ \t]+[@._[:alnum:]]+)[ \t]*$\n" + /* Type definitions */ + "^[ \t]*(((static|public|internal|private|protected|new|unsafe|sealed|abstract|partial)[ \t]+)*(class|enum|interface|struct)[ \t]+.*)$\n" + /* Namespace */ + "^[ \t]*(namespace[ \t]+.*)$", + /* -- */ + "[a-zA-Z_][a-zA-Z0-9_]*" + "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lL]?" + "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->"), +IPATTERN("css", + "![:;][[:space:]]*$\n" + "^[:[@.#]?[_a-z0-9].*$", + /* -- */ + /* + * This regex comes from W3C CSS specs. Should theoretically also + * allow ISO 10646 characters U+00A0 and higher, + * but they are not handled in this regex. + */ + "-?[_a-zA-Z][-_a-zA-Z0-9]*" /* identifiers */ + "|-?[0-9]+|\\#[0-9a-fA-F]+" /* numbers */ +), PATTERNS("dts", "!;\n" "!=\n" @@ -191,46 +229,8 @@ PATTERNS("rust", "[a-zA-Z_][a-zA-Z0-9_]*" "|[0-9][0-9_a-fA-Fiosuxz]*(\\.([0-9]*[eE][+-]?)?[0-9_fF]*)?" "|[-+*\\/<>%&^|=!:]=|<<=?|>>=?|&&|\\|\\||->|=>|\\.{2}=|\\.{3}|::"), -PATTERNS("bibtex", "(@[a-zA-Z]{1,}[ \t]*\\{{0,1}[ \t]*[^ \t\"@',\\#}{~%]*).*$", - "[={}\"]|[^={}\" \t]+"), PATTERNS("tex", "^(\\\\((sub)*section|chapter|part)\\*{0,1}\\{.*)$", "\\\\[a-zA-Z@]+|\\\\.|[a-zA-Z0-9\x80-\xff]+"), -PATTERNS("cpp", - /* Jump targets or access declarations */ - "!^[ \t]*[A-Za-z_][A-Za-z_0-9]*:[[:space:]]*($|/[/*])\n" - /* functions/methods, variables, and compounds at top level */ - "^((::[[:space:]]*)?[A-Za-z_].*)$", - /* -- */ - "[a-zA-Z_][a-zA-Z0-9_]*" - "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lLuU]*" - "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->\\*?|\\.\\*"), -PATTERNS("csharp", - /* Keywords */ - "!^[ \t]*(do|while|for|if|else|instanceof|new|return|switch|case|throw|catch|using)\n" - /* Methods and constructors */ - "^[ \t]*(((static|public|internal|private|protected|new|virtual|sealed|override|unsafe|async)[ \t]+)*[][<>@.~_[:alnum:]]+[ \t]+[<>@._[:alnum:]]+[ \t]*\\(.*\\))[ \t]*$\n" - /* Properties */ - "^[ \t]*(((static|public|internal|private|protected|new|virtual|sealed|override|unsafe)[ \t]+)*[][<>@.~_[:alnum:]]+[ \t]+[@._[:alnum:]]+)[ \t]*$\n" - /* Type definitions */ - "^[ \t]*(((static|public|internal|private|protected|new|unsafe|sealed|abstract|partial)[ \t]+)*(class|enum|interface|struct)[ \t]+.*)$\n" - /* Namespace */ - "^[ \t]*(namespace[ \t]+.*)$", - /* -- */ - "[a-zA-Z_][a-zA-Z0-9_]*" - "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lL]?" - "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->"), -IPATTERN("css", - "![:;][[:space:]]*$\n" - "^[:[@.#]?[_a-z0-9].*$", - /* -- */ - /* - * This regex comes from W3C CSS specs. Should theoretically also - * allow ISO 10646 characters U+00A0 and higher, - * but they are not handled in this regex. - */ - "-?[_a-zA-Z][-_a-zA-Z0-9]*" /* identifiers */ - "|-?[0-9]+|\\#[0-9a-fA-F]+" /* numbers */ -), { "default", NULL, -1, { NULL, 0 } }, }; #undef PATTERNS From patchwork Wed Mar 24 01:48:44 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12160017 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7A0AEC433E3 for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 5CA98619F6 for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234674AbhCXBtg (ORCPT ); Tue, 23 Mar 2021 21:49:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54828 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231970AbhCXBtR (ORCPT ); Tue, 23 Mar 2021 21:49:17 -0400 Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com [IPv6:2a00:1450:4864:20::42b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8523AC061763 for ; Tue, 23 Mar 2021 18:49:17 -0700 (PDT) Received: by mail-wr1-x42b.google.com with SMTP id z2so22800559wrl.5 for ; Tue, 23 Mar 2021 18:49:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=IeRuP+pS+/sm1sC22MtdQd0TRkDMjgEXIT6yIo7QtMw=; b=P/hiU8bMv9cN/dkl+0pdDfCSXjvfALM+6Va/tX2ihK2LhYEaJK43gRicEJJKfl/EPY Xl1xAB4MKpzZuZcKaiGm2kXWDaH81zNd0VB4ZBWf6Xva0do2k6nL9EjLqvACtxtLPYX5 z5rWkx8xLZBh6yWTXWYB1S+NV74aY2vdEmJbA3ySlYP4yWwAihWVLVvmUNRgyzQ0g4BC SQ/7QZ3Wcf4ZHvGQCIn2PrVebhiyfbNRHrr4y8xXmFTBFTJ5hCW4vhJNc14+dmBBK2el tSl4ux/Q2a8Obas52lDPHJyTQOyIj4A8cHjK9MU1UI+gjJCJWh+KBBft5AxQvH3A0SVd hxwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=IeRuP+pS+/sm1sC22MtdQd0TRkDMjgEXIT6yIo7QtMw=; b=rObdBhvdJRQHVxt6TPMlj/XRIFvNhY5KoSxNIugfwG/asCaYWwlSmX8N0KKflFWZcR P4bdqIQnXeW7MEVtFDAYGigC2W+MbgpSPDsseUfOywLCd7IpMIdlFXxLcv5cTcdr/Sq3 fa3HNgZnkE38JDUIAU+MIqQ3RE32kquKc6yIAehS18Kx4AjHI2akm4ISRmthFQ+XhOUw vwJCqscI0gt6U7OfyIjZ/2hQMktvguC+SS27OzZ8VD4SMfinTttBpIPWqFCoZXZcha4g TQlvvlM1Tq3J/7qdt0NDbebVqzgbLLUlPmLVVjn+quqbHd4I2HtJ+ng46rtat4Au5vLX eCAQ== X-Gm-Message-State: AOAM533SR4nIeLmYs5xlUmtiSzE5ozXt3KVynbAiz4WO6fWNRu2S2ytG H1ANTttCpNxpPV3Og1ZbvCwDVxOwkRiPWQ== X-Google-Smtp-Source: ABdhPJyt8MDdrSie5gOuYB9L/CvRoh/P/RL6xYx7UQDTS9E8R7M3dMlYFfrE3TQPzRj4ADcxFgoEzw== X-Received: by 2002:a5d:518c:: with SMTP id k12mr749412wrv.15.1616550555940; Tue, 23 Mar 2021 18:49:15 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id y205sm598177wmc.18.2021.03.23.18.49.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 18:49:15 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v4 02/10] userdiff style: re-order drivers in alphabetical order Date: Wed, 24 Mar 2021 02:48:44 +0100 Message-Id: X-Mailer: git-send-email 2.31.0.366.ga80606b22c1 In-Reply-To: References: <20210224195129.4004-1-avarab@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Address some old code smell and move around the built-in userdiff drivers so they're both in alphabetical order, and now in the same order they appear in the gitattributes(5) documentation. The two started drifting in be58e70dba (diff: unify external diff and funcname parsing code, 2008-10-05), and then even further in 80c49c3de2 (color-words: make regex configurable via attributes, 2009-01-17) when the "cpp" pattern was added. There are no functional changes here, and as --color-moved will show only moved existing lines. Signed-off-by: Ævar Arnfjörð Bjarmason --- userdiff.c | 76 +++++++++++++++++++++++++++--------------------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/userdiff.c b/userdiff.c index c147bcbb173..c92cbcc0540 100644 --- a/userdiff.c +++ b/userdiff.c @@ -44,6 +44,44 @@ PATTERNS("bash", /* -- */ /* Characters not in the default $IFS value */ "[^ \t]+"), +PATTERNS("bibtex", "(@[a-zA-Z]{1,}[ \t]*\\{{0,1}[ \t]*[^ \t\"@',\\#}{~%]*).*$", + "[={}\"]|[^={}\" \t]+"), +PATTERNS("cpp", + /* Jump targets or access declarations */ + "!^[ \t]*[A-Za-z_][A-Za-z_0-9]*:[[:space:]]*($|/[/*])\n" + /* functions/methods, variables, and compounds at top level */ + "^((::[[:space:]]*)?[A-Za-z_].*)$", + /* -- */ + "[a-zA-Z_][a-zA-Z0-9_]*" + "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lLuU]*" + "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->\\*?|\\.\\*"), +PATTERNS("csharp", + /* Keywords */ + "!^[ \t]*(do|while|for|if|else|instanceof|new|return|switch|case|throw|catch|using)\n" + /* Methods and constructors */ + "^[ \t]*(((static|public|internal|private|protected|new|virtual|sealed|override|unsafe|async)[ \t]+)*[][<>@.~_[:alnum:]]+[ \t]+[<>@._[:alnum:]]+[ \t]*\\(.*\\))[ \t]*$\n" + /* Properties */ + "^[ \t]*(((static|public|internal|private|protected|new|virtual|sealed|override|unsafe)[ \t]+)*[][<>@.~_[:alnum:]]+[ \t]+[@._[:alnum:]]+)[ \t]*$\n" + /* Type definitions */ + "^[ \t]*(((static|public|internal|private|protected|new|unsafe|sealed|abstract|partial)[ \t]+)*(class|enum|interface|struct)[ \t]+.*)$\n" + /* Namespace */ + "^[ \t]*(namespace[ \t]+.*)$", + /* -- */ + "[a-zA-Z_][a-zA-Z0-9_]*" + "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lL]?" + "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->"), +IPATTERN("css", + "![:;][[:space:]]*$\n" + "^[:[@.#]?[_a-z0-9].*$", + /* -- */ + /* + * This regex comes from W3C CSS specs. Should theoretically also + * allow ISO 10646 characters U+00A0 and higher, + * but they are not handled in this regex. + */ + "-?[_a-zA-Z][-_a-zA-Z0-9]*" /* identifiers */ + "|-?[0-9]+|\\#[0-9a-fA-F]+" /* numbers */ +), PATTERNS("dts", "!;\n" "!=\n" @@ -191,46 +229,8 @@ PATTERNS("rust", "[a-zA-Z_][a-zA-Z0-9_]*" "|[0-9][0-9_a-fA-Fiosuxz]*(\\.([0-9]*[eE][+-]?)?[0-9_fF]*)?" "|[-+*\\/<>%&^|=!:]=|<<=?|>>=?|&&|\\|\\||->|=>|\\.{2}=|\\.{3}|::"), -PATTERNS("bibtex", "(@[a-zA-Z]{1,}[ \t]*\\{{0,1}[ \t]*[^ \t\"@',\\#}{~%]*).*$", - "[={}\"]|[^={}\" \t]+"), PATTERNS("tex", "^(\\\\((sub)*section|chapter|part)\\*{0,1}\\{.*)$", "\\\\[a-zA-Z@]+|\\\\.|[a-zA-Z0-9\x80-\xff]+"), -PATTERNS("cpp", - /* Jump targets or access declarations */ - "!^[ \t]*[A-Za-z_][A-Za-z_0-9]*:[[:space:]]*($|/[/*])\n" - /* functions/methods, variables, and compounds at top level */ - "^((::[[:space:]]*)?[A-Za-z_].*)$", - /* -- */ - "[a-zA-Z_][a-zA-Z0-9_]*" - "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lLuU]*" - "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->\\*?|\\.\\*"), -PATTERNS("csharp", - /* Keywords */ - "!^[ \t]*(do|while|for|if|else|instanceof|new|return|switch|case|throw|catch|using)\n" - /* Methods and constructors */ - "^[ \t]*(((static|public|internal|private|protected|new|virtual|sealed|override|unsafe|async)[ \t]+)*[][<>@.~_[:alnum:]]+[ \t]+[<>@._[:alnum:]]+[ \t]*\\(.*\\))[ \t]*$\n" - /* Properties */ - "^[ \t]*(((static|public|internal|private|protected|new|virtual|sealed|override|unsafe)[ \t]+)*[][<>@.~_[:alnum:]]+[ \t]+[@._[:alnum:]]+)[ \t]*$\n" - /* Type definitions */ - "^[ \t]*(((static|public|internal|private|protected|new|unsafe|sealed|abstract|partial)[ \t]+)*(class|enum|interface|struct)[ \t]+.*)$\n" - /* Namespace */ - "^[ \t]*(namespace[ \t]+.*)$", - /* -- */ - "[a-zA-Z_][a-zA-Z0-9_]*" - "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lL]?" - "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->"), -IPATTERN("css", - "![:;][[:space:]]*$\n" - "^[:[@.#]?[_a-z0-9].*$", - /* -- */ - /* - * This regex comes from W3C CSS specs. Should theoretically also - * allow ISO 10646 characters U+00A0 and higher, - * but they are not handled in this regex. - */ - "-?[_a-zA-Z][-_a-zA-Z0-9]*" /* identifiers */ - "|-?[0-9]+|\\#[0-9a-fA-F]+" /* numbers */ -), { "default", NULL, -1, { NULL, 0 } }, }; #undef PATTERNS From patchwork Wed Mar 24 01:48:45 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12160033 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7BBBAC433E6 for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 6C60B619EC for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234662AbhCXBtf (ORCPT ); Tue, 23 Mar 2021 21:49:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54830 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234332AbhCXBtS (ORCPT ); Tue, 23 Mar 2021 21:49:18 -0400 Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [IPv6:2a00:1450:4864:20::429]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 47198C061763 for ; Tue, 23 Mar 2021 18:49:18 -0700 (PDT) Received: by mail-wr1-x429.google.com with SMTP id k8so22771377wrc.3 for ; Tue, 23 Mar 2021 18:49:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=aMawoFm7GuNo/SuXnBFOHXnnMr5j69BXZz5LvaNVzL4=; b=nTOPBhMZiBIBFPaRYlb2XNLhXiv9f9UQjNa226DEsqw4Jr9v38AdrnwYAR0jqE3OE6 IHqyQf1osf6IofGc97l3MkaqllRL7UnlPpxRAI2aA1XezNYYcdffy1ejb50DijaNfsWW PChID3JTty+7/QD17GpeG7h9bmxJaxDG73Q3MRH6yobj+46LImDTcGGxeimQaw3HU7/u /6EA+2390stp0fQOgfvOTMjG2/rpByyeRcTj4IUV9XUV1BB6D8gaQNEIFnzmfKuOE+2q 6/sOqWLLU1PBCO6RZp1wXWmVCKByb9inXElWZ1O/J4DsDFetgnXucu6D8fFfcgoxGYiX tncw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=aMawoFm7GuNo/SuXnBFOHXnnMr5j69BXZz5LvaNVzL4=; b=MIo9CKVzM0X7SAPE67noN4zgJlifNjpyV20mZjGBTj6Fb20loVkhoauGUMhsynlDE5 D7qqcpuWx0lZdZCCuxT9teYk1wH85pGc3GFJDsR1tpPu4kXMSm9A8Qb4zRVBHeF7AOFy umLD00m++wG7nBmiueNpsLS+IVTBLJZes5JYXqekQntg/rCh0Av5iv6pwmP1iQ2/sTOk pZFJBsFeoQzg5f4nG8ysp/CbC027F+h1Pb5memuX2DFMCs+6EqGiM39DrqPbDTNKR5rV eRw3Mr2hKuWfUPXzeWRU+mnoDt2xExrCCmQJo0n7SJO358Xa9aJQwbTtpxziyzi5ZXS5 3WhA== X-Gm-Message-State: AOAM533C3rRCSpyPWArzHJ8NoRa3rT6b10LNQY6aUrkwxhv6LMaThfbp ulfbyOdrIJbK6Ar6DWmDDrcFmijdVgKN+Q== X-Google-Smtp-Source: ABdhPJzif3w+WlVRzhRb0dJFAJXpcjgBNADS6ekt9k9AAeKGIv6aURXjb0SKxZn21LKEj+ELk0Kp5w== X-Received: by 2002:a5d:4d09:: with SMTP id z9mr724825wrt.426.1616550556713; Tue, 23 Mar 2021 18:49:16 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id y205sm598177wmc.18.2021.03.23.18.49.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 18:49:16 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v4 03/10] userdiff style: declare patterns with consistent style Date: Wed, 24 Mar 2021 02:48:45 +0100 Message-Id: X-Mailer: git-send-email 2.31.0.366.ga80606b22c1 In-Reply-To: References: <20210224195129.4004-1-avarab@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Change those patterns which were declared with a regex on the same line as the "PATTERNS()" line to put that regex on the next line, and add missing "/* -- */" separator comments between the pattern and word_regex. Signed-off-by: Ævar Arnfjörð Bjarmason --- userdiff.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/userdiff.c b/userdiff.c index c92cbcc0540..c7aaf7094f8 100644 --- a/userdiff.c +++ b/userdiff.c @@ -44,7 +44,9 @@ PATTERNS("bash", /* -- */ /* Characters not in the default $IFS value */ "[^ \t]+"), -PATTERNS("bibtex", "(@[a-zA-Z]{1,}[ \t]*\\{{0,1}[ \t]*[^ \t\"@',\\#}{~%]*).*$", +PATTERNS("bibtex", + "(@[a-zA-Z]{1,}[ \t]*\\{{0,1}[ \t]*[^ \t\"@',\\#}{~%]*).*$", + /* -- */ "[={}\"]|[^={}\" \t]+"), PATTERNS("cpp", /* Jump targets or access declarations */ @@ -121,7 +123,9 @@ IPATTERN("fortran", * they would have been matched above as a variable anyway. */ "|[-+]?[0-9.]+([AaIiDdEeFfLlTtXx][Ss]?[-+]?[0-9.]*)?(_[a-zA-Z0-9][a-zA-Z0-9_]*)?" "|//|\\*\\*|::|[/<>=]="), -IPATTERN("fountain", "^((\\.[^.]|(int|ext|est|int\\.?/ext|i/e)[. ]).*)$", +IPATTERN("fountain", + "^((\\.[^.]|(int|ext|est|int\\.?/ext|i/e)[. ]).*)$", + /* -- */ "[^ \t-]+"), PATTERNS("golang", /* Functions */ @@ -132,7 +136,9 @@ PATTERNS("golang", "[a-zA-Z_][a-zA-Z0-9_]*" "|[-+0-9.eE]+i?|0[xX]?[0-9a-fA-F]+i?" "|[-+*/<>%&^|=!:]=|--|\\+\\+|<<=?|>>=?|&\\^=?|&&|\\|\\||<-|\\.{3}"), -PATTERNS("html", "^[ \t]*(<[Hh][1-6]([ \t].*)?>.*)$", +PATTERNS("html", + "^[ \t]*(<[Hh][1-6]([ \t].*)?>.*)$", + /* -- */ "[^<>= \t]+"), PATTERNS("java", "!^[ \t]*(catch|do|for|if|instanceof|new|return|switch|throw|while)\n" @@ -144,6 +150,7 @@ PATTERNS("java", "|--|\\+\\+|<<=?|>>>?=?|&&|\\|\\|"), PATTERNS("markdown", "^ {0,3}#{1,6}[ \t].*", + /* -- */ "[^<>= \t]+"), PATTERNS("matlab", /* @@ -152,6 +159,7 @@ PATTERNS("matlab", * that is understood by both. */ "^[[:space:]]*((classdef|function)[[:space:]].*)$|^(%%%?|##)[[:space:]].*$", + /* -- */ "[a-zA-Z_][a-zA-Z0-9_]*|[-+0-9.e]+|[=~<>]=|\\.[*/\\^']|\\|\\||&&"), PATTERNS("objc", /* Negate C statements that can look like functions */ @@ -212,13 +220,15 @@ PATTERNS("php", "[a-zA-Z_][a-zA-Z0-9_]*" "|[-+0-9.e]+|0[xXbB]?[0-9a-fA-F]+" "|[-+*/<>%&^|=!.]=|--|\\+\\+|<<=?|>>=?|===|&&|\\|\\||::|->"), -PATTERNS("python", "^[ \t]*((class|(async[ \t]+)?def)[ \t].*)$", +PATTERNS("python", + "^[ \t]*((class|(async[ \t]+)?def)[ \t].*)$", /* -- */ "[a-zA-Z_][a-zA-Z0-9_]*" "|[-+0-9.e]+[jJlL]?|0[xX]?[0-9a-fA-F]+[lL]?" "|[-+*/<>%&^|=!]=|//=?|<<=?|>>=?|\\*\\*=?"), /* -- */ -PATTERNS("ruby", "^[ \t]*((class|module|def)[ \t].*)$", +PATTERNS("ruby", + "^[ \t]*((class|module|def)[ \t].*)$", /* -- */ "(@|@@|\\$)?[a-zA-Z_][a-zA-Z0-9_]*" "|[-+0-9.e]+|0[xXbB]?[0-9a-fA-F]+|\\?(\\\\C-)?(\\\\M-)?." From patchwork Wed Mar 24 01:48:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12160021 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CA4C7C433E5 for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 7F0F0619EF for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234677AbhCXBtg (ORCPT ); Tue, 23 Mar 2021 21:49:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54834 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234534AbhCXBtT (ORCPT ); Tue, 23 Mar 2021 21:49:19 -0400 Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2C9A0C061763 for ; Tue, 23 Mar 2021 18:49:19 -0700 (PDT) Received: by mail-wm1-x335.google.com with SMTP id t5-20020a1c77050000b029010e62cea9deso338621wmi.0 for ; Tue, 23 Mar 2021 18:49:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=6PFl0iDxkj7zVlpuhq9V6NKTYKrJyJcPq1OwIosD244=; b=tkTZSFk+wIeXTfgW6ok6IK57p0m9TmOlRt0bv3lywFVVbS60F70fbYGVUG6wVKw3Ja t7YyuHUuQNGe0PvALxK44VD3x4z62TKiDqD/BM2cs2qd6DEaEC8FtMEX52oux+HcI6vB pyO0qJprzfqr4YR4gPpPIjKgB/xP6TVSrScI1PDVuhz5hFy8lqA+8fn8uRQkrZAyrf2C 5zEivLsw9V4xhPnaxPxC/9LZ3XreUuk+cTDw/wBoeKPcXIEGpioec9IE5az0e2gcqKxt wHiwI0ngPsDkFl/LClWX+4gS0lldiXIbfx3m8FKkWS0G+yC7q2EV9URAjbMO4vBNVAjc b6EQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=6PFl0iDxkj7zVlpuhq9V6NKTYKrJyJcPq1OwIosD244=; b=J1yipEIwXx7U0Xv2Qc/y69llsi8Y93xjSiLLMokb1KhPYPDnLRgrL4wlQW3DLZ6npx 9MxdRQtT0TxQq5RbHfFPamyv96zXhvgLvjWtLWkHMAJhIcTPLEYBv6FaaELNa+ZCpRkI Qj1R4KQnY29uoQEtbezAp+ZslI8ijc8YsHfEs+RSoc8hwxq9wgF9Bp8j3Q6dV7dFek7L k5kW0eZFJrylhvayg3+0AR8Yn5TE2VuP7CrEBJLosvAk6+uvTTLh8CgkTC7OnapUpGMH X9JFBRk9yI71oBEa255zlBbMP6AOU6a0LvpS+7NRFUQaahqLBz/HPXdkd79bYvm+dWpy 3bUw== X-Gm-Message-State: AOAM530crTUg+QctUJjrKB/MBPS3Lv9UrVu6D/6py2MlKIZ76ZrQ3fte +gAA8Yj8pjBpnEY/DjGfIARn5ptr5BClWw== X-Google-Smtp-Source: ABdhPJxtRb0wJx6o8iepJE9NcY/peHSWpX6IyPv3mSXXc5mv1l9qT98bGTn5xVSOQJGuTZgWOpDVjw== X-Received: by 2002:a1c:a745:: with SMTP id q66mr587587wme.21.1616550557652; Tue, 23 Mar 2021 18:49:17 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id y205sm598177wmc.18.2021.03.23.18.49.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 18:49:16 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v4 04/10] userdiff style: normalize pascal regex declaration Date: Wed, 24 Mar 2021 02:48:46 +0100 Message-Id: X-Mailer: git-send-email 2.31.0.366.ga80606b22c1 In-Reply-To: References: <20210224195129.4004-1-avarab@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Declare the pascal pattern consistently with how we declare the others, not having "\n" on one line by itself, but as part of the pattern, and when there are alterations have the "|" at the start, not end of the line. Signed-off-by: Ævar Arnfjörð Bjarmason --- userdiff.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/userdiff.c b/userdiff.c index c7aaf7094f8..10a02d36209 100644 --- a/userdiff.c +++ b/userdiff.c @@ -175,9 +175,8 @@ PATTERNS("objc", "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lL]?" "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->"), PATTERNS("pascal", - "^(((class[ \t]+)?(procedure|function)|constructor|destructor|interface|" - "implementation|initialization|finalization)[ \t]*.*)$" - "\n" + "^(((class[ \t]+)?(procedure|function)|constructor|destructor|interface" + "|implementation|initialization|finalization)[ \t]*.*)$\n" "^(.*=[ \t]*(class|record).*)$", /* -- */ "[a-zA-Z_][a-zA-Z0-9_]*" From patchwork Wed Mar 24 01:48:47 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12160025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E9757C433EA for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A906F61A05 for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234684AbhCXBth (ORCPT ); Tue, 23 Mar 2021 21:49:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54844 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234538AbhCXBtU (ORCPT ); Tue, 23 Mar 2021 21:49:20 -0400 Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com [IPv6:2a00:1450:4864:20::42f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D7FE2C061763 for ; Tue, 23 Mar 2021 18:49:19 -0700 (PDT) Received: by mail-wr1-x42f.google.com with SMTP id j7so22800280wrd.1 for ; Tue, 23 Mar 2021 18:49:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=vX0F8KGVcvq+hsDOU41OxzxH57opIj1jV160QaiGkx0=; b=t9DNyLIw51JKbG708TqkDdooqlO07ZAkQ4mVObmodimkQI6F+i7OYs3CuAZ6vjxPko h/VNxAmHhqeUrL5uelKmGwKbCljAGE7RzSZdCw2VtTTEYouMQXLU6ZITPibQERBQzS62 dEGQHX1njqa1lTJ3VjGy8qGqqpE/2YXB9VeQHD4xYj0uyMZ5RbJoboyKNFdwxJPSCdO5 zEJn6W0HJetzKJmErrBS24Yw5KSWHQGVz2/Tz7w/f9eKA/UKBRJsk7/RAjsHft66ZiNE Ft20RFYTNCtnk58wLy6tztENtn5OQjA8NQKZ5trDO2/PfXWI9Soyb7bn+l33rmBdsUNm 1VXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=vX0F8KGVcvq+hsDOU41OxzxH57opIj1jV160QaiGkx0=; b=CaBaZdZc2SQQY/6vlanEn9cb2Taw9H/GMyVLE5kJmueTkLo0gN8wDgb1SMNEmJtQdh b/dGVroclXlVoIQtbJDuL4rVoKx/YZJnDNsfjMYuiaKnzIMjjcXtotMoyRwkOeoIwDRV lPde2a99isHDg3c3aoJthGhQpKTT8RllESWaTJEVGonchOwQZ3VAmvMmxvoXKgr+Cm+9 OXaPVZ3kVmsEi0OrYeyfsshenF9U/oO69l/Vw+h82nrxbEwIXQWT+Znb0LK4kdrJZ/dm SFTE7PAbExbP+ugczf28xoKNmDHWHk/nY6zoaYnIqKjJ+eh5WQ7qas2yds8aI6QaVvJ0 UncQ== X-Gm-Message-State: AOAM533XIoRcoteqDRJkhtK3Fw+a3RYCfi2MTXLB3ZjSIS//bAVli+fY peHqUAOpomBT5+aX9tOg9vDepJO3RjkP0g== X-Google-Smtp-Source: ABdhPJwsb1DVKyLTys8e89WIMy/nNHVS7on4oscgv2M5KIwqk6hLh8DT+fuKiDh9+azujvBDPBlctg== X-Received: by 2002:a05:6000:1acb:: with SMTP id i11mr785726wry.68.1616550558360; Tue, 23 Mar 2021 18:49:18 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id y205sm598177wmc.18.2021.03.23.18.49.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 18:49:17 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v4 05/10] userdiff: add and use for_each_userdiff_driver() Date: Wed, 24 Mar 2021 02:48:47 +0100 Message-Id: X-Mailer: git-send-email 2.31.0.366.ga80606b22c1 In-Reply-To: References: <20210224195129.4004-1-avarab@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Refactor the userdiff_find_by_namelen() function so that a new for_each_userdiff_driver() API function does most of the work. This will be useful for the same reason we've got other for_each_*() API functions as part of various APIs, and will be used in a follow-up commit. Signed-off-by: Ævar Arnfjörð Bjarmason --- userdiff.c | 61 +++++++++++++++++++++++++++++++++++++++++++----------- userdiff.h | 15 ++++++++++++++ 2 files changed, 64 insertions(+), 12 deletions(-) diff --git a/userdiff.c b/userdiff.c index 10a02d36209..55f4f769bd3 100644 --- a/userdiff.c +++ b/userdiff.c @@ -259,20 +259,32 @@ static struct userdiff_driver driver_false = { { NULL, 0 } }; -static struct userdiff_driver *userdiff_find_by_namelen(const char *k, size_t len) +struct for_each_userdiff_driver_cb { + const char *k; + size_t len; + struct userdiff_driver *driver; +}; + +static int userdiff_find_by_namelen_cb(struct userdiff_driver *driver, + enum userdiff_driver_type type, void *priv) { - int i; - for (i = 0; i < ndrivers; i++) { - struct userdiff_driver *drv = drivers + i; - if (!strncmp(drv->name, k, len) && !drv->name[len]) - return drv; - } - for (i = 0; i < ARRAY_SIZE(builtin_drivers); i++) { - struct userdiff_driver *drv = builtin_drivers + i; - if (!strncmp(drv->name, k, len) && !drv->name[len]) - return drv; + struct for_each_userdiff_driver_cb *cb_data = priv; + + if (!strncmp(driver->name, cb_data->k, cb_data->len) && + !driver->name[cb_data->len]) { + cb_data->driver = driver; + return -1; /* found it! */ } - return NULL; + return 0; +} + +static struct userdiff_driver *userdiff_find_by_namelen(const char *k, size_t len) +{ + struct for_each_userdiff_driver_cb udcbdata = { .k = k, .len = len, .driver = NULL }; + + for_each_userdiff_driver(userdiff_find_by_namelen_cb, + USERDIFF_DRIVER_TYPE_UNSPECIFIED, &udcbdata); + return udcbdata.driver; } static int parse_funcname(struct userdiff_funcname *f, const char *k, @@ -373,3 +385,28 @@ struct userdiff_driver *userdiff_get_textconv(struct repository *r, return driver; } + +int for_each_userdiff_driver(each_userdiff_driver_fn fn, + enum userdiff_driver_type type, void *cb_data) +{ + int i, ret; + if (type & (USERDIFF_DRIVER_TYPE_UNSPECIFIED | USERDIFF_DRIVER_TYPE_CUSTOM)) { + + for (i = 0; i < ndrivers; i++) { + struct userdiff_driver *drv = drivers + i; + ret = fn(drv, USERDIFF_DRIVER_TYPE_CUSTOM, cb_data); + if (ret) + return ret; + } + } + if (type & (USERDIFF_DRIVER_TYPE_UNSPECIFIED | USERDIFF_DRIVER_TYPE_BUILTIN)) { + + for (i = 0; i < ARRAY_SIZE(builtin_drivers); i++) { + struct userdiff_driver *drv = builtin_drivers + i; + ret = fn(drv, USERDIFF_DRIVER_TYPE_BUILTIN, cb_data); + if (ret) + return ret; + } + } + return 0; +} diff --git a/userdiff.h b/userdiff.h index 203057e13e5..fe14014a775 100644 --- a/userdiff.h +++ b/userdiff.h @@ -21,6 +21,13 @@ struct userdiff_driver { struct notes_cache *textconv_cache; int textconv_want_cache; }; +enum userdiff_driver_type { + USERDIFF_DRIVER_TYPE_UNSPECIFIED = 1<<0, + USERDIFF_DRIVER_TYPE_BUILTIN = 1<<1, + USERDIFF_DRIVER_TYPE_CUSTOM = 1<<2, +}; +typedef int (*each_userdiff_driver_fn)(struct userdiff_driver *, + enum userdiff_driver_type, void *); int userdiff_config(const char *k, const char *v); struct userdiff_driver *userdiff_find_by_name(const char *name); @@ -34,4 +41,12 @@ struct userdiff_driver *userdiff_find_by_path(struct index_state *istate, struct userdiff_driver *userdiff_get_textconv(struct repository *r, struct userdiff_driver *driver); +/* + * Iterate over each driver of type userdiff_driver_type, or + * USERDIFF_DRIVER_TYPE_UNSPECIFIED for all of them. Return non-zero + * to exit from the loop. + */ +int for_each_userdiff_driver(each_userdiff_driver_fn, + enum userdiff_driver_type, void *); + #endif /* USERDIFF */ From patchwork Wed Mar 24 01:48:48 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12160019 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E0B5DC433E8 for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 96EBF61A02 for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234693AbhCXBti (ORCPT ); Tue, 23 Mar 2021 21:49:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54846 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234548AbhCXBtV (ORCPT ); Tue, 23 Mar 2021 21:49:21 -0400 Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com [IPv6:2a00:1450:4864:20::42d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A613AC061763 for ; Tue, 23 Mar 2021 18:49:20 -0700 (PDT) Received: by mail-wr1-x42d.google.com with SMTP id b9so22795108wrt.8 for ; Tue, 23 Mar 2021 18:49:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=x0onei1C+5pd5GD0STBmR0XOYKoIFSx8IBOIdC+S31Q=; b=CbyrLc4KH0L/jDCM6ZoZqthsQxJcDH23gq4p0vd7Q9M5C/YfRcKHWHaQIMMF5f5mg+ 2bbY+JMYRo9ZP5vCNxWT4O3H7lENbOMaN/S87UUUTqYnrYsPCsXPYN/1/cNTLP8ffphs BEgloKt403aE7BudFvpW2bN17p4Llze/VIBSm+CGJnPZ2+mC/nWxUcYwjS7ThBxCHrMM msR6pjFJzMkeXqgWLUnMNbNaeHkUrhSxmyhUOPN09sDxsPAbaP/iRHAHvtlKJyWGEysW NAZyfngvYhtTc/biURFZagdadKuglJdDA5hT+LqtAeU2qCSYmWwWE88jjYT8hr1bxamL /VQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=x0onei1C+5pd5GD0STBmR0XOYKoIFSx8IBOIdC+S31Q=; b=sMIA6q2MIEBzAIaWRYd42e/9qmpkkUyDZeWjBMweZDgGocQHnN3TDH+URC7QTgvfE8 8CsmB5tge6X4lt+t0e75CARF4fd9Ky7Atfg2/doZ3nGtliVVl095hPhxZtrjm/RHQH5v GVrqjQLmjxquK3fKp2wjNU6IHw9PSn9tMzS5eeeqKMVovB1QojIkYDA6OAO2c1EXguHd 2Nn6al6s/krxKY0qycLyH4jSvBZDUb2RkNXP3oj0t+PMbaEkCz+3FnRB1yEpizD+mlrx x3WaksFxpeZGiA8NmT87xiysP7Zlj/knkqOdBCa/QI1X5ahvhseg/q+Ud4SaGoPzrllc 9WgA== X-Gm-Message-State: AOAM53025VvhSJU66OelxrCFACkSUlJncgFSvfiZ1B3LR/dZlZry/AEC nV1I2SuI5kWTATPo9JwLev0kBqbET35OIg== X-Google-Smtp-Source: ABdhPJwwyS9z4Yw70BUIvw703823ctNVFvVEVyrI3vB2hRHVmJkINH2DBiGBeOAPHM0yYpjDVv3ucw== X-Received: by 2002:adf:9d48:: with SMTP id o8mr738950wre.183.1616550559147; Tue, 23 Mar 2021 18:49:19 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id y205sm598177wmc.18.2021.03.23.18.49.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 18:49:18 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v4 06/10] userdiff tests: explicitly test "default" pattern Date: Wed, 24 Mar 2021 02:48:48 +0100 Message-Id: X-Mailer: git-send-email 2.31.0.366.ga80606b22c1 In-Reply-To: References: <20210224195129.4004-1-avarab@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Since 122aa6f9c0 (diff: introduce diff..binary, 2008-10-05) the internals of the userdiff.c code have understood a "default" name, which is invoked as userdiff_find_by_name("default") and present in the "builtin_drivers" struct. Let's test for this special case. Signed-off-by: Ævar Arnfjörð Bjarmason --- t/t4018-diff-funcname.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/t/t4018-diff-funcname.sh b/t/t4018-diff-funcname.sh index 9675bc17db2..cefe329aea7 100755 --- a/t/t4018-diff-funcname.sh +++ b/t/t4018-diff-funcname.sh @@ -49,6 +49,7 @@ diffpatterns=" ruby rust tex + default custom1 custom2 custom3 From patchwork Wed Mar 24 01:48:49 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12160029 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 03CC1C433EC for ; Wed, 24 Mar 2021 01:50:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id C250A61A08 for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234697AbhCXBtj (ORCPT ); Tue, 23 Mar 2021 21:49:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54854 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234558AbhCXBtW (ORCPT ); Tue, 23 Mar 2021 21:49:22 -0400 Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com [IPv6:2a00:1450:4864:20::431]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 813F9C061763 for ; Tue, 23 Mar 2021 18:49:21 -0700 (PDT) Received: by mail-wr1-x431.google.com with SMTP id 61so22753002wrm.12 for ; Tue, 23 Mar 2021 18:49:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=gWtikGjuuVQovMXEyb53c5CWTA76npJiin+jNTR9+m4=; b=jJiGUmPalEqD1XgcE0ruJcixuScTdaZW8Vu/BHs1N+ZeVVALbYjAikOVVH4Jgva5Dp 2TSHGPgqDiLh8adp2RAsryWMWV1fEq8t/3WXfjiZmSc8t7pj41uFsd7cmw0qOoPyFuQG TZqMAakWj6GxyotW98vZOQy8EYssrZrVVgMvZiu73vhpgVc5AmrJGtXz18Bozx5pILWV 8OhShVu9z4/dpNwzJrCQzV4ip4nclfXPoEkBGBP0+YU7y4z6R383Bd7pDq2VVjCRN+sr M8uRTGQVLfCZstUHM8T+XRycX3sPeq/taHo6p7wzwoU+XAMCa+WJnJ+Fn6Cs+1O7zW+T l+ww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=gWtikGjuuVQovMXEyb53c5CWTA76npJiin+jNTR9+m4=; b=A20MSEA7kg/h4Wlae0BAXj+36oKNOQ3ehWLqax4R2DKoU+u5Ib444H76F1ttkTIpnw d/am/z34Wbnf1EoGrEmOIwhuaDFbltX642wDrYyFDROhaPVYq6YAOb781732hOHpo3Vy 1rWzgCuL+GryBibAzussoKixgrmPiL0HPPAN0yLxmFGGXCGl1uiVyDRjJu0Qv159/axo e34I87giWOFELwiaO0D6nXV4+j5OemankyFGk7NleXpNNgUlQMyS6tlVuO4D3xyF5heO XHpMW2PHaWrzkFYLCojuYD6v5yD+u3d8u7dc9Z1gUUH+yMuXBi2or6aB6fLeVrBhA8Ma sRQw== X-Gm-Message-State: AOAM531GssVsUmfTXcXUGnX+2X4tdCBTAhTgum4LJveMpmmstsxhG1SN kTnmkY/0DkeBaHRvk40STBuLUXZp8p+83g== X-Google-Smtp-Source: ABdhPJxxj7rF00B0JAWlJdgiTSN0eW2zydp9b+gkDafOuEY33VOpqGutD8lVmIRAetYPFaKbaP6x5Q== X-Received: by 2002:adf:a59a:: with SMTP id g26mr721252wrc.271.1616550559973; Tue, 23 Mar 2021 18:49:19 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id y205sm598177wmc.18.2021.03.23.18.49.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 18:49:19 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v4 07/10] userdiff tests: list builtin drivers via test-tool Date: Wed, 24 Mar 2021 02:48:49 +0100 Message-Id: X-Mailer: git-send-email 2.31.0.366.ga80606b22c1 In-Reply-To: References: <20210224195129.4004-1-avarab@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Change the userdiff test to list the builtin drivers via the test-tool, using the new for_each_userdiff_driver() API function. This gets rid of the need to modify this part of the test every time a new pattern is added, see 2ff6c34612 (userdiff: support Bash, 2020-10-22) and 09dad9256a (userdiff: support Markdown, 2020-05-02) for two recent examples. I only need the "list-builtin-drivers "argument here, but let's add "list-custom-drivers" and "list-drivers" too, just because it's easy. Signed-off-by: Ævar Arnfjörð Bjarmason --- Makefile | 1 + t/helper/test-tool.c | 1 + t/helper/test-tool.h | 1 + t/helper/test-userdiff.c | 31 +++++++++++++++++++++++++++++++ t/t4018-diff-funcname.sh | 32 ++++++++------------------------ 5 files changed, 42 insertions(+), 24 deletions(-) create mode 100644 t/helper/test-userdiff.c diff --git a/Makefile b/Makefile index f3dc2178324..3e2568d68da 100644 --- a/Makefile +++ b/Makefile @@ -744,6 +744,7 @@ TEST_BUILTINS_OBJS += test-submodule-nested-repo-config.o TEST_BUILTINS_OBJS += test-subprocess.o TEST_BUILTINS_OBJS += test-trace2.o TEST_BUILTINS_OBJS += test-urlmatch-normalization.o +TEST_BUILTINS_OBJS += test-userdiff.o TEST_BUILTINS_OBJS += test-wildmatch.o TEST_BUILTINS_OBJS += test-windows-named-pipe.o TEST_BUILTINS_OBJS += test-write-cache.o diff --git a/t/helper/test-tool.c b/t/helper/test-tool.c index f97cd9f48a6..dcb05ca6e5e 100644 --- a/t/helper/test-tool.c +++ b/t/helper/test-tool.c @@ -71,6 +71,7 @@ static struct test_cmd cmds[] = { { "submodule-nested-repo-config", cmd__submodule_nested_repo_config }, { "subprocess", cmd__subprocess }, { "trace2", cmd__trace2 }, + { "userdiff", cmd__userdiff }, { "urlmatch-normalization", cmd__urlmatch_normalization }, { "xml-encode", cmd__xml_encode }, { "wildmatch", cmd__wildmatch }, diff --git a/t/helper/test-tool.h b/t/helper/test-tool.h index 28072c0ad5a..589f2e8ac67 100644 --- a/t/helper/test-tool.h +++ b/t/helper/test-tool.h @@ -61,6 +61,7 @@ int cmd__submodule_config(int argc, const char **argv); int cmd__submodule_nested_repo_config(int argc, const char **argv); int cmd__subprocess(int argc, const char **argv); int cmd__trace2(int argc, const char **argv); +int cmd__userdiff(int argc, const char **argv); int cmd__urlmatch_normalization(int argc, const char **argv); int cmd__xml_encode(int argc, const char **argv); int cmd__wildmatch(int argc, const char **argv); diff --git a/t/helper/test-userdiff.c b/t/helper/test-userdiff.c new file mode 100644 index 00000000000..f173a4f18af --- /dev/null +++ b/t/helper/test-userdiff.c @@ -0,0 +1,31 @@ +#include "test-tool.h" +#include "cache.h" +#include "userdiff.h" + +static int driver_cb(struct userdiff_driver *driver, + enum userdiff_driver_type type, void *priv) +{ + if (driver->funcname.pattern) + puts(driver->name); + return 0; +} + +static int list_what(enum userdiff_driver_type type) +{ + return for_each_userdiff_driver(driver_cb, type, NULL); +} + +int cmd__userdiff(int argc, const char **argv) +{ + if (argc != 2) + return 1; + + if (!strcmp(argv[1], "list-drivers")) + return list_what(USERDIFF_DRIVER_TYPE_UNSPECIFIED); + else if (!strcmp(argv[1], "list-builtin-drivers")) + return list_what(USERDIFF_DRIVER_TYPE_BUILTIN); + else if (!strcmp(argv[1], "list-custom-drivers")) + return list_what(USERDIFF_DRIVER_TYPE_CUSTOM); + else + return error("unknown argument %s", argv[1]); +} diff --git a/t/t4018-diff-funcname.sh b/t/t4018-diff-funcname.sh index cefe329aea7..5bd82e09ab3 100755 --- a/t/t4018-diff-funcname.sh +++ b/t/t4018-diff-funcname.sh @@ -8,6 +8,13 @@ test_description='Test custom diff function name patterns' . ./test-lib.sh test_expect_success 'setup' ' + # Make sure additions to builtin_drivers are sorted + test_when_finished "rm builtin-drivers.sorted" && + test-tool userdiff list-builtin-drivers >builtin-drivers && + test_file_not_empty builtin-drivers && + sort builtin-drivers.sorted && + test_cmp builtin-drivers.sorted builtin-drivers && + # a non-trivial custom pattern git config diff.custom1.funcname "!static !String @@ -26,30 +33,7 @@ test_expect_success 'setup' ' ' diffpatterns=" - ada - bash - bibtex - cpp - csharp - css - dts - elixir - fortran - fountain - golang - html - java - markdown - matlab - objc - pascal - perl - php - python - ruby - rust - tex - default + $(cat builtin-drivers) custom1 custom2 custom3 From patchwork Wed Mar 24 01:48:50 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12160023 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F128FC433E9 for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id D450A61A0B for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234695AbhCXBti (ORCPT ); Tue, 23 Mar 2021 21:49:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54856 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234566AbhCXBtW (ORCPT ); Tue, 23 Mar 2021 21:49:22 -0400 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [IPv6:2a00:1450:4864:20::330]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2F85DC061763 for ; Tue, 23 Mar 2021 18:49:22 -0700 (PDT) Received: by mail-wm1-x330.google.com with SMTP id d191so12037077wmd.2 for ; Tue, 23 Mar 2021 18:49:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=4JJI6mrgDrZjzjDOJ5Xy9QAPcmKnnJhej81kxHwvsTs=; b=N2ib4Ak4zr+nxirBkvD5IDm45wEeujusVj+T99mAnWyOYqaiB6OBALDfwbvWII+0JK h0sudE/9VM8CiEzFNWgJgMYN9N6HWloGYCgo7/Yb16QLc4uCvDAutt/33HgO+KUsq6S4 fGAbGhnmHLDbK273a80JSmwl9K2sOAhdLSd3/FviUkXv+yeqYtaMQWbc8cBGbad7PRtc ZKCU16h0U08HBypD9ybLTBxHmZhHTIui0VThQrMdOxBxQ1tDUNhWY87CBs07XFJl5ZUB 95WjwvBugnC4K58w0yhtr+8qYOTIoMouBqZW7d1bZP0fS10fvNllNs4/bagbs+fFJSON yF9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=4JJI6mrgDrZjzjDOJ5Xy9QAPcmKnnJhej81kxHwvsTs=; b=BBwimyvvvPqPoNICpXEm0PKWJCcQZ9uOXuKlSUiwQNTnA+txCaJVwYcuG4TcsoJzbt Z6vHA6MCfqCk5Td5WXgmQyxmEnl93od+O77QBWckkvA98sYhRYhf9LXbkt7QtNt2NKD5 XGn+L+cFVLYSVRKRhMU2seDTcb//wSx2UDJWjIieispFrbTgtqljnzOp8bEN0JmBfXlr m88NIbRSY8fTPtB0eD/VpKw9BFxvxFsKfPn59pIIbzh6GAnvilQaDKm18QVR3ZHGaTvp CLCGxAfMGoICMjGwsQysJlHNtz7bSkoF6c16muLk7d6mV094UfO+vcr1372tkecd2Cqd y4qw== X-Gm-Message-State: AOAM531aqhJXX6vLQWHiNZuwVUgiGXptufFts/VAqjztrIW6q3TtaS7y ibY19ODFMfxBMUCUcTYUKTO3n78PnzLB/w== X-Google-Smtp-Source: ABdhPJzXRJ6La0AYSgMhT8gqZ48I8CK+DX0BZpPSBNuDzjoRMQtstNobMrNI/XRHA0x0x4OR0uXR9A== X-Received: by 2002:a05:600c:2f08:: with SMTP id r8mr571204wmn.95.1616550560700; Tue, 23 Mar 2021 18:49:20 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id y205sm598177wmc.18.2021.03.23.18.49.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 18:49:20 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v4 08/10] userdiff: remove support for "broken" tests Date: Wed, 24 Mar 2021 02:48:50 +0100 Message-Id: X-Mailer: git-send-email 2.31.0.366.ga80606b22c1 In-Reply-To: References: <20210224195129.4004-1-avarab@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org There have been no "broken" tests since 75c3b6b2e8 (userdiff: improve Fortran xfuncname regex, 2020-08-12). Let's remove the test support for them. Signed-off-by: Ævar Arnfjörð Bjarmason --- t/t4018-diff-funcname.sh | 8 +------- t/t4018/README | 3 --- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/t/t4018-diff-funcname.sh b/t/t4018-diff-funcname.sh index 5bd82e09ab3..9aec9f8e6de 100755 --- a/t/t4018-diff-funcname.sh +++ b/t/t4018-diff-funcname.sh @@ -86,13 +86,7 @@ test_expect_success 'setup hunk header tests' ' # check each individual file for i in $(git ls-files) do - if grep broken "$i" >/dev/null 2>&1 - then - result=failure - else - result=success - fi - test_expect_$result "hunk header: $i" " + test_expect_success "hunk header: $i" " git diff -U1 $i >actual && grep '@@ .* @@.*RIGHT' actual " diff --git a/t/t4018/README b/t/t4018/README index 283e01cca1a..2d25b2b4fc9 100644 --- a/t/t4018/README +++ b/t/t4018/README @@ -7,9 +7,6 @@ at least two lines from the line that must appear in the hunk header. The text that must appear in the hunk header must contain the word "right", but in all upper-case, like in the title above. -To mark a test case that highlights a malfunction, insert the word -BROKEN in all lower-case somewhere in the file. - This text is a bit twisted and out of order, but it is itself a test case for the default hunk header pattern. Know what you are doing if you change it. From patchwork Wed Mar 24 01:48:51 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12160027 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 145CBC433F1 for ; Wed, 24 Mar 2021 01:50:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 02F16619EF for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234700AbhCXBtj (ORCPT ); Tue, 23 Mar 2021 21:49:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54866 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234567AbhCXBtY (ORCPT ); Tue, 23 Mar 2021 21:49:24 -0400 Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com [IPv6:2a00:1450:4864:20::42b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2328AC061763 for ; Tue, 23 Mar 2021 18:49:23 -0700 (PDT) Received: by mail-wr1-x42b.google.com with SMTP id v11so22762270wro.7 for ; Tue, 23 Mar 2021 18:49:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=IeoTU1z3TEscNieD+fk+/DwGf3HbZFWWr0X0bDcHU5M=; b=Blt0PgLb6z/j5vWghQtgEzYAboUBgfBuZtQARcSbwweyai/UAi1cFH6+3WJUhofjz+ dfYijWqR0sWu4iZSRQHoiU1gSdnJoiC2CKUr/+QBqbQ+rtZFfypus5Ch4t5nTo/H++Wx Lq5DUsM1QtEi8cGImZltpqZ1za2zP70V0IqX6rdiGQPyQhQWRbp0kBbQWH+qOAvfLBq8 2vkUjhqoo0pJq46tEX4o51d7ff0zWuAiGbfdKUXUwz7rk69CQVdlUuVEpALy3HgZL9yI BCsSxBtY11WWh80SovQ5naB5xmMrzZWHtAQsrb49H/vUDI0QAoAjye4jFxay9a2+MUL8 AaLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=IeoTU1z3TEscNieD+fk+/DwGf3HbZFWWr0X0bDcHU5M=; b=QLcyku/3ZGLGYGVH9VYy6Uws/JM4WK1f4oGWu1f/Tyf+vzyLyxPtJX6Gy3DZZG9hFC QqIAyiR+rheJWJVmapzVK0ZVOlT0tkAqES0FqLj/p2Hxdq+YFplCBeav0CDMruvTu/r7 qgt+HYwMQ4ooagMcO1D2IwUPK/fvjiHJ+pAZiMfcVw0XJEYZ2GnO96ee1BXHrRGf+L3E Iofa6I9Y2uP9zBsPJ6davwn+SkabdsS+6XiLHNteftNX3XvyDK+GhHgYbswz6EGLvlWi ZMnVgibOsvThVG19reCIG5c53c4Zd7c15BfyAVmHZ8DGx3oouKTN4xBZhm6T2P+qKK0Q s0oA== X-Gm-Message-State: AOAM532Lp4zm3Y7RtzvRtG0r/l2lPjguIc5m3u+WrvXnr81A94F5QGig piA8EUSdjpP43ohiLDUwSONgo7hvvxtmYQ== X-Google-Smtp-Source: ABdhPJz9w2PyIZLS6qdKH61a5vRRMoEeXyRDnFJnxfYiPkm8hrStMtXxk5a8FhhK5IaWIM3pG8BD+w== X-Received: by 2002:adf:a3d3:: with SMTP id m19mr781410wrb.24.1616550561576; Tue, 23 Mar 2021 18:49:21 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id y205sm598177wmc.18.2021.03.23.18.49.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 18:49:21 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v4 09/10] blame tests: don't rely on t/t4018/ directory Date: Wed, 24 Mar 2021 02:48:51 +0100 Message-Id: X-Mailer: git-send-email 2.31.0.366.ga80606b22c1 In-Reply-To: References: <20210224195129.4004-1-avarab@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Refactor a test added in 9466e3809d (blame: enable funcname blaming with userdiff driver, 2020-11-01) so that the blame tests don't rely on stealing the contents of "t/t4018/fortran-external-function". I have another patch series that'll possibly (or not) refactor that file, but having this test inter-dependency makes things simple in any case by making this test more readable. Signed-off-by: Ævar Arnfjörð Bjarmason --- t/annotate-tests.sh | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/t/annotate-tests.sh b/t/annotate-tests.sh index 29ce89090d8..04a2c58594c 100644 --- a/t/annotate-tests.sh +++ b/t/annotate-tests.sh @@ -482,12 +482,22 @@ test_expect_success 'blame -L ^:RE (absolute: end-of-file)' ' test_expect_success 'setup -L :funcname with userdiff driver' ' echo "fortran-* diff=fortran" >.gitattributes && fortran_file=fortran-external-function && - orig_file="$TEST_DIRECTORY/t4018/$fortran_file" && - cp "$orig_file" . && + cat >$fortran_file <<-\EOF && + function RIGHT(a, b) result(c) + + integer, intent(in) :: ChangeMe + integer, intent(in) :: b + integer, intent(out) :: c + + c = a+b + + end function RIGHT + EOF git add "$fortran_file" && GIT_AUTHOR_NAME="A" GIT_AUTHOR_EMAIL="A@test.git" \ git commit -m "add fortran file" && - sed -e "s/ChangeMe/IWasChanged/" <"$orig_file" >"$fortran_file" && + sed -e "s/ChangeMe/IWasChanged/" <"$fortran_file" >"$fortran_file".tmp && + mv "$fortran_file".tmp "$fortran_file" && git add "$fortran_file" && GIT_AUTHOR_NAME="B" GIT_AUTHOR_EMAIL="B@test.git" \ git commit -m "change fortran file" From patchwork Wed Mar 24 01:48:52 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= X-Patchwork-Id: 12160031 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0F6D0C433EB for ; Wed, 24 Mar 2021 01:50:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E6E75619EE for ; Wed, 24 Mar 2021 01:50:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234713AbhCXBtk (ORCPT ); Tue, 23 Mar 2021 21:49:40 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54874 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234572AbhCXBtZ (ORCPT ); Tue, 23 Mar 2021 21:49:25 -0400 Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [IPv6:2a00:1450:4864:20::432]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 57E2EC061765 for ; Tue, 23 Mar 2021 18:49:25 -0700 (PDT) Received: by mail-wr1-x432.google.com with SMTP id j18so22779148wra.2 for ; Tue, 23 Mar 2021 18:49:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=kwY7Ff1LK+qRoAEygm3Q7zxo1H3BriXLKXHAtD8oaIc=; b=rF4jFsyMfIgse0KiXFhGvakVcKxhHWVgn2koIQdf48tcWstvQhJ2sA3+/zEnxbLNsk k5B8HIoSj6slA3j4tQXaG0glWe3itQiV0ShorLv3iMhpUaqUUuWfBN6CWquZNJsrDchQ QXWGqyfQ6wjLl4/PyC+880uSgJjS63b2ykpA3s7smYsGbMCzhYILfCb0TimVZ1w1FOeO 0BsGctg9ZmAQ0Z8NWvcD5eruni11PVlJIGUN4vkf3N5LPtVb07ZInefmNT7FMZbu82Oe ThI4RVAzjvf6JsFJQAX0gm1qnceQz9yIqRd0VqQNCHe/79bp0EiWf3+owyrhWq1LMZYC +kng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=kwY7Ff1LK+qRoAEygm3Q7zxo1H3BriXLKXHAtD8oaIc=; b=g83sjyPij0hQevw4OD055Ld5l502NO3tcSCzxfBz/ddY+4AlBI3cUfCl1tgb4hFjqL z/R07MTMiuDWsWAszDIXAoWKFNmXluuoksRwSF1lJlPmQctx8nvtrve6LT4lE1EwnRrt JsnTTSnrfK7Gt8x9KvKMgb31ndQ8m4tvQHQzpRHB46DhS5XK7w+L6g5Dza/2nCVTaXWA ya+PhVEO2aw4uATTl+j4DxHNSNtNIzbmebUeo4Ih7N2PFcrixTxkJykSGPdTGKcdG+/A E7WheDXeadx0UlHpX96UugOjgUnS9c8bdIe3bOirjinQXU/goz8qTsmPv8rtPZqLHUYt siUw== X-Gm-Message-State: AOAM531tYIgxSdfvWQdbZ7nBnd2o0sFhvc9EMgVizmaMH1nV3qBHTb1q ISjDpn7kCzFr3CAX5m2n9i6KqWPt1vQqQA== X-Google-Smtp-Source: ABdhPJwLybF1Pm7+qJqLEM1nf34ICOwSt4VAhv6g23VOCol4ZBr8f/9G4gndwiJ9N0gGY8rwZAcdfg== X-Received: by 2002:adf:f0cb:: with SMTP id x11mr735081wro.206.1616550562446; Tue, 23 Mar 2021 18:49:22 -0700 (PDT) Received: from vm.nix.is (vm.nix.is. [2a01:4f8:120:2468::2]) by smtp.gmail.com with ESMTPSA id y205sm598177wmc.18.2021.03.23.18.49.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 18:49:22 -0700 (PDT) From: =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFybWFzb24=?= To: git@vger.kernel.org Cc: Junio C Hamano , Johannes Sixt , Jeff King , Jonathan Nieder , Philippe Blain , Adam Spiers , Eric Sunshine , Chris Torek , =?utf-8?b?w4Z2YXIgQXJuZmrDtnLDsCBCamFy?= =?utf-8?b?bWFzb24=?= Subject: [PATCH v4 10/10] blame tests: simplify userdiff driver test Date: Wed, 24 Mar 2021 02:48:52 +0100 Message-Id: X-Mailer: git-send-email 2.31.0.366.ga80606b22c1 In-Reply-To: References: <20210224195129.4004-1-avarab@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Simplify the test added in 9466e3809d (blame: enable funcname blaming with userdiff driver, 2020-11-01) to use the --author support recently added in 999cfc4f45 (test-lib functions: add --author support to test_commit, 2021-01-12). We also did not need the full fortran-external-function content. Let's cut it down to just the important parts. I'm modifying it to demonstrate that the fortran-specific userdiff function is in effect by adding "DO NOT MATCH ..." and "AS THE ..." lines surrounding the "RIGHT" one. This is to check that we're using the userdiff "fortran" driver, as opposed to the default driver which would match on those lines as part of the general heuristic of matching a line that doesn't begin with whitespace. The test had also been leaving behind a .gitattributes file for later tests to possibly trip over, let's clean it up with "test_when_finished". Signed-off-by: Ævar Arnfjörð Bjarmason --- t/annotate-tests.sh | 36 +++++++++++++++--------------------- 1 file changed, 15 insertions(+), 21 deletions(-) diff --git a/t/annotate-tests.sh b/t/annotate-tests.sh index 04a2c58594c..d3b299e75cb 100644 --- a/t/annotate-tests.sh +++ b/t/annotate-tests.sh @@ -479,32 +479,26 @@ test_expect_success 'blame -L ^:RE (absolute: end-of-file)' ' check_count -f hello.c -L$n -L^:ma.. F 4 G 1 H 1 ' -test_expect_success 'setup -L :funcname with userdiff driver' ' - echo "fortran-* diff=fortran" >.gitattributes && - fortran_file=fortran-external-function && - cat >$fortran_file <<-\EOF && +test_expect_success 'blame -L :funcname with userdiff driver' ' + cat >file.template <<-\EOF && + DO NOT MATCH THIS LINE function RIGHT(a, b) result(c) + AS THE DEFAULT DRIVER WOULD integer, intent(in) :: ChangeMe - integer, intent(in) :: b - integer, intent(out) :: c - - c = a+b - - end function RIGHT EOF - git add "$fortran_file" && - GIT_AUTHOR_NAME="A" GIT_AUTHOR_EMAIL="A@test.git" \ - git commit -m "add fortran file" && - sed -e "s/ChangeMe/IWasChanged/" <"$fortran_file" >"$fortran_file".tmp && - mv "$fortran_file".tmp "$fortran_file" && - git add "$fortran_file" && - GIT_AUTHOR_NAME="B" GIT_AUTHOR_EMAIL="B@test.git" \ - git commit -m "change fortran file" -' -test_expect_success 'blame -L :funcname with userdiff driver' ' - check_count -f fortran-external-function -L:RIGHT A 7 B 1 + fortran_file=file.f03 && + test_when_finished "rm .gitattributes" && + echo "$fortran_file diff=fortran" >.gitattributes && + + test_commit --author "A " \ + "add" "$fortran_file" \ + "$(cat file.template)" && + test_commit --author "B " \ + "change" "$fortran_file" \ + "$(cat file.template | sed -e s/ChangeMe/IWasChanged/)" && + check_count -f "$fortran_file" -L:RIGHT A 3 B 1 ' test_expect_success 'setup incremental' '