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 027F913827E for ; Mon, 9 Dec 2013 00:21:21 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 735FFE0AC5; Mon, 9 Dec 2013 00:21:10 +0000 (UTC) Received: from mail-ve0-f175.google.com (mail-ve0-f175.google.com [209.85.128.175]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 8A2D4E0AB7 for ; Mon, 9 Dec 2013 00:21:09 +0000 (UTC) Received: by mail-ve0-f175.google.com with SMTP id jx11so2986951veb.6 for ; Sun, 08 Dec 2013 16:21:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:content-type; bh=CajzCRIcZIqbzWFeh6+hEr/nEbRvnTY7/L7q5wL75xQ=; b=z/Cj/mwT/Q74+B20r295zqP5j/FTw6ZO2v56yw0JzgityX4F44w2XKt3i5LfR73C2x vMkqP9uoa1hA71Igj9aEJcjUPWUBeQaxPxCE08y2xJ531i67gHse1Z+Fn+2Hxg19tid/ nz6O1XEczIGkoz64PeLrRPw19VZqSwNmD9WHWWpSbt7vj/d9uoGnMC/yLjHTj95Kf2Au XejgyQp/hTHynCq5PPtjD80NSWuXjCxQF0qbgBvDxar7N3YIgHaipEMZYka8MEYNlj2T d7Ln4ZjKDA2xW/W5R+IQ+EavzILnWRhrd6J4DtzIuSDgNkYxn2ATePKkjzFMrgQzZOJU dvhw== 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 X-Received: by 10.58.146.71 with SMTP id ta7mr531701veb.23.1386548468681; Sun, 08 Dec 2013 16:21:08 -0800 (PST) Sender: freemanrich@gmail.com Received: by 10.52.112.99 with HTTP; Sun, 8 Dec 2013 16:21:08 -0800 (PST) In-Reply-To: <52A5076E.4070109@gentoo.org> References: <20131208175438.100112a0@TOMWIJ-GENTOO> <52A5076E.4070109@gentoo.org> Date: Sun, 8 Dec 2013 19:21:08 -0500 X-Google-Sender-Auth: Y92soMiqv5bepUQvP8YxEt8q4kE Message-ID: Subject: Re: [gentoo-dev] Dependencies default to accept any slot value acceptable (:*), can we default to :0 instead? From: Rich Freeman To: gentoo-dev Content-Type: text/plain; charset=ISO-8859-1 X-Archives-Salt: 0d7e06af-da1b-435a-ace2-36dd7ece7140 X-Archives-Hash: 7a05d820c5f94c26f69ac162912e91ca On Sun, Dec 8, 2013 at 6:57 PM, Patrick Lauer wrote: > On 12/09/2013 12:54 AM, Tom Wijsman wrote: >> >> One thing that directly comes to mind is that dependencies that have no >> SLOT="0" ebuild present would need us to manually specify a specific >> SLOT; given that this is a not so common situation, the amount of >> commits needed here is low. > > And now you make updating a lot more fun, because slotted packages need > to be explicitly changed if there's a new slot happening. Just to hide > your own laziness. Frankly, your tone is rude here. Don't personalize things. The goal is to eliminate non-value-added work. If a change makes work for others that should be pointed out. If a change saves somebody time, that isn't "laziness." Work isn't a virtue - accomplishing something is. Discuss the merits of the proposal, and don't debate the morals of the person making the proposal. Second, I'm not sure exactly what you're trying to say here. Slotted packages don't need to be changed under the proposed approach any more than they otherwise would. If you have SLOT=0 of libfoo and want to introduce SLOT=1 it is the same amount of work for the libfoo maintainer either way. The only difference is that if half the tree depends on libfoo and breaks with libfoo:1 then there are a bazillion failures all the sudden. If you meant that packages that depend on slotted packages need to be changed, then that isn't really correct either. If a package depends on libfoo:0 instead of libfoo:*, it will work just fine when libfoo:1 is introduced - it will just continue to pull in libfoo:0. Then over time maintainers can test and add an || dep for libfoo:1 and the package will work with either. The status quo requires the libfoo maintainers to do a ton of work to get everybody to change their deps before introducing a new slot. Either that or they do what everybody else apparently does and not use slots at all, just creating libfoo2. Well, if you can't reliably create new slots for dependencies, then what is the point of having a syntax for slot dependencies in the first place? On IRC there was some discussion and it may make sense to not make the default :0 (or :0=), but rather to just not have any default in a future EAPI - every single dependency line would therefore contain a slot. I'm not convinced wildcards should even be allowed - the whole point of introducing new slots is that the new version may not be compatible, so how can you say in advance that any slot is acceptable? If the new library is API-compatible then it should just be a new subslot in the same slot, and if it is ABI-compatible then it should be in the same subslot. The whole point of subslots is to handle packages that have API breaks, and I don't see how wildcards against future versions not even written yet can be appropriate there. The only thing that it does is saves maintainers the trouble of looking up what slots the package was actually tested against, which sounds a bit like a certain word that starts with l... :) Rich