Return-Path: X-Original-To: apmail-accumulo-dev-archive@www.apache.org Delivered-To: apmail-accumulo-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id BB33D11A0C for ; Thu, 19 Jun 2014 15:39:17 +0000 (UTC) Received: (qmail 43594 invoked by uid 500); 19 Jun 2014 15:39:17 -0000 Delivered-To: apmail-accumulo-dev-archive@accumulo.apache.org Received: (qmail 43554 invoked by uid 500); 19 Jun 2014 15:39:17 -0000 Mailing-List: contact dev-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list dev@accumulo.apache.org Received: (qmail 43543 invoked by uid 99); 19 Jun 2014 15:39:17 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 19 Jun 2014 15:39:17 +0000 X-ASF-Spam-Status: No, hits=2.2 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy includes SPF record at spf.trusted-forwarder.org) Received: from [209.85.192.48] (HELO mail-qg0-f48.google.com) (209.85.192.48) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 19 Jun 2014 15:39:13 +0000 Received: by mail-qg0-f48.google.com with SMTP id q108so2272669qgd.35 for ; Thu, 19 Jun 2014 08:38:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:content-type; bh=/YZrq7DfKFpttDMNUypTVe7AeURE3ExOPpb5E/EzSjM=; b=Q94/2UZSlfKjynR/fGeQxF/Wipz/fspnhWQF07/Y6Xr7ztu1IwoTKjfhFsxbBZA8qV ZgJgdpYYURmw58E4gAe2uRiDdd3E1WMswK+Y3w/zQ7lHhGxj52i/iG+0L/e4TujTqWbS zxfaSXAdPDVn4aY9SaqTVNPBzNGAwnBth1glD8zpLkbn6iNQ17pmbT8Od7Bqi0xIrbu4 VyMqZCi5pIieLGP1ejIZPu/TAhcPoPz726Duryp5v7l1MqxlFJ6pGLMP97cEjMx4sRBo CkwNE4SxlUhel5/KwFFO/71LfIVzk4wkE8m+/NSxwWPLHEqoLW32k2rE2QsbCkPh2mZe 4IXQ== X-Gm-Message-State: ALoCoQk7pCOmlDFH2rzAbsRAyPPW5/ylKpETd1g3aAKSh6NiJ3RdawKr7jOGKcnjyzRJN1ulL2kY X-Received: by 10.140.31.131 with SMTP id f3mr7489520qgf.59.1403192332443; Thu, 19 Jun 2014 08:38:52 -0700 (PDT) MIME-Version: 1.0 Received: by 10.229.5.72 with HTTP; Thu, 19 Jun 2014 08:38:32 -0700 (PDT) In-Reply-To: References: <53A0AC38.5090006@gmail.com> From: Bill Havanki Date: Thu, 19 Jun 2014 11:38:32 -0400 Message-ID: Subject: Re: moving rat to a profile? To: Accumulo Dev List Content-Type: multipart/alternative; boundary=001a113a96cc87005204fc322c69 X-Virus-Checked: Checked by ClamAV on apache.org --001a113a96cc87005204fc322c69 Content-Type: text/plain; charset=UTF-8 Ooh, had another thought. We can probably make the rat plugin run under a pre-commit hook [1]. That way, while you're actively developing, the rat plugin need not get in the way, but it still serves as a gatekeeper before you can commit. Git also allows for hooks around git am, so committers can invoke rat then to ensure contributed patches have licenses. That would be useful in case a contributor never commits locally, for example (or disables the pre-commit hook locally :) ). So, specifically, elements for this option: * by default, either do not run rat or run it with ignoreErrors=true * set pre-commit hook to run rat:check and verify * set pre-applypatch hook to also run rat:check and verify [1] http://git-scm.com/book/en/Customizing-Git-Git-Hooks On Tue, Jun 17, 2014 at 5:11 PM, Alex Moundalexis wrote: > I like this plan. > > * doesn't discourage new contributors > * provides information for those who want to dig deeper > > On Tue, Jun 17, 2014 at 5:04 PM, Bill Havanki > wrote: > > > It seems like a middle way would be: > > > > * always run the rat plugin > > * configure it by default with ignoreErrors=true > > * let committers / Jenkins / release managers et al. explicitly set > > rat.ignoreErrors=false (in MAVEN_OPTS or wherever) > > > > By default, the plugin will warn about files lacking a license, but will > > continue the build. Contributors are exposed to the check but not > > constrained by it. Example: > > > > --- > > [INFO] Rat check: Summary of files. Unapproved: 1 unknown: 1 generated: 0 > > approved: 187 licence. > > [WARNING] Rat check: 1 files with unapproved licenses. See RAT report in: > > /Users/bhavanki/dev/accumulo/server/base/target/rat.txt > > --- > > > > Any entity that should enforce licenses then needs to set the > ignoreErrors > > flag to false. This can be part of committer onboarding. > > > > Bill > > > > > > On Tue, Jun 17, 2014 at 4:59 PM, Josh Elser > wrote: > > > > > > > > > > > On 6/17/14, 1:47 PM, Alex Moundalexis wrote: > > > > > >> This kind of response is hardly conducive to prospective contributors. > > >> > > >> We should consider ourselves lucky whenever a contributor provides a > > >> patch, > > >> let alone runs a build. Expecting a new contributor be fully aware of > > the > > >> Apache licensing details isn't realistic, much less being aware of the > > >> arguments concerning Rat; if the ignoreErrors argument is TheWay, it > > ought > > >> to be mentioned prominently in the source documentation [1], but I > don't > > >> think that's correct either... > > >> > > >> I don't want to encourage contributors to skip the build. I want > > >> contributors to be aware of the licensing requirements, but not at the > > >> expense of providing otherwise-viable patches. I'd recommend relaxing > > the > > >> Rat checks for contributors, and making it a required part of the > > profile > > >> for automated Jenkins builds and during the release process. > > >> > > >> The onus should be on the committers to ensure that all of the > licensing > > >> is > > >> in place before the release, but preferably long before that point by > > >> guiding the contributor to make the necessary license additions before > > the > > >> commit. > > >> > > > > > > This is an important thing to remember. The point of shepherding > > > contributors is to eventually get them to committer status, at which > > point > > > they'll be personally responsible for these things. While we definitely > > > don't want to be to abrasive initially that they get fed up and go > away, > > we > > > can't fully insulate from the necessary either. > > > > > > > > > > > >> I've been told to correct whitespace at the end of a line before and > to > > >> re-submit a patch, seems trivial to address missing licensing files in > > the > > >> same way. > > >> > > >> [1] https://accumulo.apache.org/source.html > > >> > > >> > > > > > > -- > > // Bill Havanki > > // Solutions Architect, Cloudera Govt Solutions > > // 443.686.9283 > > > -- // Bill Havanki // Solutions Architect, Cloudera Govt Solutions // 443.686.9283 --001a113a96cc87005204fc322c69--