By the way, I also don't see the benefit of doing the transition piece by piece.
On Mon, 27 Feb 2017 at 22:21 Dawid Wysakowicz <wysakowicz.da...@gmail.com> wrote: > I agree with adopting a custom codestyle/checkstyle for flink, but as I > understood correctly most people agree there is no point of providing an > unenforced code style. > > 2017-02-27 22:04 GMT+01:00 Greg Hogan <c...@greghogan.com>: > > > There was also … > > > > - create a flink style (for example, leaving indentation as +1 tab rather > > than +2 spaces as in google's style) > > > > - create a flink style but optional and unenforced (but recommended for > > new contributions) > > > > Flink currently has a reasonably consistent code style. I expect that > > adopting a radically different code style module-by-module will also > result > > in contributions with a mix of old an new styles. If we’re not willing to > > re-style flink-core today, under what circumstances will this change? > With > > a punctuated refactoring there would be a singular event for developers > to > > remember (as with the initial commits). > > > > Greg > > > > > > > On Feb 27, 2017, at 3:40 PM, Dawid Wysakowicz < > > wysakowicz.da...@gmail.com> wrote: > > > > > > So to sum up all the comments so far we have two alternatives. > > > We either: > > > 1) introduce unified checkstyle (with enforcing) and corresponding code > > > style, both based on some established ones like google code style for > > java > > > [1] <https://github.com/google/google-java-format> and scalastyle for > > scala > > > [2] <http://www.scalastyle.org/> . We would introduce it module by > > module > > > for a longer period of time > > > or > > > 2) leave it as it is, and end this discussion for a longer (possibly > > > infinite :) ) period of time > > > > > > Not sure how we should proceed with the decision on it. Is it possible > to > > > do some voting or so? > > > > > > 2017-02-27 20:54 GMT+01:00 Stavros Kontopoulos < > st.kontopou...@gmail.com > > >: > > > > > >> +1 to provide and enforcing a unified code style for both java and > > scala. > > >> Unification should apply when it makes sense like comments though. > > >> > > >> Eventually code base should be re-factored. I would vote for the one > at > > a > > >> time module fix apporoach. > > >> Style guide should be part of any PR review. > > >> > > >> We could also have a look at the spark style guide: > > >> https://github.com/databricks/scala-style-guide > > >> > > >> The style code and general guidelines help keep code more readable and > > keep > > >> things simple > > >> with many contributors and different styles of code writing + language > > >> features. > > >> > > >> > > >> On Mon, Feb 27, 2017 at 8:01 PM, Stephan Ewen <se...@apache.org> > wrote: > > >> > > >>> I agree, reformatting 90% of the code base is tough. > > >>> > > >>> There are two main issues: > > >>> (1) Incompatible merges. This is hard, especially for the folks that > > >> have > > >>> to merge the pull requests ;-) > > >>> > > >>> (2) Author history: This is less of an issue, I think. "git log > > >>> <filename>" and "git show <revision> -- <filename>" will still work > and > > >> one > > >>> may have to go one commit back to find out why something was changed > > >>> > > >>> > > >>> What I could image is to do this incrementally. Define the code style > > in > > >>> "flink-parent" but do not activate it. > > >>> Then start with some projects (new projects, plus some others): > > >>> merge/reject PRs, reformat, activate code style. > > >>> > > >>> Piece by piece. This is realistically going to take a long time until > > it > > >> is > > >>> pulled through all components, but that's okay, I guess. > > >>> > > >>> Stephan > > >>> > > >>> > > >>> On Mon, Feb 27, 2017 at 1:53 PM, Aljoscha Krettek < > aljos...@apache.org > > > > > >>> wrote: > > >>> > > >>>> Just for a bit of context, this is the output of running cloc on the > > >>> Flink > > >>>> codebase: > > >>>> ------------------------------------------------------------ > > >>>> ----------------------- > > >>>> Language files blank comment > > >>>> code > > >>>> ------------------------------------------------------------ > > >>>> ----------------------- > > >>>> Java 4609 126825 185428 > > >>>> 519096 > > >>>> > > >>>> => 704,524 lines of code + comments/javadoc > > >>>> > > >>>> When I apply the google style to the Flink code base using > > >>>> https://github.com/google/google-java-format I get these commit > > >>>> statistics: > > >>>> > > >>>> 4577 files changed, 647645 insertions(+), 622663 deletions(-) > > >>>> > > >>>> That is, a change to the Google Code Style would touch roughly over > > 90% > > >>> of > > >>>> all code/comment lines. > > >>>> > > >>>> I would like to have a well defined code style, such as the Google > > Code > > >>>> style, that has nice tooling and support but I don't think we will > > ever > > >>>> convince enough people to do this kind of massive change. Even I > think > > >>> it's > > >>>> a bit crazy to change 90% of the code base in one commit. > > >>>> > > >>>> On Mon, 27 Feb 2017 at 11:10 Till Rohrmann <trohrm...@apache.org> > > >> wrote: > > >>>> > > >>>>> No, I think that's exactly what people mean when saying "losing the > > >>>> commit > > >>>>> history". With the reformatting you would have to go manually > through > > >>> all > > >>>>> past commits until you find the commit which changed a given line > > >>> before > > >>>>> the reformatting. > > >>>>> > > >>>>> Cheers, > > >>>>> Till > > >>>>> > > >>>>> On Sun, Feb 26, 2017 at 6:32 PM, Alexander Alexandrov < > > >>>>> alexander.s.alexand...@gmail.com> wrote: > > >>>>> > > >>>>>> Just to clarify - by "losing the commit history" you actually mean > > >>>>> "losing > > >>>>>> the ability to annotate each line in a file with its last commit", > > >>>> right? > > >>>>>> > > >>>>>> Or is there some other sense in which something is lost after > > >>> applying > > >>>>> bulk > > >>>>>> re-format? > > >>>>>> > > >>>>>> Cheers, > > >>>>>> A. > > >>>>>> > > >>>>>> On Sat, Feb 25, 2017 at 7:10 AM Henry Saputra < > > >>> henry.sapu...@gmail.com > > >>>>> > > >>>>>> wrote: > > >>>>>> > > >>>>>>> Just want to clarify what unify code style here. > > >>>>>>> > > >>>>>>> Is the intention to have IDE and Maven plugins to have the same > > >>> check > > >>>>>> style > > >>>>>>> rules? > > >>>>>>> > > >>>>>>> Or are we talking about having ONE code style for both Java and > > >>>> Scala? > > >>>>>>> > > >>>>>>> - Henry > > >>>>>>> > > >>>>>>> On Fri, Feb 24, 2017 at 8:08 AM, Greg Hogan <c...@greghogan.com> > > >>>>> wrote: > > >>>>>>> > > >>>>>>>> I agree wholeheartedly with Ufuk. We cannot reformat the > > >>> codebase, > > >>>>>> cannot > > >>>>>>>> pause while flushing the PR queue, and won't find a consensus > > >>> code > > >>>>>> style. > > >>>>>>>> > > >>>>>>>> I think we can create a baseline code style for new and > > >> existing > > >>>>>>>> contributors for which reformatting on changed files will be > > >>>>> acceptable > > >>>>>>> for > > >>>>>>>> PR reviews. > > >>>>>>>> > > >>>>>>>> On Fri, Feb 24, 2017 at 5:01 AM, Dawid Wysakowicz < > > >>>>>>>> wysakowicz.da...@gmail.com> wrote: > > >>>>>>>> > > >>>>>>>>> The problem with code style when it is not enforced is that > > >> it > > >>>> will > > >>>>>> be > > >>>>>>> a > > >>>>>>>>> matter of luck to what parts of files / new files will it be > > >>>>> applied. > > >>>>>>>> When > > >>>>>>>>> the code style is not applied to whole file, it is pretty > > >> much > > >>>>>> useless > > >>>>>>>>> anyway. You would need to manually select just the fragments > > >>> one > > >>>> is > > >>>>>>>>> changing. The benefits of having code style and enforcing it > > >> I > > >>>> see > > >>>>>> are: > > >>>>>>>>> - being able to apply autoformatter, which speeds up writing > > >>>> code > > >>>>>>>>> - it would make reviewing PRs easier as e.g. there would be > > >>> line > > >>>>>>> length > > >>>>>>>>> limit applied etc. which will make line breaking more reader > > >>>>>> friendly. > > >>>>>>>>> > > >>>>>>>>> Though I think if a consensus is not reachable it would be > > >> good > > >>>> to > > >>>>>> once > > >>>>>>>> and > > >>>>>>>>> forever decide that we don't want a code style and > > >> checkstyle. > > >>>>>>>>> > > >>>>>>>>> 2017-02-24 10:51 GMT+01:00 Ufuk Celebi <u...@apache.org>: > > >>>>>>>>> > > >>>>>>>>>> On Fri, Feb 24, 2017 at 10:46 AM, Fabian Hueske < > > >>>>> fhue...@gmail.com > > >>>>>>> > > >>>>>>>>> wrote: > > >>>>>>>>>>> I agree with Till that encouraging a code style without > > >>>>> enforcing > > >>>>>>> it > > >>>>>>>>> does > > >>>>>>>>>>> not make a lot of sense. > > >>>>>>>>>>> If we enforce it, we need to touch all files and PRs. > > >>>>>>>>>> > > >>>>>>>>>> I think it makes sense for new contributors to have a > > >>> starting > > >>>>>> point > > >>>>>>>>>> without enforcing anything (I do agree that we are past the > > >>>> point > > >>>>>> to > > >>>>>>>>>> reach consensus on a style and enforcement ;-)). > > >>>>>>>>>> > > >>>>>>>>> > > >>>>>>>> > > >>>>>>> > > >>>>>> > > >>>>> > > >>>> > > >>> > > >> > > > > >