From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: Making package.el talk over Tor Date: Fri, 17 Nov 2023 22:03:46 -0500 Message-ID: References: <8734ybkqf4.fsf@disroot.org> Reply-To: rms@gnu.org Content-Type: text/plain; charset=Utf-8 Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="39547"; mail-complaints-to="usenet@ciao.gmane.io" To: akib@disroot.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Nov 18 04:04:40 2023 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 1r4BdQ-000A3s-4d for ged-emacs-devel@m.gmane-mx.org; Sat, 18 Nov 2023 04:04:40 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r4BcZ-0006fd-T3; Fri, 17 Nov 2023 22:03:47 -0500 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 1r4BcY-0006fV-Mq for emacs-devel@gnu.org; Fri, 17 Nov 2023 22:03:46 -0500 Original-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 ) id 1r4BcY-0005RF-9S; Fri, 17 Nov 2023 22:03:46 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:to:From: mime-version; bh=rpsJZIlmfHrro0ectxn5Ra+Byf54Yon/enZECqkt/yQ=; b=e++btKL7Wdb8 6H58eguFhp22FK/e7XFkVmoSvS68l9ivznGvlvR/cFH/jrVy4E78vlFCIMNa5HF1KZLNWQ2qgYvWc gGvr77Y4oSBiBS9RLOQYK4+yRzKooDN1JghPaDCgYAaXxOxybP2GBlJUSRxwNF0npchZNBvtdNDSI W4wP1AdjQwEqIC+3ZSYHutTvsBk864YhdzMVARlh4jyrAjHEZsiMS7NM8Gvs9myRrDESwsEn6YHv9 Xe0lINsEvcyfUJ9vjDxDGXnWxtNMOalVua3w9oG/vyzZG79clXzrHbRiFUyJAtJrdDDsNrqD63KLe 3LdltXhE8dV/S5CVlHo6/w==; Original-Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1r4BcY-0003zi-0a; Fri, 17 Nov 2023 22:03:46 -0500 In-Reply-To: (message from Richard Stallman on Thu, 16 Nov 2023 22:53:33 -0500) 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:312882 Archived-At: [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] I have been trying to understand how package.el calls url.el but I can't begin to understand URL. What are its entry points? How is it supposed to be used? The file url.el gives no information whatsoever about how that package works or how to use it. It creates a process only inside url-open-rlogin, url-open-telnet and url-gateway-nslookup-host, but these are buried deep inside its calling structure. package.el calls a few url-... functions. They are called from three places that are subroutines or auxiliary macros, two of which have next to no documentation of what they do. The one that has some information is package--with-work-buffer, whose doc string is very abstract. It could be used for almost anything. "Run BODY in a buffer containing the contents of FILE at LOCATION. LOCATION is the base location of a package archive, and should be one of the URLs (or file names) specified in `package-archives'. FILE is the name of a file relative to that base location. This macro retrieves FILE from LOCATION into a temporary buffer, and evaluates BODY while that buffer is current. This work buffer is killed afterwards. Return the last value in BODY." I decided to change the calls to start-process. I can do that without undertsnading url.el. Maybe it will work. Would someone like to clean up the URL package and document its structure, its entry points, and how to use them? -- Dr Richard Stallman (https://stallman.org) Chief GNUisance of the GNU Project (https://gnu.org) Founder, Free Software Foundation (https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org)