Skip to content

Releases: as-yakovenko/laravel-lighthouse-graphql-multi-schema

v2.2.0

25 Sep 21:35

Choose a tag to compare

🚀 **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 schemas
  • lighthouse: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

27 Jul 06:28
ae15d69

Choose a tag to compare

What's Changed

  • Fix: Compatibility with Lighthouse v6.22.2 (added Filesystem dependency)

v2.1.1

17 Jun 10:54

Choose a tag to compare

What's Changed

Fixed command conflict with lighthouse:clear-cache after upstream changes

  • Force override lighthouse:clear-cache command to support schema arguments
  • Maintain full backward compatibility

Usage remains the same:

  • php artisan lighthouse:clear-cache all - clear all schemas
  • php artisan lighthouse:clear-cache <schema> - clear specific schema

v2.1.0

17 Jun 10:26

Choose a tag to compare

What's Changed

  • Simplified SchemaASTCache by removing unused cache methods and improving path retrieval

v2.0.0

15 Jun 08:57

Choose a tag to compare

🚀 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).

  • ASTCache and SchemaSourceProvider are now registered with bind instead of singleton to 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

15 Mar 18:22

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.5.0...v1.5.1

v1.5.0

15 Nov 14:29

Choose a tag to compare

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

12 Nov 20:23
ea572f2

Choose a tag to compare

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

11 Sep 11:44

Choose a tag to compare

Changes:

  • Updated lighthouse-multi-schema.php configuration to include a middleware array for each schema.
  • Allows adding custom middleware to individual GraphQL schemas.

For more details, see the updated configuration file example.

v1.2.0

09 Sep 19:33

Choose a tag to compare

  • 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:cache issue.