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 69572138A1F for ; Thu, 7 Aug 2014 16:02:58 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id DC43EE083E; Thu, 7 Aug 2014 16:02:51 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id EF9E6E07D0 for ; Thu, 7 Aug 2014 16:02:50 +0000 (UTC) Received: from pomiot.lan (77-255-25-239.adsl.inetia.pl [77.255.25.239]) (using SSLv3 with cipher ECDHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id 1B91933FF3A; Thu, 7 Aug 2014 16:02:48 +0000 (UTC) Date: Thu, 7 Aug 2014 18:03:18 +0200 From: =?ISO-8859-2?B?TWljaGGzIEfzcm55?= To: Duncan <1i5t5.duncan@cox.net> Cc: gentoo-dev@lists.gentoo.org Subject: Re: [gentoo-dev] Re: Repoman check and QA policy for slot deps/operator Message-ID: <20140807180318.3702fc63@pomiot.lan> In-Reply-To: References: <20140807112443.2ed19939@pomiot.lan> Organization: Gentoo X-Mailer: Claws Mail 3.10.1 (GTK+ 2.24.24; x86_64-pc-linux-gnu) 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; micalg=pgp-sha512; boundary="Sig_/v4Kyh6l4fn/i1R6pLEyRMSK"; protocol="application/pgp-signature" X-Archives-Salt: 6180cce6-fc40-450f-b9f0-e94e2d347954 X-Archives-Hash: 3dc650062e6c5c7c4cbcafaaea775e87 --Sig_/v4Kyh6l4fn/i1R6pLEyRMSK Content-Type: text/plain; charset=ISO-8859-2 Content-Transfer-Encoding: quoted-printable Dnia 2014-08-07, o godz. 15:37:07 Duncan <1i5t5.duncan@cox.net> napisa=B3(a): > Micha=B3 G=F3rny posted on Thu, 07 Aug 2014 11:24:43 +0200 as excerpted: >=20 > > With the new policy, the simple form of dependencies: > >=20 > > dev-libs/foo > >=20 > > would be only allowed if dev-libs/foo has only one slot. > >=20 > > If the atom matches more than one slot of a package, one of the > > following forms would need to be used: > >=20 > > 1. dev-libs/bar:* -- if any version of bar is acceptable, > > and you can replace bar:1 with bar:2 without rebuilding, > >=20 > > 2. dev-libs/bar:=3D -- if any version of bar is acceptable, > > and you need to rebuild bar when changing slots (and subslots), > >=20 > > 3. dev-libs/bar:slot -- if a single slot of bar is acceptable, and you > > can change subslots without rebuilding, > >=20 > > 4. dev-libs/bar:slot=3D -- if a single slot of bar is acceptable, > > and you need subslot rebuilds, > >=20 > > 5. dev-libs/bar:slot/subslot -- if a single subslot of bar is > > acceptable, useful mostly for binary packages and pass-through virtuals. >=20 > I'm admittedly operating a bit out of my league here so feel free to=20 > ignore this if it's simply noise, but in the interest of a clearer policy= =20 > I'll take the risk of being stupid... >=20 > Perhaps this can't happen in practice, but there's an obviously missing=20 > permutation that for completeness (and to avoid questions like this),=20 > probably should have been covered with a notation such as ,= =20 > or perhaps : >=20 > 6. dev-libs/bar -- if any version of bar is acceptable, and you=20 > need to rebuild bar only when changing slots (but not subslots). >=20 > Can it happen? Covered if so? Long story short, PMS doesn't provide a way do this. I can't think of any use case for that, and I think that is one of the reasons no syntax for that was provided. Please note that slot operators :=3D and :* were initially designed to deal with slots alone. You could consider that a coincidence that there were added in the same EAPI as subslots which were invented much later and have a different origin. The slot operators were supposed to help dealing with 'completely' slotted packages, in which slots corresponded to library ABI versions. However, that required some effort to make different versions parallel- -installable. Therefore, subslots were added to allow getting some of the benefits of slotting without all the requirements (like parallel-installability). Subslots are rarely used on their own -- they are usually appended to the slot. Then, the :=3D and :* slot operators simply interpreter 'SLOT' as 'slot/subslot'. > Tho you did switch from dev-libs/foo in the initial statement to > dev-libs/bar in the list of permutations. Normally, I take that to imply= =20 > some relationship between foo and bar, thus the need for two labels=20 > instead of reusing the first, but if there is such a relationship here I= =20 > don't see it. I am certainly confused but is it because there such a=20 > relationship that I'm simply not seeing (that possibly eliminates my=20 > sixth permutation), or did you "switch horses in mid-stream", as the=20 > saying goes? dev-libs/foo has a single slot. dev-libs/bar has multiple slots. --=20 Best regards, Micha=B3 G=F3rny --Sig_/v4Kyh6l4fn/i1R6pLEyRMSK Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQJ8BAEBCgBmBQJT46NHXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2REJCMDdDQzRGMERBRDA2RUEwQUZFNDFC MDdBMUFFQUVGQjQ0NjRFAAoJELB6GurvtEZOCggQALfnc837seQkqIrTLuqpZdfg hQAmB6JMVmU7YJKe4UkUpOjg14fRQHD2+ile+LpPbba1mqvJuvKeNuayzj5TR2j/ IW4jWye0hn7Ix4DhGrohn0kHtEQd9S8Mh0hs499j8SF1qRbPu1HRHJp3+exA7ixl 9/H9s8Cx2ZloNNJWpuZN1Fa3i/35jrRedeQsR38x1gqvmERxzlDLbw6aTPnIb9Ao fkEFOwksm+TCLnnokRZZPQeE/mpwdzmQJFnfdDpG97qWeyOXhzjU3KOi/vf/nOrE TacRDy4mRbBDlYroeMTJeeisia8WL8XtV3i6c0+1D6GB+6FqJggegMJe+KzqE683 Uda8z3uAMKMXmhXSFuBnuALDHRhGhme0DBvMOapiryZpNnnm5K5ycj1vCY0O4lgK JABDojbRPHFtUVQpXuRYp8JYeUG2DEHqYIC0JR9JzO0SmPdN3+dYay0hISBFVrZ8 MCEcNHkSPKgIO/uB/DHCUvFCkwigBPEv+orJ6hicOaZK+QeTgW5Y2hbjkrN0EUMf 43zeDatyX+iNKUuFTrhTXfcR4dhXxFSVqiXc4JsJHq4L3445biNt2qQtBAmeQRbZ Sgim3aaSzXSbCwEMY8KuO2eehyZ5vpaqaIE+x0gcUJebhQD1kaiBpORgI/CH5mgW k1FnyXjXfZAHnpzaEr8T =RAsO -----END PGP SIGNATURE----- --Sig_/v4Kyh6l4fn/i1R6pLEyRMSK--