# Improved Rust hunk headers

2 messages from 2026-01-08 to 2026-01-08. Participants: Benno Lossin, D. Ben Knoble.
Thread: https://gitlist.dev/t/64746

## Benno Lossin, 2026-01-08 12:38

Subject: Improved Rust hunk headers
Message-ID: <DFJ7PJVEVOYG.377TM7121KCQJ@kernel.org>
URL: https://gitlist.dev/e/DFJ7PJVEVOYG.377TM7121KCQJ%40kernel.org

```
Hey everyone,

Recently, while looking at a Rust patch [1] for the Linux kernel, I had
an idea to improve the hunk header for Rust code. The patch's hunk
header is the function defined above the addition. To me it doesn't
provide much value in giving context; it has been a while since I last
looked at that file. It would be much more useful in this case to show
the context `pub unsafe trait FromBytes {` instead. This is because the
function that's being added is added to that trait.

In the general case it still is useful to show the function context when
the contents of a function are changed. Ideally, it would be possible to
show both the `impl` block and the function signature.

I have no knowledge of the inner workings of git, so this might be a
tall ask. But would it be possible to implement having multi-line hunk
headers and have a more advanced selection algorithm? AFAIK at the
moment a regex is used to extract the header, I think that would still
be sufficient for this case, if the `impl` block header is searched for
after the function signature.

My current solution to reviewing a patch like this is either opening the
file and scrolling to the change location. This isn't possible if
earlier patches in a series already changed the file. In that case the
only option is to create a new worktree and apply the patch series. It
would be great if I didn't have to do this for simple things.

Cheers,
Benno

[1]: https://lore.kernel.org/all/20251216-transmute-v2-1-b23e5277ad02@google.com/

```

## D. Ben Knoble, 2026-01-08 17:29

Subject: Re: Improved Rust hunk headers
Message-ID: <CALnO6CAGHuu9zBNRD1PV+2ej9pSq=2agP76hA3ZWXxojo7FJug@mail.gmail.com>
URL: https://gitlist.dev/e/CALnO6CAGHuu9zBNRD1PV%2B2ej9pSq%3D2agP76hA3ZWXxojo7FJug%40mail.gmail.com
In-Reply-To: <DFJ7PJVEVOYG.377TM7121KCQJ@kernel.org>

```
On Thu, Jan 8, 2026 at 10:34 AM Benno Lossin <lossin@kernel.org> wrote:
>
> Hey everyone,
>
> Recently, while looking at a Rust patch [1] for the Linux kernel, I had
> an idea to improve the hunk header for Rust code. The patch's hunk
> header is the function defined above the addition. To me it doesn't
> provide much value in giving context; it has been a while since I last
> looked at that file. It would be much more useful in this case to show
> the context `pub unsafe trait FromBytes {` instead. This is because the
> function that's being added is added to that trait.
>
> In the general case it still is useful to show the function context when
> the contents of a function are changed. Ideally, it would be possible to
> show both the `impl` block and the function signature.
>
> I have no knowledge of the inner workings of git, so this might be a
> tall ask. But would it be possible to implement having multi-line hunk
> headers and have a more advanced selection algorithm? AFAIK at the
> moment a regex is used to extract the header, I think that would still
> be sufficient for this case, if the `impl` block header is searched for
> after the function signature.

I wonder if an empty hunk (that is, two adjacent headers) would break
anything? Just thinking aloud.

-- 
D. Ben Knoble

```
