Download the PHP package tourze/doctrine-uuid-bundle without Composer
On this page you can find all versions of the php package tourze/doctrine-uuid-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download tourze/doctrine-uuid-bundle
More information about tourze/doctrine-uuid-bundle
Files in tourze/doctrine-uuid-bundle
Package doctrine-uuid-bundle
Short Description Symfony bundle for automatic UUID (v1/v4) assignment in Doctrine entities using PHP 8 attributes
License MIT
Informations about the package doctrine-uuid-bundle
Doctrine UUID Bundle
中文
[]
(https://packagist.org/packages/tourze/doctrine-uuid-bundle)
[
]
(https://packagist.org/packages/tourze/doctrine-uuid-bundle)
[
]
(https://packagist.org/packages/tourze/doctrine-uuid-bundle)
[
]
(https://travis-ci.org/tourze/doctrine-uuid-bundle)
[
]
(https://scrutinizer-ci.com/g/tourze/doctrine-uuid-bundle)
[
]
(https://packagist.org/packages/tourze/doctrine-uuid-bundle)
[
]
(https://scrutinizer-ci.com/g/tourze/doctrine-uuid-bundle)
A Symfony bundle for automatic UUID (v1/v4) assignment in Doctrine entities using PHP 8 attributes.
Installation
Requirements
- PHP 8.1 or higher
- Symfony 6.4 or higher
Features
- Automatic UUID v1 and v4 assignment for entity properties
- Zero configuration, works out of the box
- Attribute-driven and easy to use
- Seamless integration with Doctrine event system
- Built-in logging for debugging
- Extensible: custom UUID generation strategies supported
- Nullable UUID fields supported
- Automatic database schema updates
- Compatible with Symfony 6.4+ and Doctrine 2.13+
Quick Start
Add the UuidV1Column or UuidV4Column attribute to your entity properties:
UUIDs will be automatically generated when the entity is persisted.
Configuration
The bundle works with zero configuration. If you need to customize the behavior, you can:
- Create custom UUID attributes by extending the base attributes
- Override the event listener service to implement custom generation logic
- Configure logging levels in your Symfony configuration
Advanced Usage
You may extend the Attribute or event listener to implement custom UUID generation logic.
Security
- UUID v1 contains MAC address and timestamp information, which may be considered sensitive
- UUID v4 is cryptographically random and doesn't contain identifiable information
- Choose the appropriate UUID version based on your security requirements
- Consider using UUID v4 for public-facing identifiers
Common Issues
- UUID not being generated: Ensure your entity uses the correct attributes and the bundle is registered
in
config/bundles.php. - Database schema issues: Run
php bin/console doctrine:schema:update --forceto update your database schema. - Performance considerations: UUID v1 is time-based and may be more suitable for database indexing than UUID v4.
Documentation
- API Docs
- Most configuration is automatic. For advanced extension, you may customize the event subscriber.
Contributing
- Feel free to submit Issues and PRs
- Follow PSR code style
- Please ensure tests pass before submitting PRs
- Fork the repo, create a branch, push and submit a PR
License
- License: MIT
- Author: Tourze
Changelog
See CHANGELOG
Workflow Diagram
See Mermaid.md for a visual workflow.
All versions of doctrine-uuid-bundle with dependencies
doctrine/doctrine-bundle Version ^2.13
doctrine/orm Version ^3.0
doctrine/persistence Version ^4.1
monolog/monolog Version ^3.1
psr/log Version ^3|^2|^1
symfony/config Version ^7.3
symfony/dependency-injection Version ^7.3
symfony/doctrine-bridge Version ^7.3
symfony/framework-bundle Version ^7.3
symfony/http-kernel Version ^7.3
symfony/property-access Version ^7.3
symfony/uid Version ^7.3
symfony/yaml Version ^7.3
tourze/bundle-dependency Version 1.*
tourze/doctrine-entity-checker-bundle Version 1.0.*
tourze/symfony-dependency-service-loader Version 1.0.*