delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
DomainKey-Signature: | a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id |
:list-unsubscribe:list-subscribe:list-archive:list-post | |
:list-help:sender:date:from:reply-to:message-id:to:subject | |
:in-reply-to:references:mime-version:content-type | |
:content-transfer-encoding; q=dns; s=default; b=o0IVCG9abX5Rlcvv | |
P92AGVeM1crIVZlvPaVCR0JQe157ZhgMopphOQhVofzG13dIQC9pw/W8EfZQp5wr | |
sfbLDRAj4WivtSPm27zGGW1n5+HgaLzE+KDxOMpWIjs5DpdgIDN+CBm08fGb2mzG | |
s2A5EGKXFHdA6/d6+Ppw71zA434= | |
DKIM-Signature: | v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id |
:list-unsubscribe:list-subscribe:list-archive:list-post | |
:list-help:sender:date:from:reply-to:message-id:to:subject | |
:in-reply-to:references:mime-version:content-type | |
:content-transfer-encoding; s=default; bh=gRDO/OFlIrLM01/efN4bwt | |
LOp9I=; b=AYKC2ivCgXEBfeQHMd7pxhqMyuCfKyKYWVBIFG5K7ynd/dmE4mFuxu | |
dunBpYPgiOli6S78+iGn/rZ7XtOdfkTj6S7bsWLHS82DBMX/nyW4REUrHqCf3+6Q | |
UhUjHwb2xY4mouIPIrC7HYZM2vlKMQISgCpXF0N4VpfL4EleUJ5RY= | |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Id: | <cygwin.cygwin.com> |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sourceware.org/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
Authentication-Results: | sourceware.org; auth=none |
X-Virus-Found: | No |
X-Spam-SWARE-Status: | No, score=0.0 required=5.0 tests=BAYES_00,FREEMAIL_FROM,KAM_THEBAT,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=no version=3.3.2 spammy=terrible, HX-Priority:Normal, H*F:D*yandex.ru, H*M:yandex |
X-HELO: | forward105j.mail.yandex.net |
Authentication-Results: | smtp1p.mail.yandex.net; dkim=pass header.i=@yandex.ru |
Date: | Sat, 30 Sep 2017 14:23:14 +0300 |
From: | Andrey Repin <anrdaemon AT yandex DOT ru> |
Reply-To: | cygwin AT cygwin DOT com |
Message-ID: | <19010162357.20170930142314@yandex.ru> |
To: | Sam Edge <sam DOT edge AT gmx DOT com>, cygwin AT cygwin DOT com |
Subject: | Re: Dependency issues in setup.ini. |
In-Reply-To: | <171d601b-59c2-f186-5213-12c6b6f493cd@gmx.com> |
References: | <505405e4-5a2f-8d6b-f012-404bd7d69009 AT gmx DOT com> <216159991 DOT 20170930120008 AT yandex DOT ru> <171d601b-59c2-f186-5213-12c6b6f493cd AT gmx DOT com> |
MIME-Version: | 1.0 |
X-IsSubscribed: | yes |
Greetings, Sam Edge! >>> It's not production ready yet but it's already flagged up some issues. >>> For example we have lots of dependency loops in the 'requires' fields in >>> setup.ini - even to the point that some packages depend upon themselves! >> Dependency upon itself is curious, but other than that, this is a normal >> situation for a package manager. Some packages are split for easier >> maintenance of each, but are interlocked in their typical usage pattern. > Ah, okay. Fair enough. It can be difficult to keep things layered purely > up & down I know. More than that, naive assumption of no circular dependency is the most common cause for infinite recursions. > Although often it can be resolved by introducing a > third module that acts as the muxer between the other two to avoid cross > API dependencies. But that's a discussion for another mailing list. > But I'm also seeing loops deeper that X->Y->X. More like X->Y->Z->W->X. A list indexed by package name is necessary when you resolve package dependencies. Then you always know when to avoid dependency rescans. > (The self-dependency is cygwin-debuginfo by the way.) :) >>> And also we have some dependency omissions. For example, mintty doesn't >>> depend upon anything - it has no requires field. Surely, every binary >>> package should depend at least upon 'cygwin'? >> While this is "not good", this is also not particularly bad for packages in >> base - this group is always installed. > Indeed. However, while off label usage of Cygwin is anathema to me but > sometimes I wish 'base' wasn't quite so big and have to pare things down > a little once installed, e.g. as part of a makefile- and/or > Eclipse-based build tree in source code control.(Which was also one of > my motivations for the Python stuff.) Rational suggestions are always welcome, I suppose. While my own usage of Cygwin is prone to spread thin across all aspects of my daily work, I can see situations, where a much smaller subset of packages (let's name it "core" or something) would be beneficial. I.e. when packaging Cygwin as part of your own application. -- With best regards, Andrey Repin Saturday, September 30, 2017 14:16:20 Sorry for my terrible english... -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |