threads / discuss / 64276

[rfd] a new core.whitespace class "\No newline at end of file"

Subject: [rfd] a new core.whitespace class "\No newline at end of file"

## tl;dr

2 messages between Oct 8, 2025 and Oct 8, 2025.

replies: 1people: 2as markdown or json

Junio C Hamano· Oct 8, 2025, 17:39 UTC · lore

It would be a good sized internship project to introduce a new core.whitespace class that is about a file that ends in an incomplete line (it would be way too big as a microproject, so I would not add the #leftoverbits tag to this one).

The student needs to learn quite a lot of things, including
 - they need to study the diff machinery to learn how existing
   whitespace breakages are reported, in order to figure out how to
   add a new class of whitespace breakage;
 - they need to find a good name for this new class;
 - they need to study the apply machinery to learn how existing
   whitespace breakages are reported or corrected, in order to
   figure out how to add support for this new class.
Thoughts?
brian m. carlson· Oct 8, 2025, 19:29 UTC · re: Junio C Hamano · lore

Re: [rfd] a new core.whitespace class "\No newline at end of file"

On 2025-10-08 at 17:39:13, Junio C Hamano wrote:
Show 18 quoted lines
> It would be a good sized internship project to introduce a new
> core.whitespace class that is about a file that ends in an
> incomplete line (it would be way too big as a microproject, so I would
> not add the #leftoverbits tag to this one).
> 
> The student needs to learn quite a lot of things, including
> 
>  - they need to study the diff machinery to learn how existing
>    whitespace breakages are reported, in order to figure out how to
>    add a new class of whitespace breakage;
> 
>  - they need to find a good name for this new class;
> 
>  - they need to study the apply machinery to learn how existing
>    whitespace breakages are reported or corrected, in order to
>    figure out how to add support for this new class.
> 
> Thoughts?

I think this is a great idea. I've noticed that many newer developers are using VS Code, which I believe leaves off the trailing newline by default.

I think most people on this list understand why having a newline at the end of the file is valuable and have configured their editors accordingly, but for less experienced developers, this kind of lint could be useful to help visualize these problems and even catch them in CI. Possibly the documentation (say, the FAQ) could be updated to help explain why this kind of whitespace breakage should be avoided as well.

-- 
brian m. carlson (they/them)
Toronto, Ontario, CA

← back to recent threads