Return-Path: X-Original-To: apmail-streams-dev-archive@minotaur.apache.org Delivered-To: apmail-streams-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 4414F11A02 for ; Tue, 9 Sep 2014 16:11:45 +0000 (UTC) Received: (qmail 90877 invoked by uid 500); 9 Sep 2014 16:11:45 -0000 Delivered-To: apmail-streams-dev-archive@streams.apache.org Received: (qmail 90836 invoked by uid 500); 9 Sep 2014 16:11:45 -0000 Mailing-List: contact dev-help@streams.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@streams.incubator.apache.org Delivered-To: mailing list dev@streams.incubator.apache.org Received: (qmail 90824 invoked by uid 99); 9 Sep 2014 16:11:44 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Sep 2014 16:11:44 +0000 X-ASF-Spam-Status: No, hits=2.5 required=5.0 tests=FREEMAIL_REPLY,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of renatoj.marroquin@gmail.com designates 209.85.219.47 as permitted sender) Received: from [209.85.219.47] (HELO mail-oa0-f47.google.com) (209.85.219.47) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Sep 2014 16:11:17 +0000 Received: by mail-oa0-f47.google.com with SMTP id i7so12039027oag.6 for ; Tue, 09 Sep 2014 09:11:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=CzpRK0ui1XEhKKDHN5LmQuuCaKoWxYZV57xWSLNyQJs=; b=QLof8sNyuXQSHViK48vGLKYl9ZtPcnrrnkBLZi/IcM7I03YaPyGDBoiHaCIV2pTNYQ iCHw0jjsuLztNIpm2nPVmVPgwMu+yCbvnlk8fzg1kLft5qCtg68GCRxho3quWBHehu4O OTLWIM4XeSjRd5qSVpnrM4qGVaUdaEBXpZWE6rv6Z7jov2Du0hnrbQarX0Oi01aE1y/s /0gcMYIVtJpAKhByGHar2TX/CWk1YeInsfbbk9HeonDQCLgxQQrGJnatDikB75WnWHPo nf6UDxSmVHKtY90nGi7V3qo0MB7/6LJzSpZuAk/ZpFE3olWbERj048Yh9SM41rW7Bqfe UEYg== MIME-Version: 1.0 X-Received: by 10.182.200.166 with SMTP id jt6mr38909168obc.1.1410279075494; Tue, 09 Sep 2014 09:11:15 -0700 (PDT) Received: by 10.76.105.170 with HTTP; Tue, 9 Sep 2014 09:11:15 -0700 (PDT) Received: by 10.76.105.170 with HTTP; Tue, 9 Sep 2014 09:11:15 -0700 (PDT) In-Reply-To: References: Date: Tue, 9 Sep 2014 18:11:15 +0200 Message-ID: Subject: Re: Documentation & Testing From: =?UTF-8?Q?Renato_Marroqu=C3=ADn_Mogrovejo?= To: dev@streams.incubator.apache.org Content-Type: multipart/alternative; boundary=001a11c2cbd8543fda0502a42f2f X-Virus-Checked: Checked by ClamAV on apache.org --001a11c2cbd8543fda0502a42f2f Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi Ryan, I think it is better to have anything established first and then keep on improving the process because if not, then the project will just be full of discussions and not progress. Thanks and I will post anything through JIRA then :-) Renato M. On Sep 9, 2014 4:38 PM, "Ryan Ebanks" wrote: > Renato, > > I don't think we have really established a method for patching the websit= e. > That is something that we do need to discuss though, as we should be > generating documentation in the near term for the website. I think what y= ou > have proposed is great for making changes to it now. > > -Ryan Ebanks > > On Tue, Sep 9, 2014 at 6:50 AM, Renato Marroqu=C3=ADn Mogrovejo < > renatoj.marroquin@gmail.com> wrote: > > > Hi Ryan, > > > > The project really needs this. But how can we propose patches for the > > website? I remember I had some troubles in setting the project initiall= y, > > and found some problems with the website, and I wanted to change them, > but > > I didn't find an easy way of doing this other than opening a JIRA and > > posting a patch for the specific change. If everyone is ok with than, > then > > I will do that for fixing some errors :) > > > > > > Renato M. > > > > 2014-09-03 20:52 GMT+02:00 Ryan Ebanks : > > > > > Matt - Great suggestion. We should get this all documented and added > to > > > the webpage with a general 'how to contribute' along with guidelines. > > > > > > Steve - No testing should be 'testing just for the sake of having a > > test'. > > > There needs to be tests to verify that the logic in all contributed > code > > > is correct/works as expected. At a minimum all public > methods/functions > > > should have tests. I also agree we need a users guide written. The > > > documentation as a whole for this project is lacking, but I do feel > that > > we > > > will drastically be improving in this area shortly. > > > > > > -Ryan Ebanks > > > > > > > > > On Wed, Sep 3, 2014 at 11:31 AM, Steve Blackmon > > > wrote: > > > > > > > Samza has excellent developer guidelines we could use for > inspiration: > > > > > > > > http://samza.incubator.apache.org/contribute/rules.html > > > > http://samza.incubator.apache.org/contribute/coding-guide.html > > > > > > > > I am in favor of testing, but skeptical of testing just for the sak= e > > > > of having a test. How about someone take a shot at rules / coding > > > > guide for streams, and we can discuss and tweak those documents unt= il > > > > they have sufficient support? > > > > > > > > P.S. > > > > > > > > We need to provide helpful documentation for implementers as well a= s > > > > core developers. Personally I think this more important to increas= e > > > > interest and adoption. > > > > > > > > I've found Spark's Programming Guide well-structured and useful. > > > > > > > > http://spark.apache.org/docs/latest/programming-guide.html > > > > > > > > Steve Blackmon > > > > sblackmon@apache.org > > > > > > > > On Wed, Sep 3, 2014 at 8:41 AM, Matt Franklin < > > m.ben.franklin@gmail.com> > > > > wrote: > > > > > On the whole, I agree. I think it would be good to document this > on > > > the > > > > > website. When we do, let's be sure to describe the best way to us= e > > > GitHub > > > > > (personal fork, etc) and what the minimum bar for UNIT testing is > vs > > > > > INTEGRATION tests. > > > > > > > > > > > > > > > On Thu, Aug 28, 2014 at 4:09 PM, Ryan Ebanks > > > > > wrote: > > > > > > > > > >> Stanton, > > > > >> > > > > >> I am on board with all of those suggestions. I know it may take > > some > > > > time > > > > >> to implement all of them, > > > > >> but I agree we should start the discussion and start moving that > > > > direction. > > > > >> > > > > >> > > > > >> Hopefully the suggestions I proposed are just the first of many > > steps > > > to > > > > >> improving transparency > > > > >> and quality in this project. > > > > >> > > > > >> -Ryan Ebanks > > > > >> > > > > >> > > > > >> On Thu, Aug 28, 2014 at 3:54 PM, Stanton Sievers < > > ssievers@apache.org > > > > > > > > >> wrote: > > > > >> > > > > >> > Hey Ryan, > > > > >> > > > > > >> > I agree completely. I think there a few things that can be do= ne > > on > > > > top > > > > >> of > > > > >> > what you've proposed that can help make the need more > transparent. > > > > >> > > > > > >> > Using maven site, we should be able to publish JavaDoc so it i= s > > > > readily > > > > >> > available for everyone to review and consume. > > > > >> > > > > > >> > Again, using maven site, we should be able to publish code > > coverage > > > > >> > information to make it apparent where the gaps are and where > folks > > > > should > > > > >> > focus their efforts to fill the gap. > > > > >> > > > > > >> > I'm not sure if there's a dedicated process for publishing mav= en > > > site > > > > to > > > > >> an > > > > >> > Apache's project's site, but that would be a good place to sta= rt > > if > > > it > > > > >> > exists. > > > > >> > > > > > >> > Also, at one point CloudBees offered free pull request buildin= g > > for > > > > open > > > > >> > source projects on BuildHive. This would allow a one-off buil= d > to > > > be > > > > >> > executed and evaluated against the pull request. If that buil= d > > > > reported > > > > >> > code coverage information, it would help a reviewer establish > > > whether > > > > or > > > > >> > not the level of unit testing is adequate. Even publishing th= is > > > > >> > information as part of our own builds on builds.a.o would be > > useful. > > > > >> > > > > > >> > As a community we should have the discussion about the next > steps, > > > but > > > > >> I'm > > > > >> > hoping these options can get that conversation started. > > > > >> > > > > > >> > Thanks for bringing this up. > > > > >> > -Stanton > > > > >> > > > > > >> > > > > > >> > On Thu, Aug 28, 2014 at 4:18 PM, Ryan Ebanks < > > ryanebanks@gmail.com> > > > > >> wrote: > > > > >> > > > > > >> > > We need to do a better job of Documentation and Testing. Wa= y > > too > > > > many > > > > >> > pull > > > > >> > > requests are getting approved and merged in that contain no > > > > >> documentation > > > > >> > > and minimal or no testing. This needs to stop immediately. > > > > >> > > > > > > >> > > I know documentation and testing is time consuming and not > fun, > > > but > > > > we > > > > >> > > cannot push this off and hope someone will fix it the > future. I > > > am > > > > >> > > proposing the following minimal guidelines/rules for all > future > > > pull > > > > >> > > requests. > > > > >> > > > > > > >> > > *Documentation* > > > > >> > > 1.) All pull requests contain adequate java docs > > > > >> > > 2.) Java docs accurately reflect the code and are up to > date > > > > >> > > > > > > >> > > *Testing* > > > > >> > > 1.) Test must test more than 'does it throw an exception= '. > > > > (Most of > > > > >> > the > > > > >> > > serializers unit tests do exactly this) > > > > >> > > For newly added classes > > > > >> > > 1.) All classes have unit tests and integration test= s > > > (when > > > > >> > > necessary) or it is explicitly stated in the pull > > > request > > > > >> why > > > > >> > > that class can't/won't be tested. > > > > >> > > For modifications to existing classes > > > > >> > > 1.) Any method that you touch must have unit tests. > If > > > none > > > > >> > > currently exist you are responsible for creating the= m. > > > > >> > > > > > > >> > > If any of these extremely minimal requirements are not met, > your > > > > pull > > > > >> > > request will not be evaluated until it meets all of the > > > > requirements. > > > > >> > > *Anyone > > > > >> > > evaluating a pull request should verify these requirements > > before > > > > >> +1-ing > > > > >> > > the request. All apache committers should verify that these > > > > >> requirements > > > > >> > > are met before merging requests too. * > > > > >> > > > > > > >> > > These basic steps will drastically improve our code base, an= d > > make > > > > it > > > > >> > > easier for the project to gain new contributors. > > > > >> > > > > > > >> > > Sincerely, > > > > >> > > > > > > >> > > Ryan Ebanks > > > > >> > > > > > > >> > > > > > >> > > > > > > > > > > --001a11c2cbd8543fda0502a42f2f--