- Bug #748: Fix hook processing for nested objects that implement
PostValidationHookInterface
whenNested
rule with specified rules is used (@DAGpro) - Bug #756: Fix russian translation of error message for
FilledAtLeast
rule (@vjik)
- Chg #747: Merge rules from PHP attributes with rules provided via
getRules()
method (@vjik) - Enh #740: Use
Yiisoft\NetworkUtilities\IpRanges
inIp
rule: addgetIpRanges()
method and deprecategetRanges()
,getNetworks()
,isAllowed()
methods (@vjik) - Enh #746: Use
NEGATION_CHARACTER
constant fromnetwork-utilities
package inIpHandler
instead of declaring its own constant (@arogachev)
- New #615: Add the
Each::PARAMETER_EACH_KEY
validation context parameter that available duringEach
rule handling and containing the current key (@dood-) - New #630, #718: Include attribute name in error messages when it's present (@dood-, @arogachev)
- New #633: Add PHP attribute that sets property label for usage in error messages (@dood-)
- New #734: Add
InEnum
rule (@samdark) - Chg #583: Change "attribute" to "property" in class/trait/method/variable/placeholder names (@vjik)
- Chg #613: Change type of
$escape
argument inError::getValuePath()
frombool|string|null
tostring|null
(@arogachev) - Chg #623: List translated attributes in error message for
OneOf
andAtLeast
rules (@arogachev) - Chg #624: Fix meaning of error message in
OneOf
rule (@arogachev) - Chg #625: Improve meaning and use pluralization in error message for
OneOf
andAtLeast
rules (@arogachev) - Chg #626: Disallow
$min
greater than amount of$attributes
inAtLeast
configuration (@arogachev) - Chg #634: Move
getName()
method fromRuleInterface
toRuleWithOptionsInterface
(@arogachev) - Chg #634: Rename
RuleWithOptionsInterface
toDumpedRuleInterface
(@arogachev) - Chg #634: Use FQCN as a name for built-in rules during export with
RulesDumper
(@arogachev) - Chg #634: Use FQCN as a name for rules not implementing
DumpedRuleInterface
during export withRulesDumper
(@arogachev) - Chg #660: Change type of
$skipOnEmpty
argument in rules' constructors frommixed
tobool|callable|null
(@arogachev) - Chg #679: Change type of
$rule
argument inRuleHandlerInterface::validate()
fromobject
toRuleInterface
(@arogachev) - Chg #694: Rename
AtLeast
rule toFilledAtLeast
andOneOf
rule toFilledOnlyOneOf
(@arogachev) - Enh #492: Add type to error messages related with incorrect input (@arogachev)
- Enh #622: Use
json_validate()
built-in PHP function inJsonHandler
if code is run with PHP 8.3 (@arogachev) - Enh #636: Improve psalm annotations in
Result
class (@vjik) - Enh #637: Add German translation (@took)
- Enh #639: Simplify validation of JSON in
JsonHandler
using built-in PHP functions for PHP versions below 8.3 (@arogachev) - Enh #648: Raise the minimum version of PHP to 8.1 (@pamparam83)
- Enh #726: Refactor
Result::add()
: tookarray_merge()
out of theforeach
(@lav45) - Enh #733: Make parameter
$rules
inRulesNormalizer::normalize()
optional (@vjik) - Enh #735: Make
Json::$message
a bit more clear (@arogachev) - Bug #632: Fix property name usage in error messages of rules in
Nested
rule (@vjik) - Bug #733: Rules provided by data object PHP attributes were not used in
RulesNormalizer::normalize()
(@vjik) - Bug #736: Fix wrong value for
type
parameter forEach::$incorrectInputKeyMessage
(@arogachev)
- Bug #719: Fix parameters leak in context validation (@vjik)
- New #649: Add
getFirstErrorMessagesIndexedByPath()
andgetFirstErrorMessagesIndexedByAttribute()
methods toResult
(@arogachev) - New #655: Add rules for validating value types -
boolean
,float
,integer
,string
(@arogachev) - New #657: Add
Result::add()
method for merging other results to the base one (@arogachev) - New #687: Add
UniqueIterable
rule (@arogachev) - New #693: Add
AnyRule
rule (@arogachev)
- New #665: Add methods
addErrorWithFormatOnly()
andaddErrorWithoutPostProcessing()
toResult
object (@vjik) - New #670, #677, #680: Add
Image
validation rule (@vjik, @arogachev) - New #678: Add
Date
,DateTime
andTime
validation rules (@vjik) - Enh #668: Clarify psalm types in
Result
(@vjik)
- New #597, #608: Add debug collector for
yiisoft/yii-debug
(@xepozz, @vjik) - New #610: Add
$escape
parameter to methodsResult::getAttributeErrorMessagesIndexedByPath()
andResult::getErrorMessagesIndexedByPath()
that allow change or disable symbol which will be escaped in value path elements (@vjik) - New #617: Add
OneOf
rule (@arogachev) - Enh #658: Minor refactoring of
EmailHandler::validate()
method (@vjik) - Enh #658: Add more specific psalm type for "skip on empty" callable (@vjik)
- Enh #658: Make
$isAttributeMissing
parameter of empty conditions (NeverEmpty
,WhenEmpty
,WhenMissing
,WhenNull
) optional (@vjik) - Bug #612: Disable escaping of asterisk char in value path returned by
Error::getValuePath(true)
(@vjik)
- Enh #594: Add
StringValue
rule (@arogachev) - Enh #567: Add immutable setter for modifying
Validator::$defaultSkipOnEmptyCondition
(@arogachev) - Bug #586: Allow
0
as a limit inCountableLimitTrait
(@arogachev) - Bug #431: Add support for empty iterables to
WhenEmpty
(@arogachev)
- Initial release.