laravel-redis-sentinel-drivers icon indicating copy to clipboard operation
laravel-redis-sentinel-drivers copied to clipboard

Cache driver `redis-sentinel` not supported with Telescope

Open georgeboot opened this issue 5 years ago • 2 comments

This packages implementation is broken in Laravel 7. When you set your CACHE_DRIVER=redis-sentinel, it breaks with the following error:

  InvalidArgumentException 

  Driver [redis-sentinel] is not supported.

  at vendor/laravel/framework/src/Illuminate/Cache/CacheManager.php:110
    106|             if (method_exists($this, $driverMethod)) {
    107|                 return $this->{$driverMethod}($config);
    108|             } else {
    109|                 // dd(get_class($this), debug_backtrace(null, 2));
  > 110|                 throw new InvalidArgumentException("Driver [{$config['driver']}] is not supported.");
    111|             }
    112|         }
    113|     }
    114| 

      +15 vendor frames 
  16  [internal]:0
      Illuminate\Foundation\Application::Illuminate\Foundation\{closure}(Object(Laravel\Telescope\TelescopeServiceProvider))

      +5 vendor frames 
  22  artisan:35
      Illuminate\Foundation\Console\Kernel::handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))

georgeboot avatar Mar 23 '20 11:03 georgeboot

Looks like this is related to Laravel Telescope. If you have telescope package installed, it will clash.

georgeboot avatar Mar 23 '20 11:03 georgeboot

@georgeboot If you're using Laravel's package discovery and this package's automatic configuration, the Telescope service provider boots before this package installs the cache driver.

You can register the package's service provider manually in config/app.php so that it loads before other packages.

Another user found that installing Telescope as a dev dependency fixed the issue because those dependencies load after the application's runtime service providers.

cyrossignol avatar Mar 23 '20 15:03 cyrossignol