I gave it a try in https://github.com/apache/couchdb/pull/3837

There are two separate commits - tooling and actual formatting. The
Erlang version check didn't seem too bad to implement. Hopefully soon
we'll jump to 21+ and can clean that code up.

>From the main branch I ported all the formatting exceptions and
applied them to 3.x, one was in couch_debug and one in chttpd module.

Thanks,
-Nick

On Thu, Nov 18, 2021 at 11:50 AM Nick Vatamaniuc <vatam...@gmail.com> wrote:
>
> Hi Jay,
>
> I don't really agree with many of the choices erlfmt makes either. I
> personally like emilio's [1] syntax rules better. But, I think there
> is still a net benefit to having a standardized format that is
> automatically applied and enforced. The automated part helps when
> reviewing PRs / contributions and keeping it consistent in the future.
> And it's odd that main was reformatted but 3.x isn't currently.
>
> I think with piecemeal conversion we'd lose the automatic enforcement
> or we'd have to add exceptions allow/deny lists for files.
>
> For blame I think it might be helpful to just have one commit for the
> reformatting and one commit for make/dev* scripts so it's easy to jump
> before and after the one commit that only does reformatting. I'll try
> to group the PR that way (2 separate commits). This way current
> pending PR can also bring first rebase the on the tooling, so they can
> reformat their commits, then rebase again on the reformatted code base
> to hopefully get a lot less conflicts.
>
> [1] https://github.com/cloudant-labs/emilio
>
> Regards,
> -Nick
>
> On Thu, Nov 18, 2021 at 11:25 AM Jay Doane <jay.s.do...@gmail.com> wrote:
> >
> > Hi Nick,
> >
> > As with main, my objections to a mass reformatting of hundreds of files
> > boils down to:
> >
> > 1. Making it more difficult to understand the logical changes of the code
> > (via blame) after reformatting
> > 2. I don't agree with all the opinions of the formatter, nor does my
> > editor/mode
> >
> > Is this something that could be done piecemeal for the purpose of
> > backporting/diffing, or do you feel it's necessary to reformat everything
> > at once?
> >
> > Thanks,
> > Jay
> >
> > On Wed, Nov 17, 2021 at 11:24 PM Nick Vatamaniuc <vatam...@gmail.com> wrote:
> >
> > > Hi all,
> > >
> > > I had noticed we had agreed to use erlfmt but only ran it on main and
> > > not 3.x. That makes it harder to port changes or diff-ing modules
> > > sometimes. Would there be any objections to a pull request
> > > reformatting 3.x?
> > >
> > > The only issue is that we may have to avoid running erlfmt if we
> > > detect Erlang 20, but that's just a few if / else checks. The CI
> > > checks on 21+ would still check and fail if erlfmt check fails.
> > >
> > > Thanks,
> > > -Nick
> > >

Reply via email to