- Add
ObjectShapeTypeto represent the exact shape of an anonymous object
-
Constructing a
CollectionTypeinstance as a list that is not an array throws anInvalidArgumentException -
Remove the third
$asListargument ofTypeFactoryTrait::iterable(), useTypeFactoryTrait::list()insteaduse Symfony\Component\TypeInfo\Type; -$type = Type::iterable(Type::string(), asList: true); +$type = Type::list(Type::string());
- Add extra type alias support in
TypeContextandStringTypeResolver
- Add
Type::accepts()method - Add the
TypeFactoryTrait::fromValue(),TypeFactoryTrait::arrayShape(), andTypeFactoryTrait::arrayKey()methods - Deprecate constructing a
CollectionTypeinstance as a list that is not an array - Deprecate the third
$asListargument ofTypeFactoryTrait::iterable(), useTypeFactoryTrait::list()instead - Add type alias support in
TypeContextandStringTypeResolver - Add
CollectionType::mergeCollectionValueTypes()method - Add
ArrayShapeTypeto represent the exact shape of an array - Add
Type::traverse()method
- Add construction validation for
BackedEnumType,CollectionType,GenericType,IntersectionType, andUnionType - Add
TypeIdentifier::isStandalone(),TypeIdentifier::isScalar(), andTypeIdentifier::isBool()methods - Add
WrappingTypeInterfaceandCompositeTypeInterfacetype interfaces - Add
NullableTypetype class - Rename
Type::isA()toType::isIdentifiedBy()andType::is()toType::isSatisfiedBy() - Remove
Type::__call() - Remove
Type::getBaseType(), useWrappingTypeInterface::getWrappedType()instead - Remove
Type::asNonNullable(), useNullableType::getWrappedType()instead - Remove
CompositeTypeTrait - Add
PhpDocAwareReflectionTypeResolverresolver - The type resolvers are not marked as
@internalanymore - The component is not marked as
@experimentalanymore
- Add the component as experimental