From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Tom Tromey Newsgroups: gmane.emacs.devel Subject: Re: CVS is the `released version' Date: Mon, 14 May 2007 08:19:06 -0700 Message-ID: <17992.32234.297429.89438@localhost.localdomain> References: <2cd46e7f0705101124r72000f78xdf05d18ca815ca57@mail.gmail.com> <20070513084905.C95BC14297@owie.lan> Reply-To: Tom Tromey NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1179157018 31230 80.91.229.12 (14 May 2007 15:36:58 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 14 May 2007 15:36:58 +0000 (UTC) Cc: Ryan Yeske , joakim@verona.se, emacs-devel@gnu.org To: rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon May 14 17:36:56 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1HncbY-0001o6-F0 for ged-emacs-devel@m.gmane.org; Mon, 14 May 2007 17:36:56 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HncjK-00029y-0x for ged-emacs-devel@m.gmane.org; Mon, 14 May 2007 11:44:58 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Hnci3-0001T7-Ef for emacs-devel@gnu.org; Mon, 14 May 2007 11:43:39 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Hnci2-0001Sb-Fc for emacs-devel@gnu.org; Mon, 14 May 2007 11:43:38 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Hnci2-0001SV-90 for emacs-devel@gnu.org; Mon, 14 May 2007 11:43:38 -0400 Original-Received: from mx1.redhat.com ([66.187.233.31]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1HncaF-0001t2-0K; Mon, 14 May 2007 11:35:35 -0400 Original-Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.13.1/8.13.1) with ESMTP id l4EFZXXS027694; Mon, 14 May 2007 11:35:33 -0400 Original-Received: from pobox.corp.redhat.com (pobox.corp.redhat.com [10.11.255.20]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id l4EFZW4T007994; Mon, 14 May 2007 11:35:32 -0400 Original-Received: from localhost.localdomain.redhat.com (vpn-14-133.rdu.redhat.com [10.11.14.133]) by pobox.corp.redhat.com (8.13.1/8.13.1) with ESMTP id l4EFZSvY028056; Mon, 14 May 2007 11:35:29 -0400 In-Reply-To: X-Mailer: VM 7.19-cannot_determine_precise_VM_version. under Emacs 22.0.95.1 X-Attribution: Tom X-detected-kernel: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:71040 Archived-At: >>>>> "RMS" == Richard Stallman writes: RMS> Can you explain why this is so? What are the jobs that you need RMS> to do without package.el, which package.el avoids? package.el will install the dependencies of a package you are installing. It extracts autoloads and byte-compiles the lisp. When the package is activated, it sets up the load-path, the info path, and evals the autoloads. It also lets you install newer versions of existing packages, and is smart about only activating the most recent. In the future it will let you delete packages as well (a simple operation, but I didn't want to include it in early releases). RMS> That is something that could be done by a function to install certain RMS> Lisp code, which does not need that Lisp code to be a "package". First, please note that a "package" in most cases is really just a single .el file. More complicated things do need to be bundled (e.g., ELPA provides an old version of "url" for Emacs 21 users), but this bundling is just a tar file (whose top-level directory has a certain name) and a single extra file (e.g., "url-pkg.el", contained in the tar). Even for the "big program" case there is very little administrative overhead here -- just a single call to (define-package). package.el has the code to install a lisp file. This is not foolproof because, in my experience, most Emacs Lisp files need a tweak or two before they can be said to follow the comment guidelines. The fixes are generally trivial. I thought I would use the installation code more, but it turns out to be just as easy to upload a file to ELPA and then share it with everybody. And also the package-menu mode is fun to use :-) Tom