PoC change behavior of nesting with regards to trailing slashes and root route #2730
+159
−41
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.
Ref #2651 and #2659
Motivation
Nesting at
/foo
and/foo/
is almost the same but isn't consistent in whether the root route is at/foo
or at/foo/
.More discussion is in #2659
Solution
This is one possible solution which:
/foo/
is disallowed./foo
,/foo/
, or both. The default is both to make it consistent withnest_service
, but could also be/foo
to not change the behavior (the previous point is already breaking change though).This would need some cleaning up (e.g. fixing all tests that nest at paths ending with slashes). Also, all endpoints are now needlessly cloned during nesting just because we might need to clone the root one so that's one thing I'd like to solve better if we wanted to go in this direction.