Return-Path: X-Original-To: apmail-couchdb-dev-archive@www.apache.org Delivered-To: apmail-couchdb-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 B1F241880D for ; Wed, 16 Sep 2015 00:27:32 +0000 (UTC) Received: (qmail 46046 invoked by uid 500); 16 Sep 2015 00:27:32 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 45983 invoked by uid 500); 16 Sep 2015 00:27:32 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 45971 invoked by uid 99); 16 Sep 2015 00:27:32 -0000 Received: from Unknown (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 16 Sep 2015 00:27:32 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id A9863180981 for ; Wed, 16 Sep 2015 00:27:31 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 2.901 X-Spam-Level: ** X-Spam-Status: No, score=2.901 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=3, URIBL_BLOCKED=0.001] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-eu-west.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id 1L0BYGwtSJaU for ; Wed, 16 Sep 2015 00:27:17 +0000 (UTC) Received: from mail-ig0-f170.google.com (mail-ig0-f170.google.com [209.85.213.170]) by mx1-eu-west.apache.org (ASF Mail Server at mx1-eu-west.apache.org) with ESMTPS id E2E3420D30 for ; Wed, 16 Sep 2015 00:27:16 +0000 (UTC) Received: by igbkq10 with SMTP id kq10so25329281igb.0 for ; Tue, 15 Sep 2015 17:27:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=YQZlIRszFk8v0tVT/gH3WTV10iQR7ghv97Qabsg37bY=; b=SaPTos6jfRIOJ3miaFmyaQvXh1gIjf25ddEcGfVhm6hA2J8SCRso9K5YJ8FgPsV8ML jm4MyR0+Q55TCqINVwL11TqR2XGDaVHc+1VAAYQfRssyBILsSHDjZOLfS3xHwAOhjqcZ M7tRAeZAEGA+qAF+bHlwz/V04VkqOJKbx50TOoYodOV+oFp3eSP44zNOmE0AV5DBR9lx sJSnwT7dYuJicyeFi1cJOgmnekyiMg7WfZXAbvKM4/i8FATwe9WB/u6aPUFOLvaUwofL UmGShkRtJb3W8g5Qmt2wIM1L4Mux5mSmjoYijECehWU5LpDMhcCSub1iVoW/hXLGYVWz RG/A== X-Received: by 10.50.23.108 with SMTP id l12mr11291510igf.21.1442363229450; Tue, 15 Sep 2015 17:27:09 -0700 (PDT) MIME-Version: 1.0 Received: by 10.36.74.78 with HTTP; Tue, 15 Sep 2015 17:26:50 -0700 (PDT) In-Reply-To: References: From: Jason Smith Date: Wed, 16 Sep 2015 07:26:50 +0700 Message-ID: Subject: Re: A Plan: Remove pre-commit, jshint, code style requirements from couchdb-nano To: "dev@couchdb.apache.org" Content-Type: multipart/alternative; boundary=089e0149cbe8edbb18051fd25b4e --089e0149cbe8edbb18051fd25b4e Content-Type: text/plain; charset=UTF-8 Hi, Robert. I agree with everything you said. Furthermore, I would like to adopt the Fauxton style for the Nano project (and I propose that it extends to all JavaScript under the CouchDB umbrella). As a first step, I will simply remove the tests from pre-commit hooks. In the future, I would like to re-use or duplicate your CI tools for Nano. But first thing's first! I want to fix a couple of bugs and ship a release. On Wed, Sep 16, 2015 at 7:18 AM, Robert Kowalski wrote: > Hey there, > > just as a report how we are doing it with Fauxton: > > the Fauxton project also has a styleguide in order to make reviews and > reading code easier for everyone. At one point it turned out to reduce a > lot of work for the reviewers if we test automatically for the coding style > as part of our testsuite. > > We don't use commit hooks for it, but the CI will fail if the automatic > coding style check and also the testsuite was not successful. the style > check is runs before the unit tests run, which run before the integration > tests. Red tests (that include tests for style) are a no-go for a merge in > Fauxton. > > I don't think the checks must be enforced on a pre/post-commit-hook-level > but somewhere they should notify the proposer of the change to make the > live of the reviewer easier - in case you think code style is important for > your project. I also want to not that some sub projects of CouchDB have no > styleguide at all and that it can be a positive thing or a negative thing. > Having one worked out well for Fauxton. > > I also think that deploying with a red CI might be OK in exceptional cases, > but in these cases the deploying person should be aware why the test fails > in 100%, and know the reasons why it is not fixable right now. > > In the recent past I have seen people saying they would know why the > integration tests fails, delivering buggy releases. > > I think it is a small boundary and not everyone who says they know why the > tests fail is 100% sure why they really fail (and deploys broken releases > therefore). But I have worked with people that were so deep into the > testsuites and the project they maintained in the past that they were able > to predict that. > > In short I support whatever you decide for I just wanted to share my > experiences, maybe it helps :) > > On Tue, Sep 15, 2015 at 2:54 PM, Jason Smith > wrote: > > > Hi, Dale. > > > > On Tue, Sep 15, 2015 at 7:26 PM, Dale Harvey > wrote: > > > > > > > > I just wanted to clarify, are you speaking about removing as a > > "pre-commit > > > hook", or removing the requirements for those checks to pass before > > > merging? > > > > > > > I am speaking about removing the pre-commit hook only--the mechanical > thing > > that that runs automatically when one commits. > > > > The tests and checks would make brilliant push hooks, or perhaps Travis > > tests for pull requests. However they are a bit much as a *commit* hook. > > > > A separate conversation: should the tests pass for merging. I would say: > > yes if it's smart; no if it's dumb: they need not pass for merging, at > > least not automatically, mechanically. The reason is that we should merge > > pull requests liberally, accepting contributions from all, then commit on > > top of those to correct for style. I won't have some sort of angry > > Calvinist robot telling me I can't merge a pull request. (If we can be > > clever, for example to require all tests pass for the master branch but > not > > feature branches, then yes I would love that.) > > > --089e0149cbe8edbb18051fd25b4e--