Received: (at 67117) by debbugs.gnu.org; 19 Nov 2023 06:41:21 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Nov 19 01:41:21 2023 Received: from localhost ([127.0.0.1]:49819 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r4bUe-00061S-Sc for submit <at> debbugs.gnu.org; Sun, 19 Nov 2023 01:41:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57974) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1r4bUc-00061B-Og for 67117 <at> debbugs.gnu.org; Sun, 19 Nov 2023 01:41:19 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1r4bUV-00031O-HD; Sun, 19 Nov 2023 01:41:11 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=8HdgjnSxAInC1UmDuvkTMA7BikKKaXpPK2W5E5Z7aes=; b=OT1Z/li6LH6C4B9OWa75 cMaQ6EhrDuKnA+Oc6x42Q9NOWBgknt0xBae/CopKrBCZTG27TjOnWVARITmDgGx9LKelQB1l+Uxsq +eLRznALu8QyVH8h7OhUZQ1eS1lYEEKcwrF+wCBEwnMLtRngJWnpkMzDr48qyHr8KHSQ2oMgUYNux UmdyQxc3y8ITZyTAW21XOjnZ3S8T/nT5D3bXy4WN2oriko5OU9qETpQ3wWvwVqu9Zpv7JrIJVqzOW 9RmMgI6w9VOKqz0wv5sDziPqMdN4v8FUCL8CEQM7jqM+fdTNX96xrBwIaMWYilGCGBZ5+UJjCMLJJ LRJcPvZ441XiKw==; Date: Sun, 19 Nov 2023 08:40:51 +0200 Message-Id: <83jzqekzyk.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Yuan Fu <casouri@HIDDEN> In-Reply-To: <31EB2F37-286D-4910-958B-0152A85E970F@HIDDEN> (message from Yuan Fu on Sat, 18 Nov 2023 22:13:49 -0800) Subject: Re: bug#67117: [PATCH] Tree-sitter: fix an issue when searching subtree backward References: <87h6lruah2.fsf@HIDDEN> <83y1ezqhhk.fsf@HIDDEN> <3B375BD3-CF92-4473-AC46-50D6052B79C2@HIDDEN> <831qcmmh0e.fsf@HIDDEN> <31EB2F37-286D-4910-958B-0152A85E970F@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67117 Cc: 67117 <at> debbugs.gnu.org, dvzubarev@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Yuan Fu <casouri@HIDDEN> > Date: Sat, 18 Nov 2023 22:13:49 -0800 > Cc: dvzubarev@HIDDEN, > 67117 <at> debbugs.gnu.org > > > > > On Nov 18, 2023, at 9:47 PM, Eli Zaretskii <eliz@HIDDEN> wrote: > > > >> From: Yuan Fu <casouri@HIDDEN> > >> Date: Sat, 18 Nov 2023 10:47:47 -0800 > >> Cc: Denis Zubarev <dvzubarev@HIDDEN>, > >> 67117 <at> debbugs.gnu.org > >> > >> > >>>> Steps to reproduce the issue: > >>>> 1. emacs -Q > >>>> 2. M-x find-file /tmp/t.py > >>>> 3. paste to the buffer > >>>> > >>>> Temp(1, 2) > >>>> > >>>> 4. M-x python-ts-mode > >>>> 5. Call search-subtree with backward flag > >>>> M-x eval-expression (treesit-search-subtree > >>>> (treesit--thing-at (point) "call") > >>>> (lambda (n) (equal (treesit-node-type n ) "integer")) > >>>> t) > >>>> It should return the second int node (#<treesit-node integer in 9-10>), but it returns nil. > >>> > >>> Yuan, any comments to the patch and the issue in general? > >> > >> LGTM. Thanks Denis, and Eli :-) > > > > Should we install this on the emacs-29 branch or on master? > > Emacs-29, I’d say, since it’s a bug fix. Why do you ask? Because I want to install it, obviously.
bug-gnu-emacs@HIDDEN
:bug#67117
; Package emacs
.
Full text available.Received: (at 67117) by debbugs.gnu.org; 19 Nov 2023 06:14:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Nov 19 01:14:11 2023 Received: from localhost ([127.0.0.1]:49801 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r4b4N-0002R3-Gv for submit <at> debbugs.gnu.org; Sun, 19 Nov 2023 01:14:11 -0500 Received: from mail-oi1-x236.google.com ([2607:f8b0:4864:20::236]:46342) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <casouri@HIDDEN>) id 1r4b4K-0002Qj-R6 for 67117 <at> debbugs.gnu.org; Sun, 19 Nov 2023 01:14:10 -0500 Received: by mail-oi1-x236.google.com with SMTP id 5614622812f47-3b6ce6fac81so2210822b6e.1 for <67117 <at> debbugs.gnu.org>; Sat, 18 Nov 2023 22:14:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700374442; x=1700979242; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=suGCEoyWkcYjmah6kgM1+fR0q9bAkGqeef4oSblnVhQ=; b=KQdV7+YfiIUhgzM8tDPkff1cXRm+xvwG1yVXB+VVB5I+EXJAriE9YrvstFiDOfNqhf vbZ3KkTLC5Mh3wG+2EJPlV9pC2ppbBMalhQ1YxRpj/qoGjpzuolui55+p6G7HtfyCgKu wfTqmLxUD57Gmvq7YNxDRbEesnbjGn38VhrfhWzNxPvpm7aeEiB5wVpMcT/t/hk3Kjc8 dzCp9dXEr/N0bQrTc/3RrMzTELmhmE52ymuDkQhz7XutJ3ESyciBTY22KpDzjhPvjAPf B1ryXaNlWAiHBqPgiUkccy3uASEvw3sFXDA0Vht1z+ZOHP4Y/SJFtIyVERX1MzmSo0ZF PTrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700374442; x=1700979242; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=suGCEoyWkcYjmah6kgM1+fR0q9bAkGqeef4oSblnVhQ=; b=KbPNqi/AaQ2etBNI1c7vBYdI70m5OVuB+IJNZ8BORLRHeap0bKqNHdck84Q+iNleme M5d88i/pGtSe78W8sZOILhtPTRiSoAtFwht8AhqX4Tvt0/al5hpMT/KQX0tH8VTQ8ci5 a8q7gI2ZZjcxsBabDptQcmVRMkBJgmfewK55zGZ2znBiTWgjl6ZLIPgCK1qvE2AAK5T5 WKx/thMw/ujCk0P7gVNZVHURU5XwnQZ7lcfz2aHSZAHOocFZGQnclMYsyEB2/J7lWshJ Xxt4461es9IWv+Iz3imUNCR5bkom003+RFT0lfKTP04WBLMQQyqQ9YrA1wMp/+ep1Yja Ls5w== X-Gm-Message-State: AOJu0Yx7CL2nfkNmGPlR3/uAs421VxaKsTl3X+dxX8cySToBoXqXf4sW gMNUj63cQGxlM2zxl8dvlH4= X-Google-Smtp-Source: AGHT+IHbEBF87C34u4PJPLrvV0t2Ottd3YJKmgatHwndKhp1OZIoWZsGovZWahk3YQJuryq4IAKS/A== X-Received: by 2002:a05:6808:3026:b0:3b6:cd77:552e with SMTP id ay38-20020a056808302600b003b6cd77552emr5633679oib.10.1700374441911; Sat, 18 Nov 2023 22:14:01 -0800 (PST) Received: from smtpclient.apple (cpe-172-117-161-177.socal.res.rr.com. [172.117.161.177]) by smtp.gmail.com with ESMTPSA id c3-20020aa781c3000000b006cb7b0c2503sm569659pfn.95.2023.11.18.22.14.01 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 18 Nov 2023 22:14:01 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.700.6\)) Subject: Re: bug#67117: [PATCH] Tree-sitter: fix an issue when searching subtree backward From: Yuan Fu <casouri@HIDDEN> In-Reply-To: <831qcmmh0e.fsf@HIDDEN> Date: Sat, 18 Nov 2023 22:13:49 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <31EB2F37-286D-4910-958B-0152A85E970F@HIDDEN> References: <87h6lruah2.fsf@HIDDEN> <83y1ezqhhk.fsf@HIDDEN> <3B375BD3-CF92-4473-AC46-50D6052B79C2@HIDDEN> <831qcmmh0e.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3731.700.6) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67117 Cc: 67117 <at> debbugs.gnu.org, dvzubarev@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Nov 18, 2023, at 9:47 PM, Eli Zaretskii <eliz@HIDDEN> wrote: >=20 >> From: Yuan Fu <casouri@HIDDEN> >> Date: Sat, 18 Nov 2023 10:47:47 -0800 >> Cc: Denis Zubarev <dvzubarev@HIDDEN>, >> 67117 <at> debbugs.gnu.org >>=20 >>=20 >>>> Steps to reproduce the issue: >>>> 1. emacs -Q >>>> 2. M-x find-file /tmp/t.py >>>> 3. paste to the buffer >>>>=20 >>>> Temp(1, 2)=20 >>>>=20 >>>> 4. M-x python-ts-mode >>>> 5. Call search-subtree with backward flag >>>> M-x eval-expression (treesit-search-subtree >>>> (treesit--thing-at (point) "call") >>>> (lambda (n) (equal (treesit-node-type n ) "integer")) >>>> t) >>>> It should return the second int node (#<treesit-node integer in = 9-10>), but it returns nil. >>>=20 >>> Yuan, any comments to the patch and the issue in general? >>=20 >> LGTM. Thanks Denis, and Eli :-) >=20 > Should we install this on the emacs-29 branch or on master? Emacs-29, I=E2=80=99d say, since it=E2=80=99s a bug fix. Why do you ask? Yuan
bug-gnu-emacs@HIDDEN
:bug#67117
; Package emacs
.
Full text available.Received: (at 67117) by debbugs.gnu.org; 19 Nov 2023 05:47:44 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Nov 19 00:47:43 2023 Received: from localhost ([127.0.0.1]:49767 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r4aek-0001R0-V9 for submit <at> debbugs.gnu.org; Sun, 19 Nov 2023 00:47:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39078) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1r4aej-0001QY-2o for 67117 <at> debbugs.gnu.org; Sun, 19 Nov 2023 00:47:41 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1r4aec-0006oh-8z; Sun, 19 Nov 2023 00:47:34 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=v5x5u8l7Q2x0iUMmhL7Ufj1J/4ZRA8OQrqOhAGHCMIc=; b=OjOYe7vbpi0D Y74/N+VtgqMGVCm29SG2XhLokunVgylQ+JGEHUZZnEE6jHPmm2/om582o9thFq3tXnDyhkQPuMQxb WmPx0rHI78IuYN3FVMJRjCxQjblhnDopcQT1KMFswGysbDA0HqzmEUAnfA3mUVs/Rp2Bj6SEfKQRK UMrcwCAhOl06KOeAo8A4lIdOkxyEg63kWRxjQjR8pmFkY+0n3Kv+MNC+faIeeEbyNXA9cckAldhoT UnBl01ej1nqHvdoirgUikaXaZzzK+wl7ug5t/XCbTGsq5JzMHJ7dVZZDwiQ8RMwRzqRu+5o2GhyKV KvALwpfPk5cAwAVok1+QdA==; Date: Sun, 19 Nov 2023 07:47:13 +0200 Message-Id: <831qcmmh0e.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Yuan Fu <casouri@HIDDEN> In-Reply-To: <3B375BD3-CF92-4473-AC46-50D6052B79C2@HIDDEN> (message from Yuan Fu on Sat, 18 Nov 2023 10:47:47 -0800) Subject: Re: bug#67117: [PATCH] Tree-sitter: fix an issue when searching subtree backward References: <87h6lruah2.fsf@HIDDEN> <83y1ezqhhk.fsf@HIDDEN> <3B375BD3-CF92-4473-AC46-50D6052B79C2@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67117 Cc: 67117 <at> debbugs.gnu.org, dvzubarev@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Yuan Fu <casouri@HIDDEN> > Date: Sat, 18 Nov 2023 10:47:47 -0800 > Cc: Denis Zubarev <dvzubarev@HIDDEN>, > 67117 <at> debbugs.gnu.org > > > >> Steps to reproduce the issue: > >> 1. emacs -Q > >> 2. M-x find-file /tmp/t.py > >> 3. paste to the buffer > >> > >> Temp(1, 2) > >> > >> 4. M-x python-ts-mode > >> 5. Call search-subtree with backward flag > >> M-x eval-expression (treesit-search-subtree > >> (treesit--thing-at (point) "call") > >> (lambda (n) (equal (treesit-node-type n ) "integer")) > >> t) > >> It should return the second int node (#<treesit-node integer in 9-10>), but it returns nil. > > > > Yuan, any comments to the patch and the issue in general? > > LGTM. Thanks Denis, and Eli :-) Should we install this on the emacs-29 branch or on master?
bug-gnu-emacs@HIDDEN
:bug#67117
; Package emacs
.
Full text available.Received: (at 67117) by debbugs.gnu.org; 18 Nov 2023 18:48:14 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Nov 18 13:48:14 2023 Received: from localhost ([127.0.0.1]:49521 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r4QMW-0000gA-3g for submit <at> debbugs.gnu.org; Sat, 18 Nov 2023 13:48:13 -0500 Received: from mail-pl1-x631.google.com ([2607:f8b0:4864:20::631]:42229) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <casouri@HIDDEN>) id 1r4QMQ-0000em-Ap for 67117 <at> debbugs.gnu.org; Sat, 18 Nov 2023 13:48:10 -0500 Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-1ce618b7919so10412645ad.0 for <67117 <at> debbugs.gnu.org>; Sat, 18 Nov 2023 10:48:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700333279; x=1700938079; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Gg6GJJzZ4S0cCdwn0z24CEOxCkHZCWWl12wwaMwLkuQ=; b=cMKfQe31X92lWr1HD31ObG/vLwEh8LB/5nLnAtahpfAAPeBKAI4z16g3girMQ3wdHl xcetrAP60HMebsxO3O5bi0K04uX+X5QjC9p+lmFF9aOtCdQMj0mi5DQ9tyxpd4Ja3Ovw x/hxHmP96dzmhgiOjidzBz/MWuqMeFCHQr8kVcHku/KL/Vh5cUEA0daMkRjMWd7F7UUp JJTJBRiGxgwIJ9/g3mJVwr3tkgq0ZPYgh6CjOSCbBznXMrH8MIJWCfC9SqIPniEZpnBj hrxn5QB+gZsQi7Yht8W2hsNCgk7jXOmak0hWrj++mfRHZYYZW17ctCzcCFgTT+Ol1xb5 BxDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700333279; x=1700938079; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Gg6GJJzZ4S0cCdwn0z24CEOxCkHZCWWl12wwaMwLkuQ=; b=iVISn8i1pBg/TtpMHPDvlZ0oxwqyVDnEdVocGKzDNKD9Alv+SYgtfnCYQx3HqjVN4C AxZO6unKWwODxzxmRVw75HP0jkhRE6Pkw+Zpba8/W1Brx5ajtzG8KeXC8BZ+bM83LN30 fGBxSWt//GEgKRVo+Ybvh+cKNecZ5879bzo8X/AnGMTdeXYXqT1kqHsieSkZhrQLw3Aa dQiauJz+C1nxMT2afLNSjpqXiOoTHGdKI6XZQarxUQwuRiftDVaQ/fkss2NBCeLuiQd1 zOZKaismt39DoTDD0z2xaXS2V18Cf1VX164Sas+sSwH9slLdr+fe9pm0C6gRnq1NK19F 2DtQ== X-Gm-Message-State: AOJu0YwJDaoip9KlOL72uwBGfP0FkTDZJ81mQtPYasTSNw1JqsVEIfW0 EJGIpAIiwuWo8sO/4U3gQPM= X-Google-Smtp-Source: AGHT+IHHDP0wnXwE59G/H07sO0VhOxX21qUNV7ow8F0YHZSGEyJ4pX22RUH41UsaPC6ya1apYVKSsA== X-Received: by 2002:a17:902:db07:b0:1c7:5776:a30f with SMTP id m7-20020a170902db0700b001c75776a30fmr3825742plx.12.1700333279360; Sat, 18 Nov 2023 10:47:59 -0800 (PST) Received: from smtpclient.apple (cpe-172-117-161-177.socal.res.rr.com. [172.117.161.177]) by smtp.gmail.com with ESMTPSA id j21-20020a170902759500b001cf57ea953csm306581pll.290.2023.11.18.10.47.58 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 18 Nov 2023 10:47:58 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.700.6\)) Subject: Re: bug#67117: [PATCH] Tree-sitter: fix an issue when searching subtree backward From: Yuan Fu <casouri@HIDDEN> In-Reply-To: <83y1ezqhhk.fsf@HIDDEN> Date: Sat, 18 Nov 2023 10:47:47 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <3B375BD3-CF92-4473-AC46-50D6052B79C2@HIDDEN> References: <87h6lruah2.fsf@HIDDEN> <83y1ezqhhk.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3731.700.6) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67117 Cc: 67117 <at> debbugs.gnu.org, Denis Zubarev <dvzubarev@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Nov 15, 2023, at 5:21 AM, Eli Zaretskii <eliz@HIDDEN> wrote: >=20 >> From: Denis Zubarev <dvzubarev@HIDDEN> >> Date: Sun, 12 Nov 2023 02:38:33 +0300 >>=20 >> Steps to reproduce the issue: >> 1. emacs -Q >> 2. M-x find-file /tmp/t.py >> 3. paste to the buffer >>=20 >> Temp(1, 2)=20 >>=20 >> 4. M-x python-ts-mode >> 5. Call search-subtree with backward flag >> M-x eval-expression (treesit-search-subtree >> (treesit--thing-at (point) "call") >> (lambda (n) (equal (treesit-node-type n ) "integer")) >> t) >> It should return the second int node (#<treesit-node integer in = 9-10>), but it returns nil. >=20 > Yuan, any comments to the patch and the issue in general? LGTM. Thanks Denis, and Eli :-) Yuan=
bug-gnu-emacs@HIDDEN
:bug#67117
; Package emacs
.
Full text available.Received: (at 67117) by debbugs.gnu.org; 15 Nov 2023 17:01:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Nov 15 12:01:49 2023 Received: from localhost ([127.0.0.1]:53328 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r3JGv-0005xo-91 for submit <at> debbugs.gnu.org; Wed, 15 Nov 2023 12:01:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:46918) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1r3JGt-0005xY-JL for 67117 <at> debbugs.gnu.org; Wed, 15 Nov 2023 12:01:48 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1r3JGo-0002hM-ML; Wed, 15 Nov 2023 12:01:43 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=JeX1G5VBK5gpcw6VYTg3UYuSYTVf4+OV8B98Gq6QqAA=; b=e6vjsF+SczUl rxEYl2Zf92hgwAzcNV1VlRU5RFqmR9gGZOVX9+tIPoiw3L/BeiCb4nIns+Zgj+Lw/1xL9nylJEiYp w4jjkVpQFo0/ylC2XVNfo/7CDEzlcz9HU4hE/zXDKUgU+o2mBxgFqdVMyQyxeRgLpz0HyIxGr85a1 Dh+vaMbWMvQ98uiN40l4TuJeohwWE9WcsVov1OWmmqa58RrOvN5xBeHmYscN9TRvAvHRCIXALpowz RAJYX7Zlf6EZWoQhXTVUZI57Y56nE37pYGSEw++RJBFCJZ3etr12O91h5kAcX3CNgzm7ijSdduQAY IHCeucn55E28BNqjCbwciw==; Date: Wed, 15 Nov 2023 19:01:28 +0200 Message-Id: <83fs17q7br.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: dvzubarev@HIDDEN In-Reply-To: <83y1ezqhhk.fsf@HIDDEN> (message from Eli Zaretskii on Wed, 15 Nov 2023 15:21:59 +0200) Subject: Re: bug#67117: [PATCH] Tree-sitter: fix an issue when searching subtree backward References: <87h6lruah2.fsf@HIDDEN> <83y1ezqhhk.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67117 Cc: 67117 <at> debbugs.gnu.org, casouri@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > Cc: 67117 <at> debbugs.gnu.org > Date: Wed, 15 Nov 2023 15:21:59 +0200 > From: Eli Zaretskii <eliz@HIDDEN> > > Denis, your changes are too large for us to accept them without a > copyright assignment. Would you like to start your assignment > paperwork at this time, so that we could accept this contribution, and > all your future ones? Oops, I see that you already started the paperwork. So let's wait for it to run to completion.
bug-gnu-emacs@HIDDEN
:bug#67117
; Package emacs
.
Full text available.Received: (at 67117) by debbugs.gnu.org; 15 Nov 2023 16:28:07 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Nov 15 11:28:07 2023 Received: from localhost ([127.0.0.1]:53114 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r3IkI-00027a-Lx for submit <at> debbugs.gnu.org; Wed, 15 Nov 2023 11:28:07 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:58120) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1r3IQc-0001QS-UT for 67117 <at> debbugs.gnu.org; Wed, 15 Nov 2023 11:07:47 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1r3FqL-0003M3-Qb; Wed, 15 Nov 2023 08:22:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=ui7EUguTunVn+uiTlTg4770I3UHS8zk+i3c1emQGPlw=; b=EXFpj2quaBA0 llE+5SGtXhph1faOW82Vw8aMKKbA5jCuaQ98O0nGZ3ci2OPAaipIFkQL0ir2j3X9i82bZt5uPaATu OKqF/CrC6lCELaSvs2/0MZXNFo3Ef2NnvJZ81z2tImnFV0cf4tLLuDjOjwwvbRTQWyVBtMXLQEFyD /KLDOkeaCA83i10QkWEvH9eF3rLmnAneLSwnQWX+/KEdL7gNIwWd98g4gPddmQzfDb9RDdb2knaH0 bFfrMR32xqqDgJ0eokjdMgG5zqTt5SX5zNESvAWifmNVrnGpn9uIYG98oMxOshW5fhfY4Ih05D4n1 fnmIgNLxreS1Zim6TMZ/Pw==; Date: Wed, 15 Nov 2023 15:21:59 +0200 Message-Id: <83y1ezqhhk.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Denis Zubarev <dvzubarev@HIDDEN>, Yuan Fu <casouri@HIDDEN> In-Reply-To: <87h6lruah2.fsf@HIDDEN> (message from Denis Zubarev on Sun, 12 Nov 2023 02:38:33 +0300) Subject: Re: bug#67117: [PATCH] Tree-sitter: fix an issue when searching subtree backward References: <87h6lruah2.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67117 Cc: 67117 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Denis Zubarev <dvzubarev@HIDDEN> > Date: Sun, 12 Nov 2023 02:38:33 +0300 > > Steps to reproduce the issue: > 1. emacs -Q > 2. M-x find-file /tmp/t.py > 3. paste to the buffer > > Temp(1, 2) > > 4. M-x python-ts-mode > 5. Call search-subtree with backward flag > M-x eval-expression (treesit-search-subtree > (treesit--thing-at (point) "call") > (lambda (n) (equal (treesit-node-type n ) "integer")) > t) > It should return the second int node (#<treesit-node integer in 9-10>), but it returns nil. Yuan, any comments to the patch and the issue in general? Denis, your changes are too large for us to accept them without a copyright assignment. Would you like to start your assignment paperwork at this time, so that we could accept this contribution, and all your future ones? Thanks.
bug-gnu-emacs@HIDDEN
:bug#67117
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 11 Nov 2023 23:39:51 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Nov 11 18:39:51 2023 Received: from localhost ([127.0.0.1]:54658 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r1xZv-0003BA-14 for submit <at> debbugs.gnu.org; Sat, 11 Nov 2023 18:39:51 -0500 Received: from lists.gnu.org ([2001:470:142::17]:52420) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dvzubarev@HIDDEN>) id 1r1xZt-0003As-RX for submit <at> debbugs.gnu.org; Sat, 11 Nov 2023 18:39:50 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <dvzubarev@HIDDEN>) id 1r1xYu-0004UV-3c for bug-gnu-emacs@HIDDEN; Sat, 11 Nov 2023 18:38:50 -0500 Received: from forward100c.mail.yandex.net ([178.154.239.211]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <dvzubarev@HIDDEN>) id 1r1xYp-000855-92 for bug-gnu-emacs@HIDDEN; Sat, 11 Nov 2023 18:38:45 -0500 Received: from mail-nwsmtp-smtp-production-main-39.sas.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-39.sas.yp-c.yandex.net [IPv6:2a02:6b8:c08:2087:0:640:7bf5:0]) by forward100c.mail.yandex.net (Yandex) with ESMTP id 65B9E60917 for <bug-gnu-emacs@HIDDEN>; Sun, 12 Nov 2023 02:38:39 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-39.sas.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id ccqrv9QSruQ0-RNtiU6kR; Sun, 12 Nov 2023 02:38:39 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1699745919; bh=RGeyzpKkrW0/YXwKmGxjyZPboqOEXsdP9CLu3v+OaqE=; h=Message-ID:Date:Subject:To:From; b=ZsaRlMwWRE/j3NY9+k5IwBaqwwogVNB/zBPCKKrMUNrr+jzdd5E+oCGPRpY04iLcT AAOa9TOEy1FwuhlyhKLN+JDlwUB2AwT/bzDOvsWQGLH+lKGi1EPaXGP3pvsv77GANX z4eYTD3CLJrAPV2nyNQMZiz5LYFbdAaZy3Ar3Im0= Authentication-Results: mail-nwsmtp-smtp-production-main-39.sas.yp-c.yandex.net; dkim=pass header.i=@yandex.ru From: Denis Zubarev <dvzubarev@HIDDEN> To: bug-gnu-emacs@HIDDEN Subject: [PATCH] Tree-sitter: fix an issue when searching subtree backward Date: Sun, 12 Nov 2023 02:38:33 +0300 Message-ID: <87h6lruah2.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=178.154.239.211; envelope-from=dvzubarev@HIDDEN; helo=forward100c.mail.yandex.net X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 3.0 (+++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: Tags: patch Steps to reproduce the issue: 1. emacs -Q 2. M-x find-file /tmp/t.py 3. paste to the buffer Temp(1, 2) Content analysis details: (3.0 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (dvzubarev[at]yandex.ru) -0.0 SPF_HELO_PASS SPF: HELO matches SPF record 1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) 2.0 SPOOFED_FREEMAIL No description available. X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.0 (/) --=-=-= Content-Type: text/plain Tags: patch Steps to reproduce the issue: 1. emacs -Q 2. M-x find-file /tmp/t.py 3. paste to the buffer Temp(1, 2) 4. M-x python-ts-mode 5. Call search-subtree with backward flag M-x eval-expression (treesit-search-subtree (treesit--thing-at (point) "call") (lambda (n) (equal (treesit-node-type n ) "integer")) t) It should return the second int node (#<treesit-node integer in 9-10>), but it returns nil. I fixed it in treesit_traverse_child_helper. Do not call treesit_traverse_sibling_helper when the named node is required and the last child is the named node. Otherwise treesit_traverse_sibling_helper will move cursor to the previous sibling and the last node will be skipped. I've added test for this bug. In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.33, cairo version 1.16.0) of 2023-11-12 built on NUC-here Repository revision: 400a71b8f2c5a49dce4f542adfd2fdb59eb34243 Repository branch: search-subtree-bacward-fix Windowing system distributor 'The X.Org Foundation', version 11.0.12101004 System Description: Ubuntu 22.04.3 LTS Configured using: 'configure --with-modules --with-native-compilation=aot --with-imagemagick --with-json --with-tree-sitter --with-xft' --=-=-= Content-Type: text/patch Content-Disposition: attachment; filename=0001-Fix-an-issue-when-searching-subtree-backward.patch From 88e913940cdd3c82afbdf2ad6520e1a1b9c2797b Mon Sep 17 00:00:00 2001 From: Denis Zubarev <dvzubarev@HIDDEN> Date: Sun, 12 Nov 2023 01:42:42 +0300 Subject: [PATCH] Fix an issue when searching subtree backward * src/treesit.c (treesit_traverse_child_helper): Do not call treesit_traverse_sibling_helper when the named node is required and the last child is the named node. Otherwise treesit_traverse_sibling_helper will move cursor to the previous sibling and last node will be skipped. * test/src/treesit-tests.el (treesit-search-subtree-forward-1): (treesit-search-subtree-backward-1): Add tests --- src/treesit.c | 4 ++-- test/src/treesit-tests.el | 30 ++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/src/treesit.c b/src/treesit.c index 69b59fca11..4dcad751f4 100644 --- a/src/treesit.c +++ b/src/treesit.c @@ -3247,9 +3247,9 @@ treesit_traverse_child_helper (TSTreeCursor *cursor, /* First go to the last child. */ while (ts_tree_cursor_goto_next_sibling (cursor)); - if (!named) + if (!named || (named && ts_node_is_named (ts_tree_cursor_current_node(cursor)))) return true; - /* Else named... */ + /* Else named is required and last child is not named node */ if (treesit_traverse_sibling_helper(cursor, false, true)) return true; else diff --git a/test/src/treesit-tests.el b/test/src/treesit-tests.el index 791e902bd0..c9b15c618c 100644 --- a/test/src/treesit-tests.el +++ b/test/src/treesit-tests.el @@ -1167,6 +1167,36 @@ treesit-defun-navigation-top-level treesit--ert-defun-navigation-top-level-master 'top-level)) +(ert-deftest treesit-search-subtree-forward-1 () + "Test search subtree forward." + (skip-unless (treesit-language-available-p 'python)) + (require 'python) + (python-ts-mode) + (insert "Temp(1, 2)") + (goto-char (point-min)) + (let ((node (treesit-search-subtree + (treesit--thing-at (point) "call") + (lambda (n) (equal (treesit-node-type n ) "integer"))))) + + (should node) + (should (equal (treesit-node-text node) "1")))) + +(ert-deftest treesit-search-subtree-backward-1 () + "Test search subtree with backward=t." + (skip-unless (treesit-language-available-p 'python)) + (require 'python) + (python-ts-mode) + (insert "Temp(1, 2)") + (goto-char (point-min)) + (let ((node (treesit-search-subtree + (treesit--thing-at (point) "call") + (lambda (n) (equal (treesit-node-type n ) "integer")) + t))) + + (should node) + (should (equal (treesit-node-text node) "2")))) + + ;; TODO ;; - Functions in treesit.el ;; - treesit-load-name-override-list -- 2.34.1 --=-=-=--
Denis Zubarev <dvzubarev@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#67117
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.