From owner-freebsd-ports@freebsd.org Mon Jun 27 15:22:54 2016 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 206EDB84A57 for ; Mon, 27 Jun 2016 15:22:54 +0000 (UTC) (envelope-from koobs.freebsd@gmail.com) Received: from mail-pa0-x22b.google.com (mail-pa0-x22b.google.com [IPv6:2607:f8b0:400e:c03::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DC07526FB; Mon, 27 Jun 2016 15:22:53 +0000 (UTC) (envelope-from koobs.freebsd@gmail.com) Received: by mail-pa0-x22b.google.com with SMTP id b13so60091168pat.0; Mon, 27 Jun 2016 08:22:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:reply-to:subject:references:to:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=l8/6GcLIo5mT6suwAPviunnmGY/X0u0CbR1ZjvDJGYs=; b=UUF6HrJ1/GOi6fiylyG/24HzlLAsaBcvxFF1JwCsRor7mEMaMNoreBww48d6raTh+i AVqA6Uig+FO669M0t4/bSC0T2SOaLhAcMhstlOcI8+eO75H7+ZUJMTLxU4G4taWTzDI5 skJKNWCebXegizoGhRHDNb49TZQnCp0KQJSWSZSdph9FJ+GgFctwO8kKwJODCVw3T+DC WTbkS4OYOeUijaI4AxsKjVKFwVApyvF2GwgIz3eb9ldX1U8qgt3M+qKjfOh7uNuZKw+6 cLXY3qHD3cUDyRa4SxlFq0tSGPWgL2dNuHUK3BQTCIZtbsDK8Q5FEjv9lnz5jBbnoI5d S0GA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:reply-to:subject:references:to:cc:from :message-id:date:user-agent:mime-version:in-reply-to :content-transfer-encoding; bh=l8/6GcLIo5mT6suwAPviunnmGY/X0u0CbR1ZjvDJGYs=; b=cSULJSmqH9T5leOabQP2yCskIfowHp+yCVuHt+SKI8b9sMTlKrEhRJc3k+5FinkvBN SaX15nT/7hOfqZtuP4RBFwcX8NmvDGtBbfUhd3BMCuJR19PAhyKQ8/vPfzB+SCQXoDPZ Rsd0uJmJdoyZqvIZQI3M6jKcQan7vhEMoVA0hf9rN1Svwb6CPaNOGBtn5imnrMQ8DlK3 qUCQelcKsYMoA25++bFfyghVGC8OSy2+xMbfnBTUxNHln5ffiWeYU+ogf/VNpmFMpVQH 1hpk6z5zfDUBO228bK0GbQK5dZ7mohTrFQkPKU6vZmC2Sw+4ZyuC488u6u88ipeVOW9d MFFw== X-Gm-Message-State: ALyK8tLuO8GBb1ILkUzObRiywjEoA0z12hABrPAAFM7kyDhSznSPFfHAbThtvwWN4ekW3w== X-Received: by 10.66.89.34 with SMTP id bl2mr35206671pab.80.1467040973105; Mon, 27 Jun 2016 08:22:53 -0700 (PDT) Received: from ?IPv6:2001:44b8:31ae:7b01:6866:ec26:8c89:33cf? (2001-44b8-31ae-7b01-6866-ec26-8c89-33cf.static.ipv6.internode.on.net. [2001:44b8:31ae:7b01:6866:ec26:8c89:33cf]) by smtp.gmail.com with ESMTPSA id m8sm474603pfi.27.2016.06.27.08.22.49 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 27 Jun 2016 08:22:52 -0700 (PDT) Sender: Kubilay Kocak Reply-To: koobs@FreeBSD.org Subject: Re: blanket portmgr approval vs. non-fixing changes References: <201606261724.u5QHOLdG081392@repo.freebsd.org> <57701AEB.1050001@tu-dortmund.de> <5770A392.6010605@tu-dortmund.de> <84e4fcf5-7b99-1cc6-e6bd-d3c594a5d102@marino.st> <91BC5F8F9FDB9246529D0693@atuin.in.mat.cc> <5770EAD2.4060302@tu-dortmund.de> <2A4F1FFE-8B27-4569-8CCA-D498B5235D18@adamw.org> To: Adam Weinberger , araujo@freebsd.org Cc: Matthias Andree , Mathieu Arnold , marino@freebsd.org, Sunpoet Po-Chuan Hsieh , ports-committers , FreeBSD Ports Management Team , freebsd-ports From: Kubilay Kocak Message-ID: <9364c255-9733-b1a0-68a1-a058ca78d95e@FreeBSD.org> Date: Tue, 28 Jun 2016 01:22:45 +1000 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Thunderbird/47.0 MIME-Version: 1.0 In-Reply-To: <2A4F1FFE-8B27-4569-8CCA-D498B5235D18@adamw.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jun 2016 15:22:54 -0000 On 28/06/2016 12:25 AM, Adam Weinberger wrote: >> On 27 Jun, 2016, at 3:27, Marcelo Araujo >> wrote: >> >> >> >> 2016-06-27 16:58 GMT+08:00 Matthias Andree >> : Am 27.06.2016 um 10:16 schrieb >> Mathieu Arnold: >>> >>> >>> +--On 27 juin 2016 16:10:36 +0800 Marcelo Araujo >>> wrote: | 2016-06-27 16:02 GMT+08:00 >>> Mathieu Arnold : |> | Read here for reference: >>> |> | |> >>> https://www.freebsd.org/doc/en/books/porters-handbook/makefile-maintainer >>> >>> |> | .html >>> |> |> That pages says, exactly the opposite of what you are >>> trying to says: |> | | No it doesn't! | | And this is the normal >>> workflow: | 1) Port has a maintainer, and it needs update. | 2) >>> Open a PR with the patch. | 3) After 2 weeks, and with timeout; >>> anybody can commit it. | | | And about the ownership and belong >>> to the community, I do believe in that, | that is the basic in a >>> legal point of view. >>> >>> That page says that the maintainer has to be consulted, except >>> for changes covered by the blanket approval, where the change can >>> be committed immediately. >>> >>> In this case, Sunpoet had every right to commit the thing he did >>> without asking or notifying the maintainer. >> >> >> TL;DR given at the very end. >> >> >> 1. Given the portmgr@ rules, that is our current policy, that >> portmgr@ as the overseers of the ports system have delegated, by >> the blanket approval, part of their ultimate responsibility to the >> public. >> >> 2. What I was meaning to state was that (and I'll not pick at the >> kind soul who has modernized the port) we should only apply the >> blanket approval if ports have fallen into disrepair. >> >> >> 2b. This was not the case with db6, the port wasn't known broken to >> me, so why do we permit and encourage going the fast path for >> changes that do not /repair/ a port (for instance, if it's not >> building, to fix misspellings), and I'm surprised because some two >> months ago, it has already gone through a modernization round after >> gahr's PR, >> , that >> also combined a feature addition and required a bit more work to >> get right, see changesets 415741 and 415743. >> >> >> 3. What would have been bad about filing a PR in this case? >> >> The argument "maintainers aren't doing it" is covered by the >> maintainer timeout. Anything that does not need the fast path >> should go through some form of review, most naturally through a PR >> filed to the port's maintainer. >> >> >> 4. Do we need to tighten up the set of required tests a committed >> does before committing non-maintainer updates? >> >> I'm scratching my head over this one since the failure in r417590 >> that got remedied in r417595 was rather peculiar, and I'm not sure >> if anyone, including myself, would have figured that out. It might >> have slipped through the cracks even if I'd reviewed it. >> >> 4b. It's probably better to extend the committer's guide and/or >> porter's handbook and have a list of test recommendations where we >> list things that trigger a certain test requirement. I. e. things >> to test IN ADDITION to the usual "poudriere testport" or "make >> DEVELOPER=yes clean all check-plist package" and portlint coverage. >> Meaning that if someone tweaks any of the WRK* and >> *DIR/*SRC-related variables, "also test 'make clean extract >> do-patch makepatch' on a copy of the port directory" or >> thereabouts. >> >> mat@ thanks for all the explanation and time. >> >> Unfortunately, I still make things a bit manual at my side, but >> usually my testbed is: 1) Portlint. 2) Make and likes on i386 and >> amd64(clean vm). >> >> I think, include more information about test recommendations is >> always good. >> >> >> >> There seem to be at least two distinct camps, in one camp, >> maintainers go along Marcelo's and my trains of thought, in the >> other, maintainers cherish fast and low-ceremony progress, marino >> has argued along these lines, and some other portmgr@ members have >> pushed for progress in the past. >> >> I don't mean to bikeshed or split up our project here, just refine >> our existing policies. >> >> >> TL;DR: I propose: >> >> - the blanket approval should be tightened up a bit and encourage >> that non-trivial and non-urgent changes go through the PR and >> invoke mantainer timeout after the shortest possible period. >> >> Personally, I like the first option! And in addition, we have >> phabricator as an option too, at least for src, the reviews are >> made very quickly. So, could be defined a short timeout, at least >> for those that are active and would like to help make a review, >> seems something reasonable. >> >> Also I do understand about all the modernization and definitely we >> need it, maybe 2 days timeout is enough for an active maintainer to >> reply that he is busy or he is working on that. >> >> >> >> - we discuss about an assisting set of "change these variables >> foo.*regexp, and you also need to test 'make foo' and 'make bar'" >> rules in the form of a concise list. > > Maintainership too often means that change requests get ignored for > two weeks before they're committed. > > Aside from large, complex, interconnected systems, I think that we > should do away with ports maintainership entirely. Maintainership > serves absolutely no purpose that peer-review wouldn't do better. There's two senses of 'ownership' that are often conflated, or at least almost never made explicit. The kind we want, more of, and would hate to lose: - responsibility, accountability, pride in 'looking after' something The other we don't: - territorial, xenophobic (mine/yours, ours/theirs), hoarding, exclusive use Which one we have, get, or foster, has everything to do with how we teach people we do things around here, how clearly we articulate our goals and intentions, and nothing to do with MAINTAINER intrinsically. All: How did you feel the first time you saw your email on a maintainer line? That is priceless and shouldn't be confused with the 'bad' kind of ownership. > Any committer should be able to commit to any port. That used to be > what ports@FreeBSD.org meant, that it was being maintained by > everybody. But somehow, in the last few years that turned into a > message that it's being maintained by nobody, so now ports *have* to > be maintained by somebody, even if that person never touches it > again. > > # Adam > Having a discussion after an example of fallout (whether correct or not), is unfortunately, precisely the worst time (reactively) to be making well-informed, collaborative decisions. What we don't disagree on: - High quality changes, minimal user impact - Minimal latency and barriers to progress (not at the cost of quality) - Ways for contributors to specialise or take on greater responsibility if they want to and can. The above are *not* mutually exclusive goals, they do however require people to think beyond single priority solutions. Finally, if the question is: "How can we have all of them?", what are the possibilities? ./koobs