blast-project/doctrine-pgsql-bundle
LIKE queries and regex-based substring syntax adjustments. It is not a core feature replacement (e.g., no auth, caching, or advanced query builder changes) but rather a PostgreSQL syntax normalization layer.doctrine/dbal) but not Doctrine ORM by default. However, if the project already integrates Doctrine ORM (e.g., via doctrine/orm or sonata-project/doctrine-extensions), this bundle could be relevant. For vanilla Laravel, the value is limited unless the team explicitly needs PostgreSQL-specific SQL tweaks.LIKE queries or PostgreSQL regex substring functions, this bundle could reduce manual SQL adjustments.doctrine/orm (Laravel does not bundle this by default). If the project uses Doctrine Extensions (e.g., for soft deletes, tree structures), this could be a natural fit.LIKE with ILIKE manually in queries.Doctrine\ORM\Query\QueryBuilder listeners to modify SQL dynamically.doctrine/dbal to run raw SQL when needed.doctrine/orm? If not, is this a justification to adopt it?ILIKE usage is simpler.LIKE queries to quantify how often case-insensitive searches occur.substring(field, regexp) is used (likely rare in Laravel).composer require blast-project/doctrine-pgsql-bundle
config/bundles.php (if using Symfony-style bundles).doctrine/orm is properly configured for PostgreSQL. Gedmo/DoctrineExtensions).ILIKE replaces LIKE where expected.substring regex functionality in critical paths.ILIKE and regex functions). Test against the targeted PostgreSQL version.LIKE queries.ILIKE via the bundle and verify behavior.ILIKE is slower than LIKE).LIKE → ILIKE fixes with the bundle.ILIKE is slower than LIKE (PostgreSQL must check all cases). If the app relies on high-performance searches, this could be a bottleneck.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Bundle breaks with Doctrine update | LIKE queries fail silently |
Fork/patch or revert to raw SQL |
ILIKE degrades search performance |
Slow queries under load | Use LIKE with COLLATE "C" instead |
| Bundle conflicts with SonataAdmin | Query generation errors | Disable bundle for Sonata routes |
| PostgreSQL version incompatibility | Functions fail (e.g., substring) |
Use raw SQL as fallback |
ILIKE vs. LIKE.LIKE in subqueries) may behave unexpectedly.How can I help you explore Laravel packages today?