From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 3563B13877A for ; Mon, 4 Aug 2014 07:53:49 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 665ECE086F; Mon, 4 Aug 2014 07:53:44 +0000 (UTC) Received: from a1www.kph.uni-mainz.de (a1www.kph.uni-mainz.de [134.93.134.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 4F48CE086A for ; Mon, 4 Aug 2014 07:53:42 +0000 (UTC) Received: from a1i15.kph.uni-mainz.de (a1i15.kph.uni-mainz.de [134.93.134.92]) by a1www.kph.uni-mainz.de (8.14.7/8.14.7) with ESMTP id s747rcuP030436; Mon, 4 Aug 2014 09:53:38 +0200 Received: from a1i15.kph.uni-mainz.de (localhost [127.0.0.1]) by a1i15.kph.uni-mainz.de (8.14.8/8.14.2) with ESMTP id s747rbh0032280; Mon, 4 Aug 2014 09:53:37 +0200 Received: (from ulm@localhost) by a1i15.kph.uni-mainz.de (8.14.8/8.14.8/Submit) id s747rbXm032276; Mon, 4 Aug 2014 09:53:37 +0200 Message-ID: <21471.15361.590900.790004@a1i15.kph.uni-mainz.de> Date: Mon, 4 Aug 2014 09:53:37 +0200 To: =?iso-8859-2?Q?Micha=B3_G=F3rny?= Cc: gentoo-dev@lists.gentoo.org, pms-bugs@gentoo.org, dev-portage@gentoo.org Subject: Re: [gentoo-dev] Re: The meaning of || ( a:= b:= ) dependencies In-Reply-To: <20140804092642.77ebc2df@pomiot.lan> References: <20140804004450.5aa146ec@pomiot.lan> <21471.8946.528694.84451@a1i15.kph.uni-mainz.de> <20140804092642.77ebc2df@pomiot.lan> X-Mailer: VM 8.2.0b under 24.3.1 (x86_64-pc-linux-gnu) From: Ulrich Mueller Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Content-Type: multipart/signed; boundary="pgp+signed++seEyupKyE47l5w"; micalg=pgp-sha256; protocol="application/pgp-signature" X-Archives-Salt: f6af7671-cfc9-4c96-b4ad-ce526053a2ca X-Archives-Hash: c6f9685db61e8657f463855266dcfdfe This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --pgp+signed++seEyupKyE47l5w Content-Type: text/plain; charset=iso-8859-2 Content-Transfer-Encoding: quoted-printable >>>>> On Mon, 4 Aug 2014, Micha=B3 G=F3rny wrote: > Reasonable. However, as I see it, we'll end up having up to four > different operators: > - || that is deprecated yet everyone will still use it (like they don= 't > use :* right now), > - ||* that will be used scarcely, > - <<=3D that would be the preferred variant for compile-time switches= yet > many people will not use it because it has different characters tha= n > '||' [we could try maybe '||<' so that people will still see it as > replacement for '||'], > - ||=3D that most people would use forgetting about '<<=3D' [or '||<'= ]. No, we will have only two distinct operators, namely ||* and ||=3D. Alternatively, or in addition, || could be kept but would be identical to ||*. > So, banning '|| ( A:=3D B:=3D )' in a future EAPI sounds reasonable. What prevents us from banning it now, by adding a repoman check=3F The || ( A:=3D B:=3D ) construct would mean that you can switch from provider A to provider B and back to A. Nothing would prevent you from choosing a different slot in the second step, which renders the :=3D operator meaningless. > However, there's still the matter of setting current Portage behavior= > because I don't we should keep the non-predictable magic. > What should be the current behavior then=3F Should we assume that all= > '||' are not well-defined and need to be compile-switchable=3F Or try= to > invent heuristic like I suggested=3F The devmanual [1] is very clear about it. || ( ) is only allowed if the implementation can be switched at runtime: # * fnord is merged on a system which has foo and not bar installed. # foo is then unmerged, and bar is installed. fnord must continue to # work correctly. # * A binary package of fnord made on a system with foo and not bar # can be taken and installed on a system with bar and not foo. Ulrich [1] http://devmanual.gentoo.org/general-concepts/dependencies/index.htm= l --pgp+signed++seEyupKyE47l5w Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQEcBAEBCAAGBQJT3zv4AAoJEMMJBoUcYcJzaS0H/iUwoT9sc8kqggf7w+8ugtFb o7+OuwevR1eYnOcGhezca9O2ffi7m2UtwcLZv7LEilJyiRjuX6uwJVCLElu6Nx9O E1joYGioRqBPaXDlOPhDufeRhKcnrsgJsKkD5ITvDq3F+X9yZUUWHgzjfCGSG6re 8mvjkvOLNb/Y3LQDNgo/M59MdtitHc7rRwI1aIoujcGo4vTeKqmU8E4tgILWoqvE Qq94irPUVFKAoce3sypIxmOOJhwFb0lwNloEsYOQD4qeUim45M9ONKwx1mDe/piR /97iQKAjmA3+p1nFnsKcmCv9oAmwhMT2KZPVIkH3SbkZyqoFrY94pXmX1H6bWzY= =XSv8 -----END PGP SIGNATURE----- --pgp+signed++seEyupKyE47l5w--