arnaud-23/attribute-execution-bundle
AttributeExecutionMiddleware interface, making it adaptable to domain-specific needs (e.g., logging, retries, or observability).Security or Transactional require symfony/security-bundle or Doctrine, respectively. This is explicit and well-documented.attribute_execution.yaml, enabling environment-specific tuning (e.g., dev vs. prod cache backends).Cache before Security) could lead to logical errors. Documentation should emphasize this.Transactional attribute uses Symfony’s TransactionalDoctrineListener, which may conflict with existing transaction managers (e.g., custom Doctrine event subscribers). Testing is required for complex ORM setups.CacheItemPool or CacheWarmer.Security attribute requires symfony/security-bundle, which adds ~5MB to the vendor directory. For lightweight projects, this may be overkill.array cache strategy sufficient, or will redis/memcached be required? The latter adds dependency complexity.Transactional attribute?Transactional attribute integrates with Doctrine’s transaction manager. For non-Doctrine projects (e.g., Eloquent), this feature is unusable.CacheInterface (array, Redis, APCu, etc.). Teams using custom cache implementations may need adapters.Security attribute requires symfony/security-bundle. Lightweight projects may opt to implement custom middleware instead.attribute_execution.yaml for cache/transaction strategies (if needed).symfony/security-bundle is installed for Security attributes.@Cache(maxage="3600") for [Cache(ttl: 3600)]).@Security("ROLE_ADMIN") on a controller).CacheItemPool implementation. Custom providers must implement Symfony’s CacheInterface.Security attribute uses Symfony’s voter system. Custom voters must be registered via the security bundle.Cache and Transactional (low-risk, high-reward).Security until the security bundle is fully integrated.config/packages/attribute_execution.yaml after core attributes are working.attribute_execution.yaml as requirements evolve.debug:container or Xdebug to inspect proxied services.Security attributes).AttributeReader).array cache is single-process only.Transactional attribute adds negligible overhead.How can I help you explore Laravel packages today?