From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Jonas Bernoulli Newsgroups: gmane.emacs.devel Subject: Re: library dependencies and unit/integration testing Date: Tue, 2 Mar 2010 16:25:49 +0100 Message-ID: <201bac3a1003020725g5fb4371ehd9cb884e1dea2015@mail.gmail.com> References: <87pr3oosk6.fsf@lifelogs.com> <87zl2qoo1u.fsf@lifelogs.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Trace: dough.gmane.org 1267543639 30377 80.91.229.12 (2 Mar 2010 15:27:19 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 2 Mar 2010 15:27:19 +0000 (UTC) Cc: emacs-devel@gnu.org To: Ted Zlatanov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Mar 02 16:27:13 2010 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.69) (envelope-from ) id 1NmU08-0006Wq-J4 for ged-emacs-devel@m.gmane.org; Tue, 02 Mar 2010 16:27:12 +0100 Original-Received: from localhost ([127.0.0.1]:33060 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NmU08-00070S-0O for ged-emacs-devel@m.gmane.org; Tue, 02 Mar 2010 10:27:12 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NmTzM-0006Zr-JS for emacs-devel@gnu.org; Tue, 02 Mar 2010 10:26:24 -0500 Original-Received: from [140.186.70.92] (port=43903 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NmTzL-0006Yl-BN for emacs-devel@gnu.org; Tue, 02 Mar 2010 10:26:23 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NmTzJ-0005Pp-82 for emacs-devel@gnu.org; Tue, 02 Mar 2010 10:26:23 -0500 Original-Received: from ey-out-1920.google.com ([74.125.78.145]:59268) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NmTzJ-0005Pi-23 for emacs-devel@gnu.org; Tue, 02 Mar 2010 10:26:21 -0500 Original-Received: by ey-out-1920.google.com with SMTP id 26so104776eyw.34 for ; Tue, 02 Mar 2010 07:26:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:from:date:x-google-sender-auth:message-id:subject:to:cc :content-type; bh=h/H7wyA8hehUxmGF9FQM7HvdIMFtD8SyA69HN/WdMXY=; b=R3YWOnpJhtbGBxJG/teCqSASTQpBopNI6swUcrpVYw7DkXrxo1a9RV5i0rZJ805gsz 84yWzcKgorWZLDG+wCpV2OP0uzLcB+J71uN5Cw2gH/HjfHMWMccWASmeqeQ8H1UOCBxE VrQt9hEmO0QCYP4ciY6qOkHg/5TWODuns+HUo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; b=vHDm0/I+QlaU1gTrmPofInyfnJCML2ri0/ehgMfCfjQhNHKYJyCOELrFXSi3sn6BFv PkxjrG+UCsABD10VMPmWYowmUGx9lu+iilpRfZM6lYCvdRt9spgVr6xkNlC8WIg37Hmw 4OVwXTQM2sEK16+MBSeCefB7A1snSaxz+WcDc= Original-Received: by 10.216.93.17 with SMTP id k17mr3943173wef.31.1267543580078; Tue, 02 Mar 2010 07:26:20 -0800 (PST) In-Reply-To: <87zl2qoo1u.fsf@lifelogs.com> X-Google-Sender-Auth: 6eb404a66fc0624d X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) 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:121544 Archived-At: 2010/3/2 Ted Zlatanov : > Tom> ;;; Package-Requires: ((ruby-mode "1.0") (inf-ruby "2.0")) > > Jonas thinks this is best left outside the package. I disagree > slightly: I think a compromise is best, where the package author can > specify the dependencies but the repository maintainer can override > them. Since Emacs doesn't provide any of these facilities by > convention, perhaps it's time to set them up now. This was a misunderstanding. I am all for package maintainers specifying which versions of the dependencies are required. I was talking about the difficulties of knowing if library X is at version Y just because the header of library X (!!!) says the version of itself is Y. Sometimes (more like: commonly) multiple revisions are released under the same "version". This is not so much a problem if we agree that the revision where a particular version string first appeared IS that version. However if you do not have the full history available it is not possible to determine when a version string first appeared. So THIS should be done on the mirror/elpa because the user simply can't. It really is a detail. Maybe not unimportant but the other question is more importent now. Should authors specify what versions of dependencies are required? I would say: definitely yet (but they should not be forced to do it). > I was thinking of using the emacs interpreter in batch mode to run only > a few tests in series, isolated from the testing agent in a whole new > process. For the majority of libraries that's enough. Still you would have to do it using a user with very restricted privileges. -- Jonas