| A | ↘ | B | Nested got worse |
| ⇢ | A | Nested::getIncorrectInputMessage() added | |
| ⇢ | A | Nested::getIncorrectDataSetTypeMessage() added | |
| ⇢ | A | Email::getIncorrectInputMessage() added | |
| ⇢ | A | Ip::getIncorrectInputMessage() added | |
| ⇢ | A | Json::getIncorrectInputMessage() added | |
| ⇢ | A | HasLength::getIncorrectInputMessage() added | |
| ⇢ | A | Compare::getIncorrectInputMessage() added | |
| ⇢ | A | Compare::getIncorrectDataSetTypeMessage() added | |
| ⇢ | A | AtLeast::getIncorrectInputMessage() added | |
| ⇢ | A | Url::getIncorrectInputMessage() added | |
| ⋮ | view more | ||
| D | ↘ | F | Validator::validate() got worse |
| A | ↘ | B | AtLeastHandler::validate() got worse |
| B | ↗ | A | StopOnErrorHandler::validate() improved |
| A | ↘ | B | RulesDumper::fetchOptions() got worse |
| A | ↘ | B | CompareHandler::validate() got worse |
| C | ↘ | D | NestedHandler::validate() got worse |
| A | ↛ | Result::getAttributeErrorsMap() removed | |
| A | ↛ | Boolean::getMessage() removed | |
| A | ↛ | HasLength::getMessage() removed | |