All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Add UUID version 7 generator (#191).
- Support other subclasses of EntityManagerInterface (#180).
- Use binary binding type for
UuidBinary*
types (#72).
- All public method signatures now specify return types. This might affect downstream child classes.
- Minimum version of PHP is now 7.4.
- Minimum version of doctrine/dbal is now 2.8.
- Minimum version of ramsey/uuid is now 3.9.7.
- Fix return type deprecation warnings (#178).
- Prevent type error while converting invalid value type in
convertToDatabaseValue()
(#170). - Add return type annotation to
getSQLDeclaration()
to silence deprecation notices (#173).
- Support doctrine/dbal v3
- Add
UuidType::requiresSQLCommentHint()
andUuidType::getMappedDatabaseTypes()
to avoid unnecessaryALTER TABLE
statements after each schema update.
- Support ramsey/uuid v4
- Support PHP 8
- Changed primary Doctrine dependency to doctrine/dbal and moved doctrine/orm
dependency to
require-dev
.
- Ensure the library supports the forthcoming ramsey/uuid version 4.0.0.
UuidBinaryOrderedTimeType::getUuidFactory()
andUuidBinaryOrderedTimeType::getCodec()
are nowprotected
instead ofprivate
.- Set minimum ramsey/uuid version to 3.5. This is required for use of the
OrderedTimeCodec
this library has supported since version 1.3.0.
UuidType::convertToPHPValue()
now checks for instances ofUuidInterface
instead ofUuid
.- When
UuidBinaryOrderedTimeType
fails to encode or decode a UUID because it is not a version 1 UUID, theConversionException
thrown now includes more information about the format expected ("UuidV1").
- Check whether values are
UuidInterface
objects or strings, rather than specificUuid
objects. This allows more flexibility in supporting alternate types of UUID objects.
- Revert
getBindingType()
(#45) work until a solution can be implemented for the "array to string conversion" notice reported in #47
- Add
getBindingType()
method to binary types (#45); this fixes issues where binary UUIDs were not treated properly by certain database clients when binding query parameters
- Use global
UuidFactory
inUuidOrderedTimeGenerator
; this provides the ability to configure the factory used (#36, #37)
- Add generator for time-optimized UUIDs (#33)
- Remove support for HHVM
- Add
UuidBinaryOrderedTimeType
to store UUIDv1 in MySQL-optimized format (#14)
- Use
static::NAME
instead ofself::NAME
(#25)
- Add UuidGenerator class to make Doctrine integration easier
- Now requiring the use of doctrine/dbal ^2.5 to support binary field types; this fixes a bug reported in #7
- Add project Code of Conduct
- Loosen doctrine/dbal version requirement to ~2.3
- Fix converting UUID string to a binary UUID
- Initial release!
- Separated from ramsey/uuid library into a stand-alone package