[LTP] [PATCH v1 3/3] editorconfig: add consistent formatting rules for LTP

Petr Vorel pvorel@suse.cz
Tue Mar 10 14:22:27 CET 2026


Hi Jan,

> Introduce .editorconfig to keep indentation and whitespace consistent across
> editors, preventing accidental reformatting and noisy diffs.

+1, I was thinking about adding it looking on kernel [1] and Buildroot [2]
config some time ago.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/.editorconfig
[2] https://github.com/buildroot/buildroot/blob/master/.editorconfig

Generally LGTM.

BTW I would separate this from the actual code change (not relevant).

> Signed-off-by: Jan Polensky <japo@linux.ibm.com>
> ---
>  .editorconfig | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
>  create mode 100644 .editorconfig

> diff --git a/.editorconfig b/.editorconfig
> new file mode 100644
> index 000000000000..ee9f49516e53
> --- /dev/null
> +++ b/.editorconfig
> @@ -0,0 +1,36 @@
> +# SPDX-License-Identifier: GPL-2.0-only

Any particular reason for GPL v2 only? The default LTP license is
GPL-2.0-or-later.

> +
> +# EditorConfig configuration for LTP
> +# https://editorconfig.org/
> +
> +root = true
> +
> +[*]
> +charset = utf-8
> +end_of_line = lf
> +insert_final_newline = true
> +trim_trailing_whitespace = true
> +
> +# C/Assembly source files, headers, and Makefiles use tabs
> +[*.{c,h,mk,S,sh,awk}]
FYI we have only single awk file which IMHO nobody uses (it may be deleted):
testcases/open_posix_testsuite/scripts/print-pass-fail-summary.awk
> +indent_style = tab
> +indent_size = 8
When we use tab anyway (i.e. it's about how is the tab displayed), could it be
indent_size = 4 ?
> +
> +[{Makefile,Makefile.*}]
nit: we should probably add here *.mk.in

> +indent_style = tab
> +indent_size = 8
> +
> +# Python and Perl scripts use spaces
> +[*.{py,pl}]
> +indent_style = space
> +indent_size = 4
Most of our python based tests contain tabs, see testcases/network/nfsv4/acl/
and testcases/realtime/func/pi-tests/.
OTOH doc/conf.py would have to be converted to tabs.

Also on perl it's hard to even decide, because vendored scripts/checkpatch.pl
uses tabs (and we modify it), but vendored scripts/checkbashisms.pl uses spaces.

> +
> +# Documentation files
> +[*.{rst,md}]
> +indent_style = space
> +indent_size = 3
If this setup is used for e.g. code block, than I would say we should have
indent_size = 4 to match the actual doc (doc/developers/test_case_tutorial.rst).

> +
> +# JSON files
> +[*.json]
> +indent_style = space
> +indent_size = 4
I'm ok with it, but our JSON files (tests added by Cyril) might be reformatted.

Kind regards,
Petr


More information about the ltp mailing list