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 74F5A1392EF for ; Mon, 30 Jun 2014 11:30:33 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 5E88FE0923; Mon, 30 Jun 2014 11:30: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 62A03E08C7 for ; Mon, 30 Jun 2014 11:30:15 +0000 (UTC) Received: from 127.0.0.1 (rainbowwarrior.torservers.net [77.247.181.164]) (using TLSv1 with cipher ECDHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: hasufell) by smtp.gentoo.org (Postfix) with ESMTPSA id AFCF033FF04; Mon, 30 Jun 2014 11:30:11 +0000 (UTC) Message-ID: <53B14A33.7040108@gentoo.org> Date: Mon, 30 Jun 2014 11:29:55 +0000 From: hasufell 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 To: gentoo-dev@lists.gentoo.org CC: Rich Freeman Subject: Re: [gentoo-dev] package.mask vs ~arch References: <20140630040153.GA668@linux1> In-Reply-To: <20140630040153.GA668@linux1> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Archives-Salt: 93d2f842-1402-4e84-ab87-6c2da6596ab8 X-Archives-Hash: 8db828142c7b9d2d76eddfb21c844ade Rich Freeman:> On Sun, Jun 29, 2014 at 8:36 AM, hasufell wrote: >> This is still too vague for me. If it's expected to be short-term, then >> it can as well just land in ~arch. > > A package that hasn't been tested AT ALL doesn't belong in ~arch. Huh? That's exactly the place. However, if you mean "AT ALL" in the sense that no one ever tried to compile it, then the guy who comitted should not have commit rights. > Suppose the maintainer is unable to test some aspect of the package, > or any aspect of the package? Do we want it to break completely for > ~arch? In that event, nobody will run ~arch for that package, and > then it still isn't getting tested. In that event, you will get a bug report VERY soon. > I agree that masking for testing is like having a 3rd branch, but I'm > not convinced that this is a bad thing. I have to reiterate: * increases the workload, because we are effectively running 3 branches * decreases the amount of testing for that time period, because... it's masked * causes confusion (see this thread) * decreases the quality of our stable branch, because people suddenly expect the unstable branch to be ...stable and don't bother with filing stabilization requests anymore * makes the whole testing/stabilization iteration actually slower, possibly even causing unnecessary exposures to security issues * causes inconsistency, because not everyone actually agrees on the 3-branches concept and it was never actually decided to be one > Sure, it could go into an overlay, but for that matter so could all of ~arch. Not at all. I made a clear distinction for that. Overlays have some good use cases, but even those get abused and we end up with projects not caring to import ebuilds to the tree anymore. To make the situation even worse, a lot of people don't mask broken packages if they have ever been in ~arch, as if this is a one-way road from hardmask->keywordmask->stable. No, it isn't. > I guess the question is, what exactly are we trying to fix? Even if > occasionally a maintainer drops the ball and leaves something masked > for a year, how is that different from a maintainer dropping the ball > and not adding a new release to the main tree for a year? Would we be > better off if Docker 1 wasn't in the tree at all? If it happened to > have a known issue would ~arch users be better off if some other dev > came along and helpfully added it to the tree unmasked no realizing > that somebody else was already working on it? Trying to fix * workflow * user experience * quality of stable branch Inconsistent usage of hardmasks is only one problem here, but it is one. So, from my POV hardmasks are reasonable for these use cases: * package was imported to ~arch, turned out broken, bugs are difficult to fix, no improvement upstream * package has security issues, but we don't want it removed (happens a lot for games) * package is known to be broken, but we want it in the tree (like googleearth) * package is a library and is either known to or expected to break more than half of it's consumers The last 3 points can, depending on the actual situation, be a good use case for an overlay. Some already do it, including for non-trivial libraries. To make a blunt statement here: many commits in profiles/ cause trouble for the user in one way or another. Some people on the forums already told us they want to switch, because they are sick of dealing with world updates since they seem get more and more complicated. For multilib we have been abusing profiles/ a lot, since there is only one alternative way which is almost impossible to carry out given the large scale of these changes: a parallel branch which gets imported in one blow. Profile hackery has to get less. It's not improving user experience. Users are switching to ~arch, because people tell them on IRC and elsewhere that it's "almost stable" and that arch is too slow. That makes the situation even worse. In addition, we should make the most important arch testing points/techniques part of the quizzes and allow maintainers to carry out stabilization on major arches if they have access to them (that doesn't mean they have to, they can still request help from the dedicated arch teams). Having no clear release scheme can be neck-breaking for a project. Rolling release or not. But I doubt we will come to any conclusion here. This thread will get some bikeshed and if someone really cares, he will bring it up to the council which will basically say "we encourage foo, but allow bar as well and leave anything else up to the maintainer", neither deciding on a real 3rd branch, nor declining it (because if they would decide on a 3rd branch, they would actually have to come up with a PMS addition that is sane and not ambigous like hardmasks which are used for all random sorts of things... and don't tell me hardmask messages can be used as an API).