Skip to content

Keep raw headers around to preserve ordering and unknown extra headers #1579

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 1 commit into
base: previous-main
Choose a base branch
from

Conversation

jrobsonchase
Copy link

WIP fix for #1578.

Preserves extra headers for a very narrow usecase - re-encoding them exactly as they were in the original object. This allows for the successful PGP validation of commits containing such extra headers, such as jj's change-id. A test for this specific case is provided, and all existing tests currently pass.

There's still some "quirky" behavior around the presence of the raw headers causing the stuctured fields to be ignored for encoding. This probably needs to be resolved as it can result in some surprising behavior (see incidental test changes where I had to clear the headersRaw field to get them to pass). Not sure how exactly to present that to the user though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant