Skip to content

[13.x] Add EncodedParameter to RouteUrlGenerator - #61610

Merged
taylorotwell merged 1 commit into
laravel:13.xfrom
bytestream:encode-parameter
Sep 16, 2026
Merged

taylorotwell merged 1 commit into
laravel:13.xfrom
bytestream:encode-parameter

Conversation

@bytestream

Copy link
Copy Markdown
Contributor

This PR adds Illuminate\Routing\EncodedParameter, a small Stringable wrapper that marks a value as already encoded. RouteUrlGenerator::encodeParameter() substitutes a wrapped value as-is and encodes everything else exactly as before.

This returns the routing behaviour prior to efcf1ea with a opt-in option so that the security fix isn't lost.

Closes #61499

@taylorotwell
taylorotwell merged commit eb2ee2a into laravel:13.x Sep 16, 2026
56 checks passed
@denydias

Copy link
Copy Markdown

Is this going to be backported to 12.x so #61499 gets covered?

@bytestream
bytestream deleted the encode-parameter branch September 23, 2026 11:04
binaryfire added a commit to hypervel/components-backup that referenced this pull request Oct 1, 2026
Add EncodedParameter and the upstream encodeParameter extension point. Preserve existing percent, delimiter and brace escaping for ordinary values and retain raw serving-route paths. Include percent round-trip and encoded-parameter regressions, signed URL coverage, consistent docblock wording and usage documentation.

Upstream: laravel/framework#61475
Upstream: laravel/framework#61610
Upstream: laravel/framework#61631

Framework source: 7068848dfe48fc3a433598e09ce798799d442a52.
Documentation source: laravel/docs 13.x at ec28ad6ee78ebeada6095e05d33da7e8c42dd6dc.

Validated with affected tests, repository formatting, full source and type-fixture analysis, and the full parallel test suite.
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.

Query string question mark regression after 12.69.2

3 participants