Releases: as-yakovenko/laravel-lighthouse-graphql-multi-schema
v2.2.0
🚀 **New in v2.2.0 - Multi-Schema IDE Helper & Validation
Added two new commands for multi-schema management:
lighthouse:multi-ide-helper- Generate IDE helper files for individual schemaslighthouse:multi-validate-schema- Validate GraphQL schemas with detailed error reporting
Both commands support --schema option for working with specific schemas
Full compatibility with standard Lighthouse commands
Schema isolation - each schema is processed independently
Safe file generation without conflicts
Breaking Changes: None
New Dependencies: haydenpierce/class-finder: ^0.4
v2.1.2
What's Changed
- Fix: Compatibility with Lighthouse v6.22.2 (added Filesystem dependency)
v2.1.1
What's Changed
Fixed command conflict with lighthouse:clear-cache after upstream changes
- Force override
lighthouse:clear-cachecommand to support schema arguments - Maintain full backward compatibility
Usage remains the same:
php artisan lighthouse:clear-cache all- clear all schemasphp artisan lighthouse:clear-cache <schema>- clear specific schema
v2.1.0
What's Changed
- Simplified
SchemaASTCacheby removing unused cache methods and improving path retrieval
v2.0.0
🚀 New in v2.0.0: - Octane & Worker Support
Since v2.0.0, this package is fully compatible with Laravel Octane and any long-lived worker environment (Swoole, RoadRunner, etc).
ASTCacheandSchemaSourceProviderare now registered withbindinstead ofsingletonto ensure a fresh context per request.- This change is required for correct schema resolution and cache separation in Octane/Swoole/RoadRunner.
⚠️ Breaking Change
If you relied on ASTCache or SchemaSourceProvider being singletons, please update your code accordingly.
From v2.0.0, these services are no longer singletons!
How to upgrade
- Clear all caches:
php artisan config:clear && php artisan cache:clear && php artisan lighthouse:clear-cache - Make sure you do not store the request object in any singleton or static property.
New in v2.0.0: Full support for Laravel Octane and long-lived workers!
v1.5.1
v1.5.0
Refactor multi-schema structure: introduced new classes for schema config, caching, and route registration. Removed deprecated service classes
Changes:
- Introduced GraphQLSchemaConfig for schema management based on request path.
- Added SchemaASTCache extending ASTCache for schema caching.
- Implemented GraphQLRouteRegister for dynamic route registration.
- Updated LighthouseMultiSchemaServiceProvider to use new classes and commands.
- Enhanced lighthouse:clear-cache to handle multi-schema cache clearing.
v1.4.0
Changes:
-
Using the request object at request time for the boot singletons rather than at initialization time
-
using the same methods that lighthouse used to register routes
v1.3.0
Changes:
- Updated
lighthouse-multi-schema.phpconfiguration to include amiddlewarearray for each schema. - Allows adding custom middleware to individual GraphQL schemas.
For more details, see the updated configuration file example.
v1.2.0
- Updated route configuration for GraphQL multi-schemas.
- Changed to
Route::match(['get', 'post', 'head'])to avoid duplicate route names. - Fixes LogicException during route caching.
- Fixed
php artisan route:cacheissue.