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 08F8B138A1F for ; Thu, 7 Aug 2014 09:32:22 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 06495E0961; Thu, 7 Aug 2014 09:32:16 +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 C5995E095C for ; Thu, 7 Aug 2014 09:32:13 +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 6EB3133FE39; Thu, 7 Aug 2014 09:24:12 +0000 (UTC) Date: Thu, 7 Aug 2014 11:24:43 +0200 From: =?ISO-8859-2?B?TWljaGGzIEfzcm55?= To: , Subject: [gentoo-dev] Repoman check and QA policy for slot deps/operator Message-ID: <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_/aiiCBCxH8/ZMcKWr=j50_+w"; protocol="application/pgp-signature" X-Archives-Salt: 5d901034-10d8-45d5-9cba-394cb183d028 X-Archives-Hash: ce471205faf7031e37cc580a145edd5c --Sig_/aiiCBCxH8/ZMcKWr=j50_+w Content-Type: text/plain; charset=ISO-8859-2 Content-Transfer-Encoding: quoted-printable Hello, all. Since the tree is still full of too broad dependencies and other mistakes, I would like to add a repoman check and a matching QA policy regarding how slots should be used in dependencies. The check would apply to EAPI 5 and newer ebuilds only. Considering the past uproar against having slotted dependencies against single-slot packages, it would apply only to dependencies that match more than one slot of a package. With the new policy, the simple form of dependencies: dev-libs/foo would be only allowed if dev-libs/foo has only one slot. If the atom matches more than one slot of a package, one of the following forms would need to be used: 1. dev-libs/bar:* -- if any version of bar is acceptable, and you can replace bar:1 with bar:2 without rebuilding, 2. dev-libs/bar:=3D -- if any version of bar is acceptable, and you need to rebuild bar when changing slots (and subslots), 3. dev-libs/bar:slot -- if a single slot of bar is acceptable, and you can change subslots without rebuilding, 4. dev-libs/bar:slot=3D -- if a single slot of bar is acceptable, and you need subslot rebuilds, 5. dev-libs/bar:slot/subslot -- if a single subslot of bar is acceptable, useful mostly for binary packages and pass-through virtuals. ...which means that the only 'new' requirement would be that ':*' operator becomes mandatory in favor of plain deps that have semi- -undefined behavior. It should be noted that the check uses complete dependency atom to count the number of slots. That is, a dependency alike: >=3Dx11-libs/gtk+-3.4 would match only one slot and cause no repoman warnings. This is mostly intended to keep the check simple and avoid false positives. If anyone wishes to test the current code, the last version of patch can be found at [1]. It will likely hit portage in -9999 as soon as dol-sen approves it. [1]:http://article.gmane.org/gmane.linux.gentoo.portage.devel/4369 --=20 Best regards, Micha=B3 G=F3rny --Sig_/aiiCBCxH8/ZMcKWr=j50_+w Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQJ8BAEBCgBmBQJT40XbXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2REJCMDdDQzRGMERBRDA2RUEwQUZFNDFC MDdBMUFFQUVGQjQ0NjRFAAoJELB6GurvtEZOXqoP/jZv8TGAH+quq260+Rct8Rk2 P1bGlQlLHQfOeMiGRk9jpOtNCPWnyLlyf8hlBcr0Xn9DWQsmhUD1GKRd1HOJX5D+ RFyJFM8wXmoN+ytUVI6Z+vo3OpSkLYhFPhQKsId029Iwvp1oHkYmu/u+KxNPlvqm LdBJaIyl7jHmFdZWv5hxerv8RK00jdQfSWTRLbcdoTxhEJERnVSEW4MlBPbCZAR9 QrCG9hWW1EZRIHJzMCfnNYnYfnHwrElNATyWRVkiw7G7RUcY+s5BUFagHFF8ASji NTgSqmMHa1UHu3vCBPaDanMDfI4vbSbjBeSrRBcYCyP0E8dgGjne45L7GUq08cXb w7UL0yK/LXGCm0UJH8eW+7jvuKI0AIlRHCQB3XEVyez9DVpjTWvj7dpBZuuycBit KzfTH3hyTtsbZmVQuM2x1UsfykVSY63qMnupbGjT7t0RMYLCjmj7CgZ3wzbrIpfa YhZMDjUB2Np2MN65PiYvmm23FB5lxVLI6lAll7TGI8A1f+eFyVIVnmlmNiCUvZr6 1eZHf3hgXQmgPVzvDdhSSAEBL3bEuljAjgJ0d0DE1q42Dw599cnfUUkHcJWCH02q d0RYJ49UmUwH7XjBYB6TvnlKw0T+jc5PdmjVup69FBif9RhaCIPsekDdJvETTKKu Bt5vMpS4IGTRXnvViOv9 =OeMs -----END PGP SIGNATURE----- --Sig_/aiiCBCxH8/ZMcKWr=j50_+w--