Fix adapter.Unwrap() not working after huma.WithContext() #829
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #790
Closes #784
Since I was also affected by this issue I decided to open a PR
I used the (very naive) strategy of exposing a func to extract the original
huma.Context
from asubContext
, and made use of it in everyadapter.Unwrap(ctx)
func.I updated the adapters test to make sure all adapters don't panic while adding a simple context value (and added the missing
humago
test case)While updating the test I also discovered that
humabunrouter.Unwrap(ctx)
simply doesn't work with Bun in compat mode. I didn't fix it since it's not really related to this change, and I wasn't sure on the preferred way (duplicated func? new package? return *http.Request for both context implementations?)