@@ -38,6 +38,25 @@ class Application extends ApplicationBase
38
38
*/
39
39
protected $ cachePath ;
40
40
41
+ /**
42
+ * Begin configuring a new Laravel application instance.
43
+ *
44
+ * @param string|null $basePath
45
+ * @return \Illuminate\Foundation\Configuration\ApplicationBuilder
46
+ */
47
+ public static function configure ($ basePath = null )
48
+ {
49
+ if (!is_string ($ basePath )) {
50
+ $ basePath = static ::inferBasePath ();
51
+ }
52
+
53
+ return (new Configuration \ApplicationBuilder (new static ($ basePath )))
54
+ ->withKernels ()
55
+ ->withEvents ()
56
+ ->withCommands ()
57
+ ->withProviders ();
58
+ }
59
+
41
60
/**
42
61
* registerBaseServiceProviders registers all of the base service providers
43
62
*/
@@ -289,7 +308,7 @@ public function setLocale($locale)
289
308
*/
290
309
public function registerConfiguredProviders ()
291
310
{
292
- $ providers = Collection:: make ($ this ->config [ ' app.providers '] )
311
+ $ providers = ( new Collection ($ this ->make ( ' config ' )-> get ( ' app.providers ')) )
293
312
->partition (function ($ provider ) {
294
313
return strpos ($ provider , 'Illuminate \\' ) === 0 ||
295
314
strpos ($ provider , 'October \\Rain \\' ) === 0 ;
@@ -310,25 +329,27 @@ public function registerCoreContainerAliases()
310
329
{
311
330
$ aliases = [
312
331
'app ' => [\October \Rain \Foundation \Application::class, \Illuminate \Contracts \Container \Container::class, \Illuminate \Contracts \Foundation \Application::class],
332
+ 'auth ' => [\Illuminate \Auth \AuthManager::class, \Illuminate \Contracts \Auth \Factory::class],
333
+ 'auth.driver ' => [\Illuminate \Contracts \Auth \Guard::class],
313
334
'blade.compiler ' => [\Illuminate \View \Compilers \BladeCompiler::class],
314
335
'cache ' => [\Illuminate \Cache \CacheManager::class, \Illuminate \Contracts \Cache \Factory::class],
315
- 'cache.store ' => [\Illuminate \Cache \Repository::class, \Illuminate \Contracts \Cache \Repository::class],
336
+ 'cache.store ' => [\Illuminate \Cache \Repository::class, \Illuminate \Contracts \Cache \Repository::class, \ Psr \ SimpleCache \CacheInterface::class ],
316
337
'cache.psr6 ' => [\Symfony \Component \Cache \Adapter \Psr16Adapter::class, \Symfony \Component \Cache \Adapter \AdapterInterface::class, \Psr \Cache \CacheItemPoolInterface::class],
317
338
'config ' => [\Illuminate \Config \Repository::class, \Illuminate \Contracts \Config \Repository::class],
318
339
'cookie ' => [\Illuminate \Cookie \CookieJar::class, \Illuminate \Contracts \Cookie \Factory::class, \Illuminate \Contracts \Cookie \QueueingFactory::class],
319
- 'db ' => [\Illuminate \Database \DatabaseManager::class],
340
+ 'db ' => [\Illuminate \Database \DatabaseManager::class, \ Illuminate \ Database \ConnectionResolverInterface::class ],
320
341
'db.connection ' => [\Illuminate \Database \Connection::class, \Illuminate \Database \ConnectionInterface::class],
321
342
'db.schema ' => [\Illuminate \Database \Schema \Builder::class],
322
- 'encrypter ' => [\Illuminate \Encryption \Encrypter::class, \Illuminate \Contracts \Encryption \Encrypter::class],
323
- 'events ' => [\October \Rain \Events \Dispatcher::class, \Illuminate \Contracts \Events \Dispatcher::class],
343
+ 'encrypter ' => [\Illuminate \Encryption \Encrypter::class, \Illuminate \Contracts \Encryption \Encrypter::class, \ Illuminate \ Contracts \ Encryption \StringEncrypter::class ],
344
+ 'events ' => [\October \Rain \Events \Dispatcher::class, \Illuminate \Events \Dispatcher::class, \ Illuminate \ Contracts \Events \Dispatcher::class],
324
345
'files ' => [\October \Rain \Filesystem \Filesystem::class, \Illuminate \Filesystem \Filesystem::class],
325
346
'filesystem ' => [\Illuminate \Filesystem \FilesystemManager::class, \Illuminate \Contracts \Filesystem \Factory::class],
326
347
'filesystem.disk ' => [\Illuminate \Contracts \Filesystem \Filesystem::class],
327
348
'filesystem.cloud ' => [\Illuminate \Contracts \Filesystem \Cloud::class],
328
- 'hash ' => [\Illuminate \Contracts \ Hashing \Hasher ::class],
349
+ 'hash ' => [\Illuminate \Hashing \HashManager ::class],
329
350
'hash.driver ' => [\Illuminate \Contracts \Hashing \Hasher::class],
330
351
'translator ' => [\Illuminate \Translation \Translator::class, \Illuminate \Contracts \Translation \Translator::class],
331
- 'log ' => [\Illuminate \Log \Logger ::class, \Psr \Log \LoggerInterface::class],
352
+ 'log ' => [\Illuminate \Log \LogManager ::class, \Psr \Log \LoggerInterface::class],
332
353
'mail.manager ' => [\Illuminate \Mail \MailManager::class, \Illuminate \Contracts \Mail \Factory::class],
333
354
'mailer ' => [\Illuminate \Mail \Mailer::class, \Illuminate \Contracts \Mail \Mailer::class, \Illuminate \Contracts \Mail \MailQueue::class],
334
355
'auth.password ' => [\Illuminate \Auth \Passwords \PasswordBrokerManager::class, \Illuminate \Contracts \Auth \PasswordBrokerFactory::class],
0 commit comments