- added
Assert::validArrayKey()
- added
Assert::isNonEmptyList()
- added
Assert::isNonEmptyMap()
- added
@throws InvalidArgumentException
annotations to all methods that throw. - added
@psalm-assert
for the list type to theisList
assertion.
ResourceBundle
&SimpleXMLElement
now pass theisCountable
assertions. They are countable, without implementing theCountable
interface.- The doc block of
range
now has the proper variables. - An empty array will now pass
isList
andisMap
. As it is a valid form of both. If a non empty variant is needed, useisNonEmptyList
orisNonEmptyMap
.
- Removed some
@psalm-assert
annotations, that were 'side effect' assertions See: - If you use psalm, the minimum version needed is
3.6.0
. Which is enforced through a composer conflict. If you don't use psalm, then this has no impact.
- added
Assert::uniqueValues()
- added
Assert::unicodeLetters()
- added:
Assert::email()
- added support for Psalm, by adding
@psalm-assert
annotations where appropriate.
Assert::endsWith()
would not give the correct result when dealing with multibyte suffix.Assert::length(), minLength, maxLength, lengthBetween
would not give the correct result when dealing with multibyte characters.
NOTE: These 2 changes may break your assertions if you relied on the fact that multibyte characters didn't behave correctly.
- The names of some variables have been updated to better reflect what they are.
- All function calls are now in their FQN form, slightly increasing performance.
- Tests are now properly ran against HHVM-3.30 and PHP nightly.
- deprecated
Assert::isTraversable()
in favor ofAssert::isIterable()
- This was already done in 1.3.0, but it was only done through a silenced
trigger_error
. It is now annotated as well.
- This was already done in 1.3.0, but it was only done through a silenced
- added
Assert::ip()
- added
Assert::ipv4()
- added
Assert::ipv6()
- added
Assert::notRegex()
- added
Assert::interfaceExists()
- added
Assert::isList()
- added
Assert::isMap()
- added polyfill for ctype
- Special case when comparing objects implementing
__toString()
- added
Assert::minCount()
- added
Assert::maxCount()
- added
Assert::countBetween()
- added
Assert::isCountable()
- added
Assert::notWhitespaceOnly()
- added
Assert::natural()
- added
Assert::notContains()
- added
Assert::isArrayAccessible()
- added
Assert::isInstanceOfAny()
- added
Assert::isIterable()
stringNotEmpty
will no longer report "0" is an empty string
- deprecated
Assert::isTraversable()
in favor ofAssert::isIterable()
- added
Assert::throws()
- added
Assert::count()
- added extension point
Assert::reportInvalidArgument()
for custom subclasses
- added
Assert::object()
- added
Assert::propertyExists()
- added
Assert::propertyNotExists()
- added
Assert::methodExists()
- added
Assert::methodNotExists()
- added
Assert::uuid()
- integrated Style CI
- add tests for minimum package dependencies on Travis CI
- added support for PHP 5.3.3
- first stable release
- first beta release