From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Sebastian Wiesner Newsgroups: gmane.emacs.devel Subject: Re: cl-defstruct-based package.el, now with ert tests and no external tar! Date: Tue, 25 Jun 2013 22:43:00 +0200 Message-ID: References: <87y5cx0wh7.fsf@yandex.ru> <87ppy7e5ke.fsf@lifelogs.com> <87vc5x1uzj.fsf@yandex.ru> <87txlcdyl1.fsf@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1372192997 3606 80.91.229.3 (25 Jun 2013 20:43:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 25 Jun 2013 20:43:17 +0000 (UTC) Cc: Emacs development discussions , Daniel Hackney , Dmitry Gutov To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jun 25 22:43:15 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Ura4v-0000Qr-Ko for ged-emacs-devel@m.gmane.org; Tue, 25 Jun 2013 22:43:05 +0200 Original-Received: from localhost ([::1]:37965 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ura4v-0002md-AU for ged-emacs-devel@m.gmane.org; Tue, 25 Jun 2013 16:43:05 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:47655) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ura4s-0002mY-Lb for emacs-devel@gnu.org; Tue, 25 Jun 2013 16:43:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ura4r-000642-E3 for emacs-devel@gnu.org; Tue, 25 Jun 2013 16:43:02 -0400 Original-Received: from mail-qc0-x233.google.com ([2607:f8b0:400d:c01::233]:65369) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ura4r-00063x-A6 for emacs-devel@gnu.org; Tue, 25 Jun 2013 16:43:01 -0400 Original-Received: by mail-qc0-f179.google.com with SMTP id e11so7558980qcx.24 for ; Tue, 25 Jun 2013 13:43:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=iW0RjWkLRYfijEKqTBPVtX6TQnSPYas2I1DouvqKRoI=; b=ybc/fBa8E/OoOtuudOwKHVHpaDt8pPCK1U86JdSTFFKH4Dwrh4A/oDEEVjDwSK160K F2vjg0840FdFpnmZkKUycGrFiAu4e23qUGK8r3A0oKrE7a8xSmfcJavRYpDnb08sk91d DQUK7e6d+FBzxUHq9oc8rD9OiGcYhu+jlrBM8p+s8/7JZjH/P6DRqi7xNXe9ssVvpdNP VYK8LTsl6Crr1bIizgfzXZeBibahtbD8P6ycHHzMh2eIQTyN5PvTjbbut8q7kKOtBoyn LJr9EJZlHsOMXaUzbFMBSz8C7CXfLpYMbfyc4/QBWNP8R+X5f0OsKLC5kLMKRwHZtS9l PwaQ== X-Received: by 10.49.85.199 with SMTP id j7mr823003qez.45.1372192980917; Tue, 25 Jun 2013 13:43:00 -0700 (PDT) Original-Received: by 10.224.178.193 with HTTP; Tue, 25 Jun 2013 13:43:00 -0700 (PDT) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:400d:c01::233 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:161055 Archived-At: 2013/6/25 Stefan Monnier : >> I just said that things would have been easier for us, if we had been >> made aware of these changes, e.g. by the NEWS file or some other kind >> of announcement. Had I not followed this list, we would not have >> noticed these changes at all, and would probably have reported >> pointless bugs for them. > > It would have been easier for us if you had announced Carton here (or > on gnu.emacs.sources or some such place), so we'd have known that > someone was using the actual code rather than the UI ;-) Well, you know now :) Seriously, we didn't know that Carton was getting so popular, and we can hardly announce each and every package we write on this list, can't we? >> - and to get a list of upgradable and obsolete packages (uhm, don't >> know, we currently call all sorts of internal "package-menu--*" >> functions). > > While the previous two sound "clear enough", this one has many > more options. One possibility is to provide a `package-list' function > which returns all known packages. Then you can use the (new) > package-desc-dir to know if it's an installed packages or a package from > an archive, and package-desc-status to figure out if it's obsolete (tho > making this function return symbols rather than strings would be > preferable if used like this). That sound like a good idea. It's a simple API that would fit all our needs, and allow for much more cool tricks. >> Another point on the wishlist would be to control all the output of >> package.el, mostly to suppress all sorts of byte-compiler and autoload >> generation messages which are meaningless to the user, unless there is >> an error. > > I like for users to see the warnings, since it can give them a sense of > potential problems (e.g. if something is obsolete), and in the absence > of a maintainer (unmaintained packages are pretty much the rules rather > than the exception in Emacsland), it can be very useful: they may not be > able to fix it themselves, but at least they may bring it up so someone > else can fix it. Carton mostly targets developers for use in their packages. These have enough to do with warnings from their own packages, they can't care for others. On Github, many developers use it to run tests on Travis CI. In this case, the tons of output clutter the build log, and make it hard to see whats actually going on. > But having more control over this output (and prettifying it) would > indeed be very welcome. It is fairly intimidating/overwhelming as > it stands. > Maybe we could try and make it possible to redirect it to a particular > buffer, so you can later on clean it up before displaying it. That would be nice. For now, we are thinking about just spawning Emacs subprocesses to install packages, and catch and filter the output of that subprocesses. >> What languages do you use? They might probably have similar tools=E2=80= =A6 > > Agda, Coq, Haskell, C, Elisp? Can "cabal" install packages locally?