Hi Yongjun,
Just quickly looked at the PR you mentioned – that's definitely a
hefty change! Considering the trade-offs, I think it'd be wiser to
limit its scope to only change files for now. Here's an idea: When
contributors submit PRs, let the workflow run Spotless formatting
specifically on the changed files. What do you think?

Warm regards,

Ji Min

Yongjun Hong <dev.yongj...@gmail.com> 于2025年3月16日周日 21:12写道:
>
> Hello Jimim,
> This is a very insightful point. In fact, after applying Spotless to all
> files, 1,914 files were changed. As you mentioned, applying it to all files
> at once can indeed shift line numbers, making it harder to match changes
> back to their original context.
>
> Currently, I see two possible approaches:
>
> 1. Apply Spotless only to changed files
> By implementing this method, Spotless will only be applied to the modified
> code when each user changes the code. This will prevent a large number of
> changes from being made all at once.
>
> 2. Apply Spotless to all files
> This is the approach used by open-source projects like JUnit5, among
> others, that have already applied Spotless in the early stages. Since they
> applied Spotless early on, they didn't need to consider situations like
> ours.
>
> However, after actually applying Spotless, most of the changes were related
> to whitespace or import statements.
> Below is a link to a PR I created after applying Spotless to all files in
> my personal repository.
> - https://github.com/YongGoose/incubator-seata/pull/2
>
> Best Regards,
> Yongjun
>
>
> > Hi Yongjun,
> >
> > Can Spotless only work on the change files instead of all files? Most
> > IDEs come with Git tracing plugins. These tools can show you
> > line-by-line history—like which commit last changed a specific line of
> > code and why it was modified. That’s super handy for untangling
> > complex code logic. But if you apply this to the entire codebase all
> > at once, it can mess up the traceability. Line numbers might shift
> > around, making it hard to match changes back to their original
> > context. Basically, you lose that precise 'who did what and where'
> > clarity.
> >
> > Warm regards,
> >
> > Ji Min
> >
> > Jiangke Wu <xingfude...@apache.org> 于2025年3月14日周五 16:55写道:
> > >
> > > Dear Yongjun,
> > >
> > > This is a fantastic proposal! 🎉 I wholeheartedly agree that automating
> > > code formatting aligns perfectly with Seata’s goals of improving
> > > contributor experience and maintaining consistent code quality. Your
> > points
> > > about Checkstyle’s limitations (especially the lack of auto-fixing) and
> > > Spotless’ actionable “apply” feature are spot-on.
> > >
> > > The community-friendly aspect you highlighted is crucial for our global
> > > contributors. By reducing friction around formatting rules (even for
> > those
> > > unfamiliar with Alibaba’s specific guidelines), Spotless could lower the
> > > barrier to entry and streamline collaboration. The JUnit reference adds
> > > significant credibility—seeing a widely-used project successfully adopt
> > it
> > > gives confidence in its feasibility.
> > >
> > >
> > > Best Regards,
> > > Jiangke Wu(xingfudeshi)
> > >
> > >
> > > On Sat, Feb 22, 2025 at 5:30 PM Yongjun Hong <dev.yongj...@gmail.com>
> > wrote:
> > >
> > > > Dear Seata community,
> > > >
> > > > Checkstyle is a great tool for maintaining code formatting, but it only
> > > > points out issues without automatically fixing them. On the other hand,
> > > > Spotless provides an apply feature that can automatically format the
> > code,
> > > > making it much more convenient to use.Since Seata is an open-source
> > project
> > > > under Apache, developers from all over the world contribute to it.
> > While it
> > > > would be ideal if everyone were already familiar with Alibaba's
> > Checkstyle
> > > > rules, many contributors, including myself, may not be.
> > > >
> > > > With that in mind, adopting Spotless could be a good option. For
> > reference,
> > > > JUnit, a project I have contributed to multiple times, has integrated
> > > > Spotless, and I found it to be very convenient. What do you think about
> > > > using Spotless?
> > > >
> > > > Best regards,
> > > > Yongjun
> > > >
> > > > PS. Dubbo community is using the Spotless plugin.
> > > >
> > > >
> > https://github.com/apache/dubbo/blob/cedc58316ddce533644aa627e5233711907c2e62/pom.xml#L172
> > > >
> > > > Related document
> > > > - https://github.com/diffplug/spotless
> > > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscr...@seata.apache.org
> > For additional commands, e-mail: dev-h...@seata.apache.org
> >
> >

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@seata.apache.org
For additional commands, e-mail: dev-h...@seata.apache.org

Reply via email to