From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.bugs Subject: bug#61350: Eglot over Tramp freezes with large project Date: Wed, 15 Mar 2023 23:24:32 -0700 Message-ID: <8e031bc5-7ac3-620e-b1ca-aaa872b3cdde@gmail.com> References: <87y1ootw2t.fsf@gmail.com> <31964054.380679.1678194256931@office.mailbox.org> <87r0u0u0rl.fsf@gmx.de> <87mt4otyy1.fsf@gmx.de> <87pm9fk6ht.fsf@gmx.de> <87mt4jzf8q.fsf@gmail.com> <87fsabh2z2.fsf@gmx.de> <87edpvxu7w.fsf@gmail.com> <87bkkzgyb8.fsf@gmx.de> <87lek2x09t.fsf@gmail.com> <875yb646d1.fsf@gmx.de> <87fsa7mw9x.fsf@gmx.de> <87fsa7l6o6.fsf@gmx.de> <87a60fl4p7.fsf@gmx.de> <878rfx6bqe.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="37043"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Thomas Koch , Michael Albinus , 61350@debbugs.gnu.org To: =?UTF-8?Q?Jo=C3=A3o_?= =?UTF-8?Q?T=C3=A1vora?= , Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Mar 16 07:25:48 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pch3c-0009NW-NC for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 16 Mar 2023 07:25:48 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pch3E-0000IQ-RS; Thu, 16 Mar 2023 02:25:26 -0400 Original-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 ) id 1pch2t-0000Hz-Ml for bug-gnu-emacs@gnu.org; Thu, 16 Mar 2023 02:25:05 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pch2s-0007mg-UE for bug-gnu-emacs@gnu.org; Thu, 16 Mar 2023 02:25:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pch2s-0000La-D2 for bug-gnu-emacs@gnu.org; Thu, 16 Mar 2023 02:25:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 16 Mar 2023 06:25:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 61350 X-GNU-PR-Package: emacs Original-Received: via spool by 61350-submit@debbugs.gnu.org id=B61350.16789478811304 (code B ref 61350); Thu, 16 Mar 2023 06:25:02 +0000 Original-Received: (at 61350) by debbugs.gnu.org; 16 Mar 2023 06:24:41 +0000 Original-Received: from localhost ([127.0.0.1]:41028 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pch2X-0000Kx-Bw for submit@debbugs.gnu.org; Thu, 16 Mar 2023 02:24:41 -0400 Original-Received: from mail-pj1-f50.google.com ([209.85.216.50]:36550) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pch2V-0000Kk-AD for 61350@debbugs.gnu.org; Thu, 16 Mar 2023 02:24:39 -0400 Original-Received: by mail-pj1-f50.google.com with SMTP id o6-20020a17090a9f8600b0023f32869993so364396pjp.1 for <61350@debbugs.gnu.org>; Wed, 15 Mar 2023 23:24:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1678947873; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:mime-version:date:message-id:from:to:cc :subject:date:message-id:reply-to; bh=ZRBamrDrawGkgx5jRgDJ6x7bSBMRoTPDit2QN8xo70Q=; b=nNNfrzSIyZaoRxjTktVVmJH4MdM21UEyvXR7EiDDvlHh8VUatQ0+po8mqkpSahkCSR bFTAtCKkxUcMaTJnq1sO/g+p7neUy2OxnsT/+7x3wsr2Il+rx+b1InqvoytyHaksm/Am NHcJpLZ0vuhLEoqIOtlZXCyPMgJbVEqbGbyowU+jBOhm/f70XKWFQI3PWcMFGZrLgcGy 6ZwSZj0v+kB6ydp/1xdOoYRRzngARp0OCOAIJLMLaeMFqDTRrOgJqcXDbsroAiU4W8J7 hU5Ga6MbS4iJDY43iY+aTu2Ou3FvwYI2uw6yny5BVp04Kqj8uujpoTnMgQBFBjcFP89G fCxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678947873; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ZRBamrDrawGkgx5jRgDJ6x7bSBMRoTPDit2QN8xo70Q=; b=pY74W6oS9tCgUE94N9uVSkHxuYK6v5mLbaX30gReFCI9lWB9x/C7SB4aI9Yq/YIpyA dwxnQ2IKlf6G+aFv10YiKdJ49uA0FGFBt3S992lgtFRlbHunvg9J4gpPeN1dEBhXFl4I PicM0IHfOMRB8+4skKFOcC/DRILwCCPShcsQWYvQW8cHDp+z9h+Zb966zASaPjXh5jqz pyuhl4Jb66BmObY9f37MIZ5gyP9JfLrw8PoyyWALgh3kKYp6UVC/6j9QNfw5pnAxqKEy /JqeUOgd0Z1vUdYiXXYomR15ZGzolhajbkQlrosH9g5qOXtTMk//1mW4nHBOOdhmO46o Z4CA== X-Gm-Message-State: AO0yUKWlvDB3BhzKfrwD1pPP4gyNWXsuzVZuEsldTpnBWX43wrHtCMe3 lJMomnfxYaFJUC3l4Gi0QNI= X-Google-Smtp-Source: AK7set/ZQJo1SLJD6lw9WAe6FMI25OEPgC19hr7pRM+utjZdwWQkMhlbzs4GE00fDOicwgxRzyZUsQ== X-Received: by 2002:a17:903:41c2:b0:19e:6084:da58 with SMTP id u2-20020a17090341c200b0019e6084da58mr2669641ple.4.1678947873141; Wed, 15 Mar 2023 23:24:33 -0700 (PDT) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id y3-20020a170902d64300b0019a95baaaa6sm4677382plh.222.2023.03.15.23.24.32 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 15 Mar 2023 23:24:32 -0700 (PDT) Content-Language: en-US In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:258002 Archived-At: On 3/15/2023 2:49 PM, João Távora wrote: > SLY, jsonrpc.el, and other code is synchronous as well (the completion > API is synch, as you well know). `accept-p-o` + a filter that invokes > a closure that throws out of the loop is a great way to do this. > See jsonrpc-request, for example. No JUST-THIS-ONE, and has > been working fine in many forms since Emacs 24.3 AFAIK. Assuming I understand the context here correctly, this sort of thing is part of why Chris Wellons' emacs-aio package uses 'run-at-time' for handling resolved promises[1]: > If the result is ready call the callback in the next event loop turn using run-at-time. This is important because it keeps all the asynchronous components isolated from one another. They won’t see each others’ frames on the call stack, nor frames from aio. This is so important that the Promises/A+ specification is explicit about it. While a solution specific to the problem in this bug likely doesn't require an entire asynchrony framework, if we get one into Emacs, it should definitely support this case. (That said, a lot of the discussion from this is probably best left to the emacs-devel thread so as not to cause too much distraction... :)) [1] https://nullprogram.com/blog/2019/03/10/