From mboxrd@z Thu Jan 1 00:00:00 1970 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=-4.1 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no 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 5426FC433E5 for ; Wed, 15 Jul 2020 14:56:01 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 072A3206D5 for ; Wed, 15 Jul 2020 14:56:01 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=pobox.com header.i=@pobox.com header.b="Pb8iFMAp" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727078AbgGOOz6 (ORCPT ); Wed, 15 Jul 2020 10:55:58 -0400 Received: from pb-smtp21.pobox.com ([173.228.157.53]:62397 "EHLO pb-smtp21.pobox.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725798AbgGOOzz (ORCPT ); Wed, 15 Jul 2020 10:55:55 -0400 Received: from pb-smtp21.pobox.com (unknown [127.0.0.1]) by pb-smtp21.pobox.com (Postfix) with ESMTP id 9FE56DE2ED; Wed, 15 Jul 2020 10:55:53 -0400 (EDT) (envelope-from junio@pobox.com) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=sasl; bh=xJwdWhK8jrxBCgtudaQKp/CuOIs=; b=Pb8iFM Apz40ZMNeHIXqOSdYhmSbqzy+zDz8sIRoR0r31zChfMrC+0SdXEy8rqlGp11qU/P sPFAAVSQaUWz7H6AcP8NZl88gctfQpwQkEs+1u9pJrKqUi/hgKk5C0I80B8Ci5A9 7IBopouhQR9AG2e/wcbwTg7r6EbWygfWzGXmI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; q=dns; s=sasl; b=ReFbq7L9+wSE5FCDsgpzWVcjbXEv+xah Y0IsDnB1wRr5rIMv/m7ylntbpgkGPH1CWh6smVm49j6EXfhP/RArC2RQ2RoyvHkW XwoeQViNY9M7a0OCJo3CdqtIgTXycqcgQ55OGylSxG7iYv7E3ml1vD/rmePgndam pjDjv8S1OHg= Received: from pb-smtp21.sea.icgroup.com (unknown [127.0.0.1]) by pb-smtp21.pobox.com (Postfix) with ESMTP id 98F8DDE2EC; Wed, 15 Jul 2020 10:55:53 -0400 (EDT) (envelope-from junio@pobox.com) Received: from pobox.com (unknown [35.196.173.25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pb-smtp21.pobox.com (Postfix) with ESMTPSA id D2EC2DE2E8; Wed, 15 Jul 2020 10:55:50 -0400 (EDT) (envelope-from junio@pobox.com) From: Junio C Hamano To: Jean Abou Samra Cc: git@vger.kernel.org Subject: Re: Git bisect run should check for the existence of the script References: <9cea8076-be96-19c5-c368-288193daedd8@abou-samra.fr> Date: Wed, 15 Jul 2020 07:55:49 -0700 In-Reply-To: <9cea8076-be96-19c5-c368-288193daedd8@abou-samra.fr> (Jean Abou Samra's message of "Wed, 15 Jul 2020 10:08:28 +0200") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Pobox-Relay-ID: 46440D1E-C6AB-11EA-AEDD-843F439F7C89-77302942!pb-smtp21.pobox.com Sender: git-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Jean Abou Samra writes: > $ git bisect run ./non-existent.sh > running ./non-existent.sh > /usr/lib/git-core/git-bisect: 247: ./non-existent.sh: not found > Bisecting: 2 revisions left to test after this (roughly 1 step) > [6fc732a2116e2c42b0431bb7e2a21719351af755] Fix typo in docs: 'created > by th' -> 'created by the' (GH-21384) > running ./non-existent.sh > /usr/lib/git-core/git-bisect: 247: ./non-existent.sh: not found > Bisecting: 0 revisions left to test after this (roughly 0 steps) Yes, it would be nice if "git bisect run" can reliably tell that it got a "not found" error and not a "test performed by the script did not pass" and stop at the first failure. On the other hand, the "./non-existent.sh" script could be part of the tracked contents (i.e. some revisions have it and the working tree has it when they get checked out, some revisions don't and the working tree does not have it), and the user is trying to find the first revision that stopped having a working script in its tree. In such a case, the script that does not exist and the script that fails need to be treated the same way by "git bisect run" as failures. So... I dunno.