From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Stefan Kangas Newsgroups: gmane.emacs.bugs Subject: bug#39187: Fwd: "Package refresh is already in progress, please wait..." Date: Thu, 23 Jan 2020 19:18:28 +0100 Message-ID: <87iml2f34b.fsf@marxist.se> References: <87muakus4m.fsf@marxist.se> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="84296"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: 39187@debbugs.gnu.org To: Jean-Christophe Helary Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jan 23 21:28:29 2020 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 1iuj5Y-000LsW-Bc for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 23 Jan 2020 21:28:28 +0100 Original-Received: from localhost ([::1]:33498 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iuj5X-000182-FL for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 23 Jan 2020 15:28:27 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45092) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iuh4J-00012X-L7 for bug-gnu-emacs@gnu.org; Thu, 23 Jan 2020 13:19:04 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iuh4I-00022O-Fn for bug-gnu-emacs@gnu.org; Thu, 23 Jan 2020 13:19:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:47194) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iuh4I-0001zi-4k for bug-gnu-emacs@gnu.org; Thu, 23 Jan 2020 13:19:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iuh4I-0007OR-09 for bug-gnu-emacs@gnu.org; Thu, 23 Jan 2020 13:19:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 23 Jan 2020 18:19:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 39187 X-GNU-PR-Package: emacs Original-Received: via spool by 39187-submit@debbugs.gnu.org id=B39187.157980351828382 (code B ref 39187); Thu, 23 Jan 2020 18:19:01 +0000 Original-Received: (at 39187) by debbugs.gnu.org; 23 Jan 2020 18:18:38 +0000 Original-Received: from localhost ([127.0.0.1]:53167 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iuh3u-0007Ni-Al for submit@debbugs.gnu.org; Thu, 23 Jan 2020 13:18:38 -0500 Original-Received: from ted.gofardesign.uk ([67.225.143.91]:45832) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iuh3t-0007NX-Fz for 39187@debbugs.gnu.org; Thu, 23 Jan 2020 13:18:37 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=marxist.se; s=default; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=voXIsWh7TkO/jJZKJgqTRQ4+CY+6kQ12BAdph2ejS90=; b=RYxvVcYc6brOfRgZ2W4VtBlLt+ dvXUjFjW/9T/WW0F9L0bBjf05ndiztS3RgpQuS+WB+lrAT5f/qF2egLB90ekeUt35Zb9W0HABkeSr 3B/8Bq9wWChv8NhWHERPpaHZ5EYLbtw1izIyaNDQrRls7r4oxEaVOVlgzGGM+FGwLwn/ZdLJvWNCD 9oc2AHxN19n9N/4WaWxVWO+dot3SvAgUiIIxvN2rt3w9HFQqqnaWhUjuz9av7T4IMK0a+GJUkHEI6 6I1Or0RG3k8QnNkKfLgaxOIrQ4pf1BNxlWJU7foe5JPIOZcrmC1elYiMFSx6TJWP5NjiI/lJltoNn cG1ytPEA==; Original-Received: from h-70-69.a785.priv.bahnhof.se ([155.4.70.69]:34914 helo=localhost) by ted.gofardesign.uk with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92) (envelope-from ) id 1iuh3m-000F6x-IX; Thu, 23 Jan 2020 13:18:30 -0500 In-Reply-To: <87muakus4m.fsf@marxist.se> (Stefan Kangas's message of "Sun, 19 Jan 2020 02:55:37 +0100") X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - ted.gofardesign.uk X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - marxist.se X-Get-Message-Sender-Via: ted.gofardesign.uk: authenticated_id: stefan@marxist.se X-Authenticated-Sender: ted.gofardesign.uk: stefan@marxist.se X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 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" Xref: news.gmane.io gmane.emacs.bugs:175191 Archived-At: >> > It looks like emacs does not properly handle package refreshes when >> > the internet connection has been killed in the middle of an >> > refresh. >> > >> > I often get this message in that case and I can't call package >> > until I actually kill emacs and restart it. [...] > I think the fix here is simply to make sure that these processes times > out. Unless I'm missing something, it turns out that this is not that easy to do. At least I couldn't figure out how to do it. I found the following probably relevant bug: bug#34607: url-retrieve-synchronously: TIMEOUT option value takes no effect For now at least, I'm giving up on finding a solution where url does the right thing and times out. ----- I see two ways forward: 1. Remove the warning and accept that we might launch several processes doing the same update one after the other. I would like to avoid that on master, but it might be the least intrusive change for emacs-27. 2. When we run a refresh, save the current time. If the user tries to run another refresh, check if more than X seconds has elapsed since the old one was started. If it has been more than X seconds, prompt the user to kill the old refresh and re-launch it. It won't be perfect, but it will be better than what we had before at least. Does anyone else have any ideas or preferences here? Otherwise, I'll revert the change that exposed this bug on the emacs-27 branch, and implement the second change on master. Best regards, Stefan Kangas