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 9165C1382C5 for ; Thu, 17 May 2018 16:16:50 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 3EB2CE0883; Thu, 17 May 2018 16:16:44 +0000 (UTC) Received: from mail-pg0-f52.google.com (mail-pg0-f52.google.com [74.125.83.52]) (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 D1F6CE0877 for ; Thu, 17 May 2018 16:16:43 +0000 (UTC) Received: by mail-pg0-f52.google.com with SMTP id w4-v6so2035130pgq.8 for ; Thu, 17 May 2018 09:16:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=M6FaBhDZMr/bqwlV59T6oZC6MIn0XArTHllQj4IO7ro=; b=Sz0YL08uzBmMUz747jULIbjiGTk5OduJwffdy8rYHpfVV002rOYI+DUuCrgY8P/QnW FNyIN6qSlxuBV05O7ONI4mXIllo1oUOV9zXmxPs2afAwnGsjz4mm4nWWx+prCjqSuJAk 1vSXkORaI/VRC+MBizsTD2RFnDHt85CXXZeR3MIdVAl+hUgMOZWXFxCBWzjVm1nV+i5R uk8Nw5ZmWrtmErD95oU9NNuh1PSRvAblYfaDcGXFa1/PlZray0K4TMQEhD+Mgr4MMLSv ndF55yWqsK1AsjHwwDeAU4zDA/ptyjNhuDTZDUmkk5LnJXUp4AADh1L9DXJjyAQjPBTU Rp6w== X-Gm-Message-State: ALKqPwcXmOsnJ+AnbkZAOjPJLHXRYO39GOtgjHaVZ/S5RHgxkTeTIUXJ kMJuvivvGKU13IWIYbaLkvwr43xBVTpNogM0nSyu1A== X-Google-Smtp-Source: AB8JxZpy672B9mr5Wtu8499MyxZ10oQLBU6fwaL+xW5OEgfC0LHYOFeiyvySUR+CSMEHCw5XXmvOAELae5u1awpk5oM= X-Received: by 2002:a62:2197:: with SMTP id o23-v6mr5785009pfj.202.1526573802222; Thu, 17 May 2018 09:16:42 -0700 (PDT) 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 References: <2532421.f3YmpD0exa@gump> <1526456310.2517.15.camel@gentoo.org> <1788997.QyjqdLkaAm@falbala> In-Reply-To: <1788997.QyjqdLkaAm@falbala> From: Rich Freeman Date: Thu, 17 May 2018 12:16:30 -0400 Message-ID: Subject: Re: [gentoo-dev] [RFC] multiversion ebuilds To: gentoo-dev Content-Type: text/plain; charset="UTF-8" X-Archives-Salt: 707ee125-1580-4bac-be11-fe542e635c59 X-Archives-Hash: f129f36cb1b8beb6324868870113bbeb On Thu, May 17, 2018 at 11:44 AM Gerion Entrup wrote: > The VERSIONS approach does not break the old mechanism. So if a patch > needs to be applied, the multiversion ebuild (that contains other versions > as well, say foobar.ebuild with VERSIONS="1.0 1.1 1.2") can just be copied, > renamed with the revbump number (to foobar-1.0-r1.ebuild) and completed > with the apply line. Once the old versions should be deleted the VERSIONS > variable can be adjusted (to VERSIONS="1.1 1.2"). Sure, but now you're back to single-version ebuilds except that you have to stick the version inside the ebuild instead of just in the filename. When would you actually get any of the code-sharing benefits of multi-version ebuilds? If you fork them anytime there is a revbump then to actually share code you'd need the ebuilds for both versions to be issued at the same time and have near-identical code. How often does that happen? I think in practice this just makes things more complicated. And this problem isn't just limited to keywording. If you don't want to make retroactive changes to released packages then you need to make all code changes conditional on version, which makes the ebuild a rat's nest of conditionals. I could really only see something like this working if the entire Gentoo repo were release-based, because then you'd tag a release, and then you can modify all the code you want in-place because it wouldn't affect anything in production. Then you do a round of QA and issue a new release. Since Gentoo's QA operates at the package-version level you really need to make your changes in new package-versions (including ebuild revision numbers). -- Rich