From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 4BF181382C5 for ; Tue, 6 Mar 2018 13:54:02 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 92385E087E; Tue, 6 Mar 2018 13:53:56 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 465BEE0857 for ; Tue, 6 Mar 2018 13:53:56 +0000 (UTC) Received: from pomiot (d202-252.icpnet.pl [109.173.202.252]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id 69A94335C2F; Tue, 6 Mar 2018 13:53:54 +0000 (UTC) Message-ID: <1520344430.1429.11.camel@gentoo.org> Subject: Re: [gentoo-dev] Is removing old EAPIs worth the churn? From: =?UTF-8?Q?Micha=C5=82_G=C3=B3rny?= To: gentoo-dev@lists.gentoo.org Date: Tue, 06 Mar 2018 14:53:50 +0100 In-Reply-To: References: Organization: Gentoo Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.24.6 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-Transfer-Encoding: 8bit X-Archives-Salt: 9ff3939b-c66e-48b5-996a-210ab87c1c2b X-Archives-Hash: 183d823304a3c847652a910f5cd452d6 W dniu pon, 05.03.2018 o godzinie 17∶52 -0800, użytkownik Matt Turner napisał: > EAPI 2 removal bug: https://bugs.gentoo.org/648050 > > It seems like tons of churn to update old stable ebuilds to a new > EAPI, just for its own sake. Take https://bugs.gentoo.org/648154 for > example. New ebuild added with EAPI 6 bumped from EAPI 2. Otherwise > functionally identical. Now asking arch teams to retest and > restabilize. Multiply by 100 or more. > > In the end we might get to delete some code from portage or an eclass? > Does this seem worth it? Removing any code from package managers is unlikely, so that is not an argument. Removing code from eclasses is actually beneficial. Please remember that EAPI changes are not isolated to the PMS, and eclasses also use them to kill deprecated features and make other breaking changes. Both PMS and eclasses add new features in new EAPIs. Others have already bought some examples. To examples others have already mentioned you could add new econf options [1]. As a result, bumping EAPI frequently *improves* the quality of the package and sometimes fixes bugs (reported or unreported). Most importantly, killing old EAPIs makes Gentoo easier for contributors. You may think it's normal to expect Gentoo developers to know 7 EAPIs and the differences between them. It might be normal for people who are around long enough to see most of them. But e.g. in proxy-maint we don't want to teach people about 7 EAPIs if only 1 or 2 of them are really relevant to what they're doing. Finally, old EAPIs are simply more prone to mistakes. When the majority of 'current' Gentoo packages, i.e. the packages Gentoo developers usually touch, use new EAPIs, it is *really easy* to miss that some old package is using an ancient EAPI and start scratching your head why something does not work. Killing old EAPIs proactively -- like many other proactive efforts -- has the advantage of making the work of others easier. If I end up having to fix a dozen old packages because of some reverse dependency, I'd really find it preferable that someone already did the EAPI bump for me and I wouldn't have to focus at the same time on fixing some issue, bumping EAPI, fixing tests and doing all the other long-overdue maintenance tasks. [1]:https://dev.gentoo.org/~ulm/pms/head/pms.html#x1-13700012.3.8 -- Best regards, Michał Górny