Repository navigation
[13.x] Prevent loose comparison bypass in in_array validation rule - #61319
Merged
taylorotwell merged 1 commit intoAug 24, 2026
Merged
Conversation
|
Thanks for submitting a PR! Note that draft PRs are not reviewed. If you would like a review, please mark your pull request as ready for review in the GitHub user interface. Pull requests that are abandoned in draft may be closed due to inactivity. |
KIKOmanasijev
marked this pull request as ready for review
August 24, 2026 18:04
KIKOmanasijev
marked this pull request as draft
August 24, 2026 18:06
KIKOmanasijev
marked this pull request as ready for review
August 24, 2026 21:30
binaryfire
added a commit
to hypervel/components-backup
that referenced
this pull request
Oct 1, 2026
Compare in_array and doesnt_contain values strictly and document their type-sensitive behavior. Retain contains behavior from the current upstream target. Port the remaining scalar in-rule cases, remove its obsolete documented difference, and consolidate contains/doesnt_contain tests under upstream file names. Preserve distinct existing assertions while restoring missing rule-formatting cases and adding strict-membership coverage. The validation suite and analysis pass. Upstream: laravel/framework#61146 laravel/framework#61315 laravel/framework#61319 laravel/framework#61318 Source: laravel/framework master 7068848dfe48fc3a433598e09ce798799d442a52.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
The
in_arrayvalidation rule currently uses non-strictin_array()comparison against values extracted from request data, so numeric-looking values such as"1e0"and"0e123456789"can match"1"and"0".Use strict comparison for this rule and add regression coverage for loose numeric-string matches while preserving exact matches. This follows the same fix and test shape as #61146 for the
inrule.Since
in_arraycompares against request values rather than string rule parameters, the tests also verify that integer/string mismatches fail while exact integer and string matches continue to pass.