Release 1.6.1
Enhancements:
- [Core] Added
Validatable::errors()
, so multiple errors can be added at once. - [Core] Added Whoops library (issue #243).
- [Core] Removed separate 404 view (you have to check http code in exception.phtml)
- [ORM] Added
Db::query()->fetchIterator()
method (issue #241). - [ORM] Added support for
EXISTS
subqueries. - [ORM] Added
ModelQueryBuilder::fetchIterator()
(issue #242). - [ORM] Added
Restrictions::isIn()
. - [Tests] Added
Assert::that()
(issue #245). - [Tests] Added
Assert::thatBool()
. - [Tests] Added
Assert::thatArray()->keys()
. - [Utilities] Added
Functions::notNull()
. - [Utilities] Added
Arrays::isAssociative()
andArrays::concat()
. - [Utilities] Added
UnbatchingIterator
. - [Utilities] Added
FluentArray::flip()
. - [Utilities]
Json::decode()
andJson::encode()
will from now on, throw exceptions on invalid input. - [Utilities] Added
Json::safeDecode()
andJson::safeEncode()
. - [Utilities] You can now read URL parameters as controllers' method arguments (issue #244).
- [Utilities]
Clock.useTimezone()
accepts bothstring
orDateTimeZone
. - [Utilities] Added
Strings::containsIgnoreCase
. - [Debug] After
renderPartial()
, you can now findPARTIAL
andEND PARTIAL
HTML comments along with partial name.
Bug fixes:
- [Core] Fixed searching routes with a
@
character. - [ORM] Fixed query parenthesis (issue #239).
- [ORM] Insert returns
id
of the last inserted element asint
. - [ORM] Fixed
EmptyQueryExecutor::fetchIterator()
method. - [Tests] More verbose message when
null
is passed toMock::verify()
(issue #236). - [Utilities] Fixed extracting ArraysAssert.
- [Utilities] Fixed
Arrays::toArray()
for empty string, false and zero. - [Utilities] Fixed
Strings::remove()
when given falsy argument (like'0'
). - [Utilities] Removed
$encoding
parameter fromStrings::uppercaseFirst()
. - [Utilities] Clock will not modify parameter
DateTime
.