From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jonas Bernoulli Newsgroups: gmane.emacs.devel Subject: Re: [ELPA] New package: plz Date: Sat, 21 May 2022 13:13:03 +0200 Message-ID: <8735h3kukg.fsf@bernoul.li> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="18107"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Stefan Monnier , Adam Porter Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat May 21 13:15:09 2022 Return-path: Envelope-to: ged-emacs-devel@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 1nsN4e-0004WU-Ev for ged-emacs-devel@m.gmane-mx.org; Sat, 21 May 2022 13:15:08 +0200 Original-Received: from localhost ([::1]:60592 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nsN4c-0007MS-TM for ged-emacs-devel@m.gmane-mx.org; Sat, 21 May 2022 07:15:07 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:41560) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nsN2k-0006cf-Pf for emacs-devel@gnu.org; Sat, 21 May 2022 07:13:11 -0400 Original-Received: from mail.hostpark.net ([212.243.197.30]:44904) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nsN2h-0001dK-F8 for emacs-devel@gnu.org; Sat, 21 May 2022 07:13:10 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by mail.hostpark.net (Postfix) with ESMTP id 244F116483; Sat, 21 May 2022 13:13:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=bernoul.li; h= content-transfer-encoding:content-type:content-type:mime-version :message-id:date:date:references:in-reply-to:subject:subject :from:from:received:received; s=sel2011a; t=1653131583; bh=g86aY ofKvZG8ledwffx/BkqPveLezqWew6GweNquXio=; b=VJsdlm789LDNH0fjK+RB0 X1OwDBAIj0MY+PLa+b3oKn1ElSzVF25Blos0sZXU2/LYB0FaSi1WEG8g8BBGKY73 ahOkUUGVhhVKOFtvl6R0908oN2l/8ZeujRBR1eamcX1CQaDlUNxrR0wwPMMHoPqZ 2GNJFgYKOjJZ4arMML8F3Y= X-Virus-Scanned: by Hostpark/NetZone Mailprotection at hostpark.net Original-Received: from mail.hostpark.net ([127.0.0.1]) by localhost (mail1.hostpark.net [127.0.0.1]) (amavisd-new, port 10224) with ESMTP id 13A-fViCWLwg; Sat, 21 May 2022 13:13:03 +0200 (CEST) Original-Received: from customer (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail.hostpark.net (Postfix) with ESMTPSA id DA4BF16109; Sat, 21 May 2022 13:13:03 +0200 (CEST) In-Reply-To: Received-SPF: none client-ip=212.243.197.30; envelope-from=jonas@bernoul.li; helo=mail.hostpark.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:290046 Archived-At: Stefan Monnier writes: >> It's an HTTP library that uses Curl as a backend. > > I hope we can consolidate this with `request.el` and `url.el` sooner > rather than later. As others mentioned, adding a backend to plz which > uses url.el (or at least doesn't require `curl` to be installed) would > be great. Some people don't like the interface but that was never the main problem I had with url.el. What caused me pain is its bugs, and I suspect for many other package maintainers it is the same. Right now though --and that is a first-- I am not aware of any bugs for which I don't have backported a fix in ghub.el. (If you must see code, it is at the very end of ghub.el. It ain't pretty.) Of course I am not happy that I have to backport the fixes, especially because that also affects other packages. The hope is that those other packages get bug fixes for free, but of course it is also possible that my monkey patches contain bugs of their own. It worries me that I might be breaking other peoples packages, but there really is no alternative; these url.el bugs caused an endless stream of bug reports in my packages, and once we figured out the causes, waiting a few more years until the fixes are in Emacs just wasn't an option anymore. I am not saying that url.el is bad, but that maintaining such functionality is a lot of work. Doing so requires an expert whose main or only focus it is to do just that. So: > The way HTTP is evolving, I suspect we're going to need to rely on > C libraries (as opposed to url.el's "it's all ELisp" approach) in the > not too distant future, tho. Maybe that's not a bad thing and it is best if we do that sooner rather than later? Of course libcurl may have bugs too, but *many* people are using it, making it highly unlikely that we are the ones who will have to figure them out. With url.el that is not the case. If you use that, then you are going to have to deal with bugs that have nothing to do with your own package, if only your package is popular enough. I think that hinders Emacs evolution as a network client. Occasionally I have had an idea that involved networking, but, given my experience with forge/ghub, I never worked on any of them. The risk of ending up having to deal with mystery bugs as a result, currently is just to high. I might not be the only one who feels that way. Jonas TL;DR Maybe this was overly negative. That wasn't my intention. What I really want to say is this: could someone=E2=84=A2 with experience in this = area pretty please start working on bringing libcurl to Emacs?