Skip to content

Upgrading laravel/framework 8 to 9

Breakingv8.83.29 → v9.52.23Breaking4Security3Platform1Deprecated1New345Changed280Fixed258Other14

Fetching 112 releases from GitHub…111 / 112
BreakingUpgrade verdict

4 breaking changes and a platform requirement change and 3 security fixes.

  • Removes __sleep() and __wakeup() from the SerializesModels trait.
  • The whereIn route registrar attribute added earlier is removed again.
  • A recent change to how relationship counts are loaded has been undone, restoring the earlier behavior.
  • Makes the name argument required in Illuminate/Testing/TestResponse::assertRedirectToRoute().
Top 5 of 9 that need code or config changes

laravel/framework publishes an official migration guide for version 9. It covers more than the release notes do.

Official Laravel Upgrade Documentation ↗

PHP requirement changed in v9.0.0-beta.1: ^7.3|^8.0 → ^8.0.2.

Breaking4
Removes __sleep() and __wakeup() from the SerializesModels trait.
SerializesModels__sleep()__wakeup()
Reverts adding whereIn to RouteRegistrar::allowedAttributes.
whereInIlluminate\Routing\RouteRegistrar::allowedAttributes
Reverts the standardization of withCount() and withExists() eager loading aggregates.
withCount()withExists()
Makes the name argument required in Illuminate/Testing/TestResponse::assertRedirectToRoute().
Illuminate/Testing/TestResponse::assertRedirectToRoute()
Security3
Laravel environment manipulation via query string
High · CVSS 0.0
Uses secure randomness in Arr::random and Arr::shuffle.
Arr::randomArr::shuffle
Patches a timeless timing attack vulnerability in user login.
Platform1
Ensures a Carbon version that supports PHP 8.2.
Carbon
Deprecated1
Deprecates Illuminate/Routing/Redirector::home().
Illuminate\Routing\Redirector::home()

Generated by DepDelta from published PHP source. Not mixed with prose notes.

  • removed: protected method EloquentUserProvider.firstCredentialKey(array $credentials)
  • removed: protected property DatabaseUserProvider.conn
  • changed: constructor DatabaseUserProvider(ConnectionInterface $conn, HasherContract $hasher, $table) → constructor DatabaseUserProvider(ConnectionInterface $connection, HasherContract $hasher, $table)
  • changed: constructor RequestGuard(callable $callback, Request $request, UserProvider $provider = …) → constructor RequestGuard(callable $callback, Request $request, ?UserProvider $provider = …)
  • changed: constructor SessionGuard($name, UserProvider $provider, Session $session, Request $request = …, Timebox $timebox = …) → constructor SessionGuard($name, UserProvider $provider, Session $session, ?Request $request = …, ?Timebox $timebox = …)
  • added: method EloquentUserProvider.getQueryCallback()
  • added: method EloquentUserProvider.withQuery($queryCallback = …)
  • added: method GuardHelpers.forgetUser()
  • added: method Recaller.segments()
  • added: protected property DatabaseUserProvider.connection
  • added: protected property EloquentUserProvider.queryCallback
  • changed: constructor AuthorizationException($message = …, $code = …, Throwable $previous = …) → constructor AuthorizationException($message = …, $code = …, ?Throwable $previous = …)
  • changed: constructor Gate(Container $container, callable $userResolver, array $abilities = …, array $policies = …, array $beforeCallbacks = …, array $afterCallbacks = …, callable $guessPolicyNamesUsingCallback = …) → constructor Gate(Container $container, callable $userResolver, array $abilities = …, array $policies = …, array $beforeCallbacks = …, array $afterCallbacks = …, ?callable $guessPolicyNamesUsingCallback = …)
  • changed: method Gate.resource($name, $class, array $abilities = …) → method Gate.resource($name, $class, ?array $abilities = …)
  • added: method AuthorizationException.asNotFound()
  • added: method AuthorizationException.hasStatus()
  • added: method AuthorizationException.status()
  • added: method AuthorizationException.withStatus($status)
  • added: method HandlesAuthorization.denyAsNotFound($message = …, $code = …)
  • added: method HandlesAuthorization.denyWithStatus($status, $message = …, $code = …)
  • added: method Response.asNotFound()
  • added: method Response.status()
  • added: method Response.withStatus($status)
  • added: protected property AuthorizationException.status
  • added: protected property Response.status
  • added: static method Response.denyAsNotFound($message = …, $code = …)
  • added: static method Response.denyWithStatus($status, $message = …, $code = …)
  • added: protected static property ClearResetsCommand.defaultName
  • changed: method RequirePassword.handle($request, Closure $next, $redirectToRoute = …) → method RequirePassword.handle($request, Closure $next, $redirectToRoute = …, $passwordTimeoutSeconds = …)
  • changed: protected method RequirePassword.shouldConfirmPassword($request) → protected method RequirePassword.shouldConfirmPassword($request, $passwordTimeoutSeconds = …)
  • changed: method PasswordBroker.sendResetLink(array $credentials, Closure $callback = …) → method PasswordBroker.sendResetLink(array $credentials, ?Closure $callback = …)
  • changed: method BroadcastManager.routes(array $attributes = …) → method BroadcastManager.routes(?array $attributes = …)
  • added: class UniqueBroadcastEvent extends BroadcastEvent implements ShouldBeUnique
  • added: constructor UniqueBroadcastEvent($event)
  • added: method BroadcastController.authenticateUser(Request $request)
  • added: method BroadcastManager.ably(array $config)
  • added: method BroadcastManager.channelRoutes(?array $attributes = …)
  • added: method BroadcastManager.pusher(array $config)
  • added: method BroadcastManager.userRoutes(?array $attributes = …)
  • added: method UniqueBroadcastEvent.uniqueVia()
  • added: property BroadcastEvent.backoff
  • added: property UniqueBroadcastEvent.uniqueFor
  • added: property UniqueBroadcastEvent.uniqueId
  • added: protected method BroadcastManager.mustBeUniqueAndCannotAcquireLock($event)
  • removed: protected method PusherBroadcaster.pusherServerIsVersionFiveOrGreater()
  • added: method Broadcaster.resolveAuthenticatedUser($request)
  • added: method Broadcaster.resolveAuthenticatedUserUsing(Closure $callback)
  • added: method PusherBroadcaster.resolveAuthenticatedUser($request)
  • added: protected property Broadcaster.authenticatedUserCallback
  • changed: constructor Dispatcher(Container $container, Closure $queueResolver = …) → constructor Dispatcher(Container $container, ?Closure $queueResolver = …)
  • changed: method Batch.jsonSerialize() → method Batch.jsonSerialize(): array
  • changed: protected method Batch.invokeHandlerCallback($handler, Batch $batch, Throwable $e = …) → protected method Batch.invokeHandlerCallback($handler, Batch $batch, ?Throwable $e = …)
  • added: method Batchable.withFakeBatch(string $id = …, string $name = …, int $totalJobs = …, int $pendingJobs = …, int $failedJobs = …, array $failedJobIds = …, array $options = …, ?CarbonImmutable $createdAt = …, ?CarbonImmutable $cancelledAt = …, ?CarbonImmutable $finishedAt = …)
  • added: method DatabaseBatchRepository.getConnection()
  • added: method DatabaseBatchRepository.pruneCancelled(DateTimeInterface $before)
  • added: method DatabaseBatchRepository.setConnection(Connection $connection)
  • added: method PendingBatch.dispatchAfterResponse()
  • added: method Queueable.appendToChain($job)
  • added: method Queueable.prependToChain($job)
  • added: method UniqueLock.release($job)
  • added: protected method PendingBatch.dispatchExistingBatch($batch)
  • added: protected method UniqueLock.getKey($job)
  • removed: protected method CacheManager.get($name)
  • changed: method Repository.clear() → method Repository.clear(): bool
  • changed: method Repository.delete($key) → method Repository.delete($key): bool
  • changed: method Repository.deleteMultiple($keys) → method Repository.deleteMultiple($keys): bool
  • changed: method Repository.get($key, $default = …) → method Repository.get($key, $default = …): mixed
  • changed: method Repository.getMultiple($keys, $default = …) → method Repository.getMultiple($keys, $default = …): iterable
  • changed: method Repository.has($key) → method Repository.has($key): bool
  • changed: method Repository.offsetExists($key) → method Repository.offsetExists($key): bool
  • changed: method Repository.offsetGet($key) → method Repository.offsetGet($key): mixed
  • changed: method Repository.offsetSet($key, $value) → method Repository.offsetSet($key, $value): void
  • changed: method Repository.offsetUnset($key) → method Repository.offsetUnset($key): void
  • changed: method Repository.set($key, $value, $ttl = …) → method Repository.set($key, $value, $ttl = …): bool
  • changed: method Repository.setMultiple($values, $ttl = …) → method Repository.setMultiple($values, $ttl = …): bool
  • added: class FileLock extends CacheLock
  • added: method FileLock.acquire()
  • added: method FileStore.lock($name, $seconds = …, $owner = …)
  • added: method FileStore.restoreLock($name, $owner)
  • added: protected static property CacheTableCommand.defaultName
  • added: protected static property ClearCommand.defaultName
  • added: protected static property ForgetCommand.defaultName
  • changed: method Repository.offsetExists($key) → method Repository.offsetExists($key): bool
  • changed: method Repository.offsetGet($key) → method Repository.offsetGet($key): mixed
  • changed: method Repository.offsetSet($key, $value) → method Repository.offsetSet($key, $value): void
  • changed: method Repository.offsetUnset($key) → method Repository.offsetUnset($key): void
  • changed: abstract class GeneratorCommand extends Command → abstract class GeneratorCommand extends Command implements PromptsForMissingInput
  • changed: class OutputStyle extends SymfonyStyle → class OutputStyle extends SymfonyStyle implements NewLineAware
  • changed: method Application.run(InputInterface $input = …, OutputInterface $output = …) → method Application.run(?InputInterface $input = …, ?OutputInterface $output = …): int
  • changed: method Command.isHidden() → method Command.isHidden(): bool
  • changed: method Command.run(InputInterface $input, OutputInterface $output) → method Command.run(InputInterface $input, OutputInterface $output): int
  • changed: method Command.setHidden(bool $hidden) → method Command.setHidden(bool $hidden = …): static
  • changed: method OutputStyle.isDebug() → method OutputStyle.isDebug(): bool
  • changed: method OutputStyle.isQuiet() → method OutputStyle.isQuiet(): bool
  • changed: method OutputStyle.isVerbose() → method OutputStyle.isVerbose(): bool
  • changed: method OutputStyle.isVeryVerbose() → method OutputStyle.isVeryVerbose(): bool
  • changed: protected method Application.getDefaultInputDefinition() → protected method Application.getDefaultInputDefinition(): InputDefinition
  • added: class CacheCommandMutex implements CommandMutex
  • added: class ContainerCommandLoader implements CommandLoaderInterface
  • added: class QuestionHelper extends SymfonyQuestionHelper
  • added: class Signals
  • added: constructor CacheCommandMutex(Cache $cache)
  • added: constructor ContainerCommandLoader(ContainerInterface $container, array $commandMap)
  • added: constructor Signals($registry)
  • added: interface CommandMutex
  • added: method Application.setContainerCommandLoader()
  • added: method CacheCommandMutex.create($command)
  • added: method CacheCommandMutex.exists($command)
  • added: method CacheCommandMutex.forget($command)
  • added: method CacheCommandMutex.useStore($store)
  • added: method CommandMutex.create($command)
  • added: method CommandMutex.exists($command)
  • added: method CommandMutex.forget($command)
  • added: method ContainerCommandLoader.get(string $name): Command
  • added: method ContainerCommandLoader.getNames(): array
  • added: method ContainerCommandLoader.has(string $name): bool
  • added: method OutputStyle.newLine(int $count = …)
  • added: method OutputStyle.newLineWritten()
  • added: method OutputStyle.write(string|iterable $messages, bool $newline = …, int $options = …)
  • added: method OutputStyle.writeln(string|iterable $messages, int $type = …)
  • added: method Signals.register($signal, $callback)
  • added: method Signals.unregister()
  • added: property CacheCommandMutex.cache
  • added: property CacheCommandMutex.store
  • added: protected method CacheCommandMutex.commandMutexName($command)
  • added: protected method Command.commandIsolationMutex()
  • added: protected method Command.configureIsolation()
  • added: protected method GeneratorCommand.possibleEvents()
  • added: protected method GeneratorCommand.possibleModels()
  • added: protected method GeneratorCommand.promptForMissingArgumentsUsing()
  • added: protected method QuestionHelper.ensureEndsWithPunctuation($string)
  • added: protected method QuestionHelper.writePrompt(OutputInterface $output, Question $question)
  • added: protected method Signals.getHandlers()
  • added: protected method Signals.initializeSignal($signal)
  • added: protected method Signals.setHandlers($handlers)
  • added: protected property Application.commandMap
  • added: protected property ContainerCommandLoader.commandMap
  • added: protected property ContainerCommandLoader.container
  • added: protected property OutputStyle.newLineWritten
  • added: protected property Signals.previousHandlers
  • added: protected property Signals.registry
  • added: protected static property Signals.availabilityResolver
  • added: static method Signals.resolveAvailabilityUsing($resolver)
  • added: static method Signals.whenAvailable($callback)
  • changed: method InteractsWithIO.alert($string) → method InteractsWithIO.alert($string, $verbosity = …)
  • added: method InteractsWithSignals.trap($signals, $callback)
  • added: method InteractsWithSignals.untrap()
  • added: protected method PromptsForMissingInput.afterPromptingForMissingArguments(InputInterface $input, OutputInterface $output)
  • added: protected method PromptsForMissingInput.didReceiveOptions(InputInterface $input)
  • added: protected method PromptsForMissingInput.interact(InputInterface $input, OutputInterface $output)
  • added: protected method PromptsForMissingInput.promptForMissingArguments(InputInterface $input, OutputInterface $output)
  • added: protected method PromptsForMissingInput.promptForMissingArgumentsUsing()
  • added: protected property InteractsWithIO.components
  • added: protected property InteractsWithSignals.signals
  • added: trait InteractsWithSignals
  • added: trait PromptsForMissingInput
  • added: interface NewLineAware
  • added: method NewLineAware.newLineWritten()
  • removed: method Event.callAfterCallbacksWithExitCode(Container $container, $exitCode)
  • removed: protected method Event.runCommandInBackground(Container $container)
  • removed: protected method Event.runCommandInForeground(Container $container)
  • removed: protected property ScheduleTestCommand.name
  • removed: protected property ScheduleWorkCommand.name
  • added: method CallbackEvent.runInBackground()
  • added: method CallbackEvent.shouldSkipDueToOverlapping()
  • added: method Event.createMutexNameUsing(Closure|string $mutexName)
  • added: method Event.finish(Container $container, $exitCode)
  • added: method Event.shouldSkipDueToOverlapping()
  • added: method ManagesFrequencies.everyOddHour()
  • added: method ManagesFrequencies.quarterlyOn($dayOfQuarter = …, $time = …)
  • added: property Event.mutexNameResolver
  • added: protected method CacheEventMutex.shouldUseLocks($store)
  • added: protected method CallbackEvent.execute($container)
  • added: protected method Event.execute($container)
  • added: protected method Event.start($container)
  • added: protected property CallbackEvent.exception
  • added: protected property CallbackEvent.result
  • added: protected property ScheduleRunCommand.phpBinary
  • added: protected property ScheduleTestCommand.signature
  • added: protected property ScheduleWorkCommand.signature
  • added: protected static property ScheduleFinishCommand.defaultName
  • added: protected static property ScheduleListCommand.defaultName
  • added: protected static property ScheduleListCommand.terminalWidthResolver
  • added: protected static property ScheduleRunCommand.defaultName
  • added: protected static property ScheduleTestCommand.defaultName
  • added: protected static property ScheduleWorkCommand.defaultName
  • added: static method ScheduleListCommand.getTerminalWidth()
  • added: static method ScheduleListCommand.resolveTerminalWidthUsing($resolver)
  • added: abstract class Component
  • added: class Alert extends Component
  • added: class Ask extends Component
  • added: class AskWithCompletion extends Component
  • added: class BulletList extends Component
  • added: class Choice extends Component
  • added: class Confirm extends Component
  • added: class Error extends Component
  • added: class Factory
  • added: class Info extends Component
  • added: class Line extends Component
  • added: class Task extends Component
  • added: class TwoColumnDetail extends Component
  • added: class Warn extends Component
  • added: constructor Component($output)
  • added: constructor Factory($output)
  • added: method Alert.render($string, $verbosity = …)
  • added: method Ask.render($question, $default = …)
  • added: method AskWithCompletion.render($question, $choices, $default = …)
  • added: method BulletList.render($elements, $verbosity = …)
  • added: method Choice.render($question, $choices, $default = …, $attempts = …, $multiple = …)
  • added: method Confirm.render($question, $default = …)
  • added: method Error.render($string, $verbosity = …)
  • added: method Factory.__call($method, $parameters)
  • added: method Info.render($string, $verbosity = …)
  • added: method Line.render($style, $string, $verbosity = …)
  • added: method Task.render($description, $task = …, $verbosity = …)
  • added: method TwoColumnDetail.render($first, $second = …, $verbosity = …)
  • added: method Warn.render($string, $verbosity = …)
  • added: protected method Component.compile($view, $data)
  • added: protected method Component.mutate($data, $mutators)
  • added: protected method Component.renderView($view, $data, $verbosity)
  • added: protected method Component.usingQuestionHelper($callable)
  • added: protected property Component.mutators
  • added: protected property Component.output
  • added: protected property Factory.output
  • added: protected static property Line.styles
  • added: class EnsureDynamicContentIsHighlighted
  • added: class EnsureNoPunctuation
  • added: class EnsurePunctuation
  • added: class EnsureRelativePaths
  • added: method EnsureDynamicContentIsHighlighted.__invoke($string)
  • added: method EnsureNoPunctuation.__invoke($string)
  • added: method EnsurePunctuation.__invoke($string)
  • added: method EnsureRelativePaths.__invoke($string)
  • changed: method Container.afterResolving($abstract, Closure $callback = …) → method Container.afterResolving($abstract, ?Closure $callback = …)
  • changed: method Container.beforeResolving($abstract, Closure $callback = …) → method Container.beforeResolving($abstract, ?Closure $callback = …)
  • changed: method Container.get($id) → method Container.get(string $id)
  • changed: method Container.has($id) → method Container.has(string $id): bool
  • changed: method Container.offsetExists($key) → method Container.offsetExists($key): bool
  • changed: method Container.offsetGet($key) → method Container.offsetGet($key): mixed
  • changed: method Container.offsetSet($key, $value) → method Container.offsetSet($key, $value): void
  • changed: method Container.offsetUnset($key) → method Container.offsetUnset($key): void
  • changed: method Container.resolving($abstract, Closure $callback = …) → method Container.resolving($abstract, ?Closure $callback = …)
  • changed: method RewindableGenerator.count() → method RewindableGenerator.count(): int
  • changed: method RewindableGenerator.getIterator() → method RewindableGenerator.getIterator(): Traversable
  • changed: static method Container.setInstance(ContainerContract $container = …) → static method Container.setInstance(?ContainerContract $container = …)
  • changed: static method Util.unwrapIfClosure($value) → static method Util.unwrapIfClosure($value, ...$args)
  • changed: method PasswordBroker.sendResetLink(array $credentials, Closure $callback = …) → method PasswordBroker.sendResetLink(array $credentials, ?Closure $callback = …)
  • added: method Guard.hasUser()
  • changed: method Gate.resource($name, $class, array $abilities = …) → method Gate.resource($name, $class, ?array $abilities = …)
  • added: interface ShouldBeUnique
  • added: interface Isolatable
  • added: interface PromptsForMissingInput
  • changed: method Container.afterResolving($abstract, Closure $callback = …) → method Container.afterResolving($abstract, ?Closure $callback = …)
  • changed: method Container.resolving($abstract, Closure $callback = …) → method Container.resolving($abstract, ?Closure $callback = …)
  • added: method Container.beforeResolving($abstract, ?Closure $callback = …)
  • added: method Container.scoped($abstract, $concrete = …)
  • added: method Container.scopedIf($abstract, $concrete = …)
  • added: method ContextualBindingBuilder.giveConfig($key, $default = …)
  • added: method ModelIdentifier.useCollectionClass(?string $collectionClass)
  • added: property ModelIdentifier.collectionClass
  • added: interface Builder extends BaseContract
  • added: interface Builder
  • added: method Encrypter.getKey()
  • removed: class FileExistsException extends Exception
  • changed: method Application.storagePath() → method Application.storagePath($path = …)
  • added: interface ExceptionRenderer
  • added: interface MaintenanceMode
  • added: method Application.maintenanceMode()
  • added: method Application.terminating($callback)
  • added: method ExceptionRenderer.render($throwable)
  • added: method MaintenanceMode.activate(array $payload): void
  • added: method MaintenanceMode.active(): bool
  • added: method MaintenanceMode.data(): array
  • added: method MaintenanceMode.deactivate(): void
  • removed: method Mailer.failures()
  • added: interface Attachable
  • added: method Attachable.toMailAttachment()
  • added: method UrlGenerator.getRootControllerNamespace()
  • added: interface AuthenticatesSessions
  • added: interface InvokableRule
  • added: method InvokableRule.__invoke($attribute, $value, $fail)
  • added: class ViewCompilationException extends Exception
  • added: static method CookieValuePrefix.validate($cookieName, $cookieValue, $key)
  • added: protected method EncryptCookies.validateArray(string $key, array $value)
  • added: protected method EncryptCookies.validateValue(string $key, $value)
  • removed: method PostgresConnection.bindValues($statement, $bindings)
  • changed: method Connection.registerDoctrineType(string $class, string $name, string $type): void → method Connection.registerDoctrineType(Type|string $class, string $name, string $type): void
  • changed: method MySqlConnection.getSchemaState(Filesystem $files = …, callable $processFactory = …) → method MySqlConnection.getSchemaState(?Filesystem $files = …, ?callable $processFactory = …)
  • changed: method PostgresConnection.getSchemaState(Filesystem $files = …, callable $processFactory = …) → method PostgresConnection.getSchemaState(?Filesystem $files = …, ?callable $processFactory = …)
  • changed: method SQLiteConnection.getSchemaState(Filesystem $files = …, callable $processFactory = …) → method SQLiteConnection.getSchemaState(?Filesystem $files = …, ?callable $processFactory = …)
  • changed: method SqlServerConnection.getSchemaState(Filesystem $files = …, callable $processFactory = …) → method SqlServerConnection.getSchemaState(?Filesystem $files = …, ?callable $processFactory = …)
  • added: class DeadlockException extends PDOException
  • added: class LostConnectionException extends LogicException
  • added: class MultipleColumnsSelectedException extends RuntimeException
  • added: class SQLiteDatabaseDoesNotExistException extends InvalidArgumentException
  • added: constructor MultipleRecordsFoundException($count, $code = …, $previous = …)
  • added: constructor SQLiteDatabaseDoesNotExistException($path)
  • added: method Connection.allowQueryDurationHandlersToRunAgain()
  • added: method Connection.resetTotalQueryDuration()
  • added: method Connection.scalar($query, $bindings = …, $useReadPdo = …)
  • added: method Connection.totalQueryDuration()
  • added: method Connection.usingNativeSchemaOperations()
  • added: method Connection.whenQueryingForLongerThan($threshold, $handler)
  • added: method DatabaseManager.forgetExtension($name)
  • added: method DatabaseTransactionsManager.callbackApplicableTransactions()
  • added: method DatabaseTransactionsManager.callbacksShouldIgnore(DatabaseTransactionRecord $transaction)
  • added: method MultipleRecordsFoundException.getCount()
  • added: method Seeder.callOnce($class, $silent = …, array $parameters = …)
  • added: property MultipleRecordsFoundException.count
  • added: property SQLiteDatabaseDoesNotExistException.path
  • added: protected method Grammar.isJsonSelector($value)
  • added: protected method Grammar.wrapJsonSelector($value)
  • added: protected property Connection.queryDurationHandlers
  • added: protected property Connection.totalQueryDuration
  • added: protected property DatabaseTransactionsManager.callbacksShouldIgnore
  • added: protected static property Seeder.called
  • changed: constructor Manager(Container $container = …) → constructor Manager(?Container $container = …)
  • added: protected method CompilesJsonPaths.wrapJsonFieldAndPath($column)
  • added: protected method CompilesJsonPaths.wrapJsonPath($value, $delimiter = …)
  • added: protected method CompilesJsonPaths.wrapJsonPathSegment($segment)
  • added: protected method ManagesTransactions.afterCommitCallbacksShouldBeExecuted()
  • added: protected method ParsesSearchPath.parseSearchPath($searchPath)
  • added: trait CompilesJsonPaths
  • added: trait ParsesSearchPath
  • removed: protected method PostgresConnector.configureSchema($connection, $config)
  • removed: protected method PostgresConnector.formatSchema($schema)
  • added: protected method PostgresConnector.configureSearchPath($connection, $config)
  • added: protected method PostgresConnector.quoteSearchPath($searchPath)
  • added: protected method SqlServerConnector.configureIsolationLevel($connection, array $config)
  • added: abstract class DatabaseInspectionCommand extends Command
  • added: class MonitorCommand extends DatabaseInspectionCommand
  • added: class ShowCommand extends DatabaseInspectionCommand
  • added: class TableCommand extends DatabaseInspectionCommand
  • added: constructor DatabaseInspectionCommand(?Composer $composer = …)
  • added: constructor MonitorCommand(ConnectionResolverInterface $connection, Dispatcher $events, Composer $composer)
  • added: method MonitorCommand.handle()
  • added: method ShowCommand.handle(ConnectionResolverInterface $connections)
  • added: method TableCommand.handle(ConnectionResolverInterface $connections)
  • added: protected method DatabaseInspectionCommand.ensureDependenciesExist()
  • added: protected method DatabaseInspectionCommand.getConfigFromDatabase($database)
  • added: protected method DatabaseInspectionCommand.getConnectionCount(ConnectionInterface $connection)
  • added: protected method DatabaseInspectionCommand.getMySQLTableSize(ConnectionInterface $connection, string $table)
  • added: protected method DatabaseInspectionCommand.getPlatformName(AbstractPlatform $platform, $database)
  • added: protected method DatabaseInspectionCommand.getPostgresTableSize(ConnectionInterface $connection, string $table)
  • added: protected method DatabaseInspectionCommand.getSqliteTableSize(ConnectionInterface $connection, string $table)
  • added: protected method DatabaseInspectionCommand.getTableSize(ConnectionInterface $connection, string $table)
  • added: protected method DatabaseInspectionCommand.installDependencies()
  • added: protected method DatabaseInspectionCommand.registerTypeMappings(AbstractPlatform $platform)
  • added: protected method MonitorCommand.dispatchEvents($databases)
  • added: protected method MonitorCommand.displayConnections($databases)
  • added: protected method MonitorCommand.parseDatabases($databases)
  • added: protected method PruneCommand.pruneModel(string $model)
  • added: protected method ShowCommand.collectViews(ConnectionInterface $connection, AbstractSchemaManager $schema)
  • added: protected method ShowCommand.display(array $data)
  • added: protected method ShowCommand.displayForCli(array $data)
  • added: protected method ShowCommand.displayJson(array $data)
  • added: protected method ShowCommand.tables(ConnectionInterface $connection, AbstractSchemaManager $schema)
  • added: protected method TableCommand.columns(Table $table)
  • added: protected method TableCommand.display(array $data)
  • added: protected method TableCommand.displayForCli(array $data)
  • added: protected method TableCommand.displayJson(array $data)
  • added: protected method TableCommand.foreignKeys(Table $table)
  • added: protected method TableCommand.getAttributesForColumn(Column $column)
  • added: protected method TableCommand.getAttributesForIndex(Index $index)
  • added: protected method TableCommand.indexes(Table $table)
  • added: protected property DatabaseInspectionCommand.composer
  • added: protected property DatabaseInspectionCommand.typeMappings
  • added: protected property MonitorCommand.connection
  • added: protected property MonitorCommand.description
  • added: protected property MonitorCommand.events
  • added: protected property MonitorCommand.signature
  • added: protected property ShowCommand.description
  • added: protected property ShowCommand.signature
  • added: protected property TableCommand.description
  • added: protected property TableCommand.signature
  • added: protected static property DumpCommand.defaultName
  • added: protected static property MonitorCommand.defaultName
  • added: protected static property WipeCommand.defaultName
  • added: protected static property FactoryMakeCommand.defaultName
  • changed: class MigrateCommand extends BaseCommand → class MigrateCommand extends BaseCommand implements Isolatable
  • changed: class MigrateMakeCommand extends BaseCommand → class MigrateMakeCommand extends BaseCommand implements PromptsForMissingInput
  • added: protected method MigrateCommand.createMissingMysqlDatabase($connection)
  • added: protected method MigrateCommand.createMissingSqliteDatbase($path)
  • added: protected method MigrateCommand.repositoryExists()
  • added: protected method MigrateMakeCommand.promptForMissingArgumentsUsing()
  • removed: protected method SeederMakeCommand.qualifyClass($name)
  • added: method WithoutModelEvents.withoutModelEvents(callable $callback)
  • added: protected method SeederMakeCommand.rootNamespace()
  • added: protected static property SeedCommand.defaultName
  • added: protected static property SeederMakeCommand.defaultName
  • added: trait WithoutModelEvents
  • changed: class Builder → class Builder implements BuilderContract
  • changed: method Builder.firstOr($columns = …, Closure $callback = …) → method Builder.firstOr($columns = …, ?Closure $callback = …)
  • changed: method Builder.withoutGlobalScopes(array $scopes = …) → method Builder.withoutGlobalScopes(?array $scopes = …)
  • changed: method Model.jsonSerialize() → method Model.jsonSerialize(): mixed
  • changed: method Model.offsetExists($offset) → method Model.offsetExists($offset): bool
  • changed: method Model.offsetGet($offset) → method Model.offsetGet($offset): mixed
  • changed: method Model.offsetSet($offset, $value) → method Model.offsetSet($offset, $value): void
  • changed: method Model.offsetUnset($offset) → method Model.offsetUnset($offset): void
  • changed: method Model.replicate(array $except = …) → method Model.replicate(?array $except = …)
  • added: class MissingAttributeException extends OutOfBoundsException
  • added: class PendingHasThroughRelationship
  • added: constructor MissingAttributeException($model, $key)
  • added: constructor PendingHasThroughRelationship($rootModel, $localRelationship)
  • added: method Builder.findOr($id, $columns = …, ?Closure $callback = …)
  • added: method Builder.orWhereNot($column, $operator = …, $value = …)
  • added: method Builder.soleValue($column)
  • added: method Builder.touch($column = …)
  • added: method Builder.whereNot($column, $operator = …, $value = …, $boolean = …)
  • added: method Builder.withoutEagerLoad(array $relations)
  • added: method Builder.withoutEagerLoads()
  • added: method Collection.countBy($countBy = …)
  • added: method Collection.setHidden($hidden)
  • added: method Collection.setVisible($visible)
  • added: method Model.deleteQuietly()
  • added: method Model.pushQuietly()
  • added: method Model.replicateQuietly(?array $except = …)
  • added: method PendingHasThroughRelationship.__call($method, $parameters)
  • added: method PendingHasThroughRelationship.has($callback)
  • added: method SoftDeletes.forceDeleteQuietly()
  • added: method SoftDeletes.restoreQuietly()
  • added: property BroadcastableModelEventOccurred.afterCommit
  • added: protected method Builder.combineConstraints(array $constraints)
  • added: protected method Builder.parseNameAndAttributeSelectionConstraint($name)
  • added: protected method Builder.prepareNestedWithRelationships($relations, $prefix = …)
  • added: protected method Collection.getQueueableModelClass($model)
  • added: protected method Model.childRouteBindingRelationshipName($childType)
  • added: protected method Model.decrementQuietly($column, $amount = …, array $extra = …)
  • added: protected method Model.incrementQuietly($column, $amount = …, array $extra = …)
  • added: protected method SoftDeletingScope.addRestoreOrCreate(Builder $builder)
  • added: protected property PendingHasThroughRelationship.localRelationship
  • added: protected property PendingHasThroughRelationship.rootModel
  • added: protected static property Model.discardedAttributeViolationCallback
  • added: protected static property Model.missingAttributeViolationCallback
  • added: protected static property Model.modelsShouldPreventAccessingMissingAttributes
  • added: protected static property Model.modelsShouldPreventSilentlyDiscardingAttributes
  • added: static method Model.handleDiscardedAttributeViolationUsing(?callable $callback)
  • added: static method Model.handleMissingAttributeViolationUsing(?callable $callback)
  • added: static method Model.preventAccessingMissingAttributes($value = …)
  • added: static method Model.preventSilentlyDiscardingAttributes($value = …)
  • added: static method Model.preventsAccessingMissingAttributes()
  • added: static method Model.preventsSilentlyDiscardingAttributes()
  • added: static method Model.shouldBeStrict(bool $shouldBeStrict = …)
  • added: static method SoftDeletes.forceDeleting($callback)
  • changed: constructor Attribute(callable $get = …, callable $set = …) → constructor Attribute(?callable $get = …, ?callable $set = …)
  • changed: method ArrayObject.jsonSerialize() → method ArrayObject.jsonSerialize(): array
  • added: class AsEnumArrayObject implements Castable
  • added: class AsEnumCollection implements Castable
  • added: method Attribute.shouldCache()
  • added: property Attribute.withCaching
  • added: static method AsEnumArrayObject.castUsing(array $arguments)
  • added: static method AsEnumCollection.castUsing(array $arguments)
  • added: static method Attribute.make(?callable $get = …, ?callable $set = …): static
  • changed: method HasTimestamps.touch() → method HasTimestamps.touch($attribute = …)
  • changed: method QueriesRelationships.doesntHave($relation, $boolean = …, Closure $callback = …) → method QueriesRelationships.doesntHave($relation, $boolean = …, ?Closure $callback = …)
  • changed: method QueriesRelationships.doesntHaveMorph($relation, $types, $boolean = …, Closure $callback = …) → method QueriesRelationships.doesntHaveMorph($relation, $types, $boolean = …, ?Closure $callback = …)
  • changed: method QueriesRelationships.has($relation, $operator = …, $count = …, $boolean = …, Closure $callback = …) → method QueriesRelationships.has($relation, $operator = …, $count = …, $boolean = …, ?Closure $callback = …)
  • changed: method QueriesRelationships.hasMorph($relation, $types, $operator = …, $count = …, $boolean = …, Closure $callback = …) → method QueriesRelationships.hasMorph($relation, $types, $operator = …, $count = …, $boolean = …, ?Closure $callback = …)
  • changed: method QueriesRelationships.orWhereDoesntHave($relation, Closure $callback = …) → method QueriesRelationships.orWhereDoesntHave($relation, ?Closure $callback = …)
  • changed: method QueriesRelationships.orWhereDoesntHaveMorph($relation, $types, Closure $callback = …) → method QueriesRelationships.orWhereDoesntHaveMorph($relation, $types, ?Closure $callback = …)
  • changed: method QueriesRelationships.orWhereHas($relation, Closure $callback = …, $operator = …, $count = …) → method QueriesRelationships.orWhereHas($relation, ?Closure $callback = …, $operator = …, $count = …)
  • changed: method QueriesRelationships.orWhereHasMorph($relation, $types, Closure $callback = …, $operator = …, $count = …) → method QueriesRelationships.orWhereHasMorph($relation, $types, ?Closure $callback = …, $operator = …, $count = …)
  • changed: method QueriesRelationships.whereDoesntHave($relation, Closure $callback = …) → method QueriesRelationships.whereDoesntHave($relation, ?Closure $callback = …)
  • changed: method QueriesRelationships.whereDoesntHaveMorph($relation, $types, Closure $callback = …) → method QueriesRelationships.whereDoesntHaveMorph($relation, $types, ?Closure $callback = …)
  • changed: method QueriesRelationships.whereHas($relation, Closure $callback = …, $operator = …, $count = …) → method QueriesRelationships.whereHas($relation, ?Closure $callback = …, $operator = …, $count = …)
  • changed: method QueriesRelationships.whereHasMorph($relation, $types, Closure $callback = …, $operator = …, $count = …) → method QueriesRelationships.whereHasMorph($relation, $types, ?Closure $callback = …, $operator = …, $count = …)
  • changed: static method HasAttributes.cacheMutatedAttributes($class) → static method HasAttributes.cacheMutatedAttributes($classOrInstance)
  • changed: static method HasGlobalScopes.addGlobalScope($scope, Closure $implementation = …) → static method HasGlobalScopes.addGlobalScope($scope, $implementation = …)
  • added: method HasAttributes.discardChanges()
  • added: method HasAttributes.getAppends()
  • added: method HasRelationships.relationResolver($class, $key)
  • added: method HasRelationships.through($relationship)
  • added: method HasTimestamps.touchQuietly($attribute = …)
  • added: method HasUlids.getIncrementing()
  • added: method HasUlids.getKeyType()
  • added: method HasUlids.newUniqueId()
  • added: method HasUlids.resolveRouteBindingQuery($query, $value, $field = …)
  • added: method HasUlids.uniqueIds()
  • added: method HasUuids.getIncrementing()
  • added: method HasUuids.getKeyType()
  • added: method HasUuids.newUniqueId()
  • added: method HasUuids.resolveRouteBindingQuery($query, $value, $field = …)
  • added: method HasUuids.uniqueIds()
  • added: method QueriesRelationships.orWhereNotMorphedTo($relation, $model)
  • added: method QueriesRelationships.whereNotMorphedTo($relation, $model, $boolean = …)
  • added: method QueriesRelationships.withWhereHas($relation, ?Closure $callback = …, $operator = …, $count = …)
  • added: protected method HasAttributes.getEnumCaseFromValue($enumClass, $value)
  • added: protected method HasAttributes.getStorableEnumValue($value)
  • added: protected method HasAttributes.throwMissingAttributeExceptionIfApplicable($key)
  • added: protected method HasRelationships.newRelatedThroughInstance($class)
  • added: protected method QueriesRelationships.getRelationHashedColumn($column, $relation)
  • added: protected method QueriesRelationships.requalifyWhereTables(array $wheres, string $from, string $to): array
  • added: protected static property HasAttributes.castTypeCache
  • added: protected static property HasTimestamps.ignoreTimestampsOn
  • added: static method HasTimestamps.isIgnoringTimestamps($class = …)
  • added: static method HasTimestamps.withoutTimestamps(callable $callback)
  • added: static method HasTimestamps.withoutTimestampsOn($models, $callback)
  • added: static method HasUlids.bootHasUlids()
  • added: static method HasUuids.bootHasUuids()
  • added: trait HasUlids
  • added: trait HasUuids
  • changed: constructor Factory($count = …, ?Collection $states = …, ?Collection $has = …, ?Collection $for = …, ?Collection $afterMaking = …, ?Collection $afterCreating = …, $connection = …) → constructor Factory($count = …, ?Collection $states = …, ?Collection $has = …, ?Collection $for = …, ?Collection $afterMaking = …, ?Collection $afterCreating = …, $connection = …, ?Collection $recycle = …)
  • changed: static method HasFactory.factory(...$parameters) → static method HasFactory.factory($count = …, $state = …)
  • added: method BelongsToManyRelationship.recycle($recycle)
  • added: method BelongsToRelationship.recycle($recycle)
  • added: method Factory.forEachSequence(...$sequence)
  • added: method Factory.getRandomRecycledModel($modelClassName)
  • added: method Factory.recycle($model)
  • added: method Factory.set($key, $value)
  • added: method Relationship.recycle($recycle)
  • added: protected property Factory.recycle
  • changed: abstract class Relation → abstract class Relation implements BuilderContract
  • changed: method BelongsToMany.firstOr($columns = …, Closure $callback = …) → method BelongsToMany.firstOr($columns = …, ?Closure $callback = …)
  • changed: method BelongsToMany.firstOrCreate(array $attributes, array $joining = …, $touch = …) → method BelongsToMany.firstOrCreate(array $attributes = …, array $values = …, array $joining = …, $touch = …)
  • changed: method BelongsToMany.firstOrNew(array $attributes) → method BelongsToMany.firstOrNew(array $attributes = …, array $values = …)
  • changed: protected method HasManyThrough.performJoin(Builder $query = …) → protected method HasManyThrough.performJoin(?Builder $query = …)
  • changed: protected static method Relation.buildMorphMapFromModels(array $models = …) → protected static method Relation.buildMorphMapFromModels(?array $models = …)
  • changed: static method Relation.morphMap(array $map = …, $merge = …) → static method Relation.morphMap(?array $map = …, $merge = …)
  • added: method BelongsToMany.findOr($id, $columns = …, ?Closure $callback = …)
  • added: method BelongsToMany.saveManyQuietly($models, array $pivotAttributes = …)
  • added: method BelongsToMany.saveQuietly(Model $model, array $pivotAttributes = …, $touch = …)
  • added: method HasManyThrough.findOr($id, $columns = …, ?Closure $callback = …)
  • added: method HasManyThrough.firstOr($columns = …, ?Closure $callback = …)
  • added: method HasOneOrMany.createManyQuietly(iterable $records)
  • added: method HasOneOrMany.createQuietly(array $attributes = …)
  • added: method HasOneOrMany.saveManyQuietly($models)
  • added: method HasOneOrMany.saveQuietly(Model $model)
  • added: method Relation.toBase()
  • added: class ConnectionEstablished extends ConnectionEvent
  • added: class DatabaseBusy
  • added: class TransactionCommitting extends ConnectionEvent
  • added: constructor DatabaseBusy($connectionName, $connections)
  • added: property DatabaseBusy.connectionName
  • added: property DatabaseBusy.connections
  • removed: protected method Migrator.note($message)
  • changed: constructor Migrator(MigrationRepositoryInterface $repository, Resolver $resolver, Filesystem $files, Dispatcher $dispatcher = …) → constructor Migrator(MigrationRepositoryInterface $repository, Resolver $resolver, Filesystem $files, ?Dispatcher $dispatcher = …)
  • changed: protected method MigrationCreator.firePostCreateHooks($table) → protected method MigrationCreator.firePostCreateHooks($table, $path)
  • changed: protected method MigrationCreator.populateStub($name, $stub, $table) → protected method MigrationCreator.populateStub($stub, $table)
  • added: protected method Migrator.write($component, ...$arguments)
  • added: protected static property Migrator.connectionResolverCallback
  • added: protected static property Migrator.requiredPathCache
  • added: static method Migrator.resolveConnectionsUsing(Closure $callback)
  • changed: method SqlServerDriver.connect(array $params) → method SqlServerDriver.connect(array $params, $username = …, $password = …, array $driverOptions = …)
  • added: method MySqlDriver.getName()
  • added: method PostgresDriver.getName()
  • added: method SQLiteDriver.getName()
  • added: method SqlServerDriver.getName()
  • changed: method ConnectsToDatabase.connect(array $params) → method ConnectsToDatabase.connect(array $params, $username = …, $password = …, array $driverOptions = …)
  • changed: class Builder → class Builder implements BuilderContract
  • changed: constructor Builder(ConnectionInterface $connection, Grammar $grammar = …, Processor $processor = …) → constructor Builder(ConnectionInterface $connection, ?Grammar $grammar = …, ?Processor $processor = …)
  • changed: method Builder.orWhereBetween($column, array $values) → method Builder.orWhereBetween($column, iterable $values)
  • changed: method Builder.orWhereNotBetween($column, array $values) → method Builder.orWhereNotBetween($column, iterable $values)
  • changed: method Builder.whereBetween($column, array $values, $boolean = …, $not = …) → method Builder.whereBetween($column, iterable $values, $boolean = …, $not = …)
  • changed: method Builder.whereNotBetween($column, array $values, $boolean = …) → method Builder.whereNotBetween($column, iterable $values, $boolean = …)
  • added: class IndexHint
  • added: constructor IndexHint($type, $index)
  • added: method Builder.addNestedHavingQuery($query, $boolean = …)
  • added: method Builder.decrementEach(array $columns, array $extra = …)
  • added: method Builder.findOr($id, $columns = …, ?Closure $callback = …)
  • added: method Builder.forceIndex($index)
  • added: method Builder.havingNested(Closure $callback, $boolean = …)
  • added: method Builder.havingNotNull($columns, $boolean = …)
  • added: method Builder.havingNull($columns, $boolean = …, $not = …)
  • added: method Builder.ignoreIndex($index)
  • added: method Builder.incrementEach(array $columns, array $extra = …)
  • added: method Builder.orHavingNotNull($column)
  • added: method Builder.orHavingNull($column)
  • added: method Builder.orWhereJsonContainsKey($column)
  • added: method Builder.orWhereJsonDoesntContainKey($column)
  • added: method Builder.orWhereNot($column, $operator = …, $value = …)
  • added: method Builder.rawValue(string $expression, array $bindings = …)
  • added: method Builder.soleValue($column)
  • added: method Builder.useIndex($index)
  • added: method Builder.whereJsonContainsKey($column, $boolean = …, $not = …)
  • added: method Builder.whereJsonDoesntContainKey($column, $boolean = …)
  • added: method Builder.whereNot($column, $operator = …, $value = …, $boolean = …)
  • added: property Builder.indexHint
  • added: property IndexHint.index
  • added: property IndexHint.type
  • removed: method Grammar.wrap($value, $prefixAlias = …)
  • removed: protected method Grammar.isJsonSelector($value)
  • removed: protected method Grammar.wrapJsonFieldAndPath($column)
  • removed: protected method Grammar.wrapJsonPath($value, $delimiter = …)
  • removed: protected method Grammar.wrapJsonSelector($value)
  • changed: protected method Grammar.compileHavings(Builder $query, $havings) → protected method Grammar.compileHavings(Builder $query)
  • added: method Grammar.compileJsonValueCast($value)
  • added: method MySqlGrammar.compileJsonValueCast($value)
  • added: method SqlServerGrammar.compileJsonValueCast($value)
  • added: protected method Grammar.compileHavingBit($having)
  • added: protected method Grammar.compileHavingNotNull($having)
  • added: protected method Grammar.compileHavingNull($having)
  • added: protected method Grammar.compileJsonContainsKey($column)
  • added: protected method Grammar.compileNestedHavings($having)
  • added: protected method Grammar.whereJsonContainsKey(Builder $query, $where)
  • added: protected method MySqlGrammar.compileIndexHint(Builder $query, $indexHint)
  • added: protected method MySqlGrammar.compileJsonContainsKey($column)
  • added: protected method PostgresGrammar.compileJsonContainsKey($column)
  • added: protected method PostgresGrammar.parseJsonPathArrayKeys($attribute)
  • added: protected method SQLiteGrammar.compileIndexHint(Builder $query, $indexHint)
  • added: protected method SQLiteGrammar.compileJsonContainsKey($column)
  • added: protected method SqlServerGrammar.compileIndexHint(Builder $query, $indexHint)
  • added: protected method SqlServerGrammar.compileJsonContainsKey($column)
  • removed: method Builder.registerCustomDoctrineType($class, $name, $type)
  • changed: constructor Blueprint($table, Closure $callback = …, $prefix = …) → constructor Blueprint($table, ?Closure $callback = …, $prefix = …)
  • changed: constructor SchemaState(Connection $connection, Filesystem $files = …, callable $processFactory = …) → constructor SchemaState(Connection $connection, ?Filesystem $files = …, ?callable $processFactory = …)
  • changed: method Blueprint.ipAddress($column) → method Blueprint.ipAddress($column = …)
  • changed: method Blueprint.macAddress($column) → method Blueprint.macAddress($column = …)
  • changed: method Blueprint.uuid($column) → method Blueprint.uuid($column = …)
  • changed: protected method Builder.createBlueprint($table, Closure $callback = …) → protected method Builder.createBlueprint($table, ?Closure $callback = …)
  • changed: protected method PostgresBuilder.parseSchemaAndTable($table) → protected method PostgresBuilder.parseSchemaAndTable($reference)
  • added: class IndexDefinition extends Fluent
  • added: method Blueprint.comment($comment)
  • added: method Blueprint.dropConstrainedForeignIdFor($model, $column = …)
  • added: method Blueprint.dropForeignIdFor($model, $column = …)
  • added: method Blueprint.foreignUlid($column, $length = …)
  • added: method Blueprint.nullableUlidMorphs($name, $indexName = …)
  • added: method Blueprint.ulid($column = …, $length = …)
  • added: method Blueprint.ulidMorphs($name, $indexName = …)
  • added: method Builder.whenTableDoesntHaveColumn(string $table, string $column, Closure $callback)
  • added: method Builder.whenTableHasColumn(string $table, string $column, Closure $callback)
  • added: method Builder.withoutForeignKeyConstraints(Closure $callback)
  • added: method ForeignKeyDefinition.noActionOnDelete()
  • added: method SQLiteBuilder.getAllTables()
  • added: method SQLiteBuilder.getAllViews()
  • added: method SqlServerBuilder.getAllTables()
  • added: method SqlServerBuilder.getAllViews()
  • added: protected method PostgresBuilder.parseSearchPath($searchPath)
  • added: static method Builder.morphUsingUlids()
  • added: static method Builder.useNativeSchemaOperationsIfPossible(bool $value = …)
  • added: static property Builder.alwaysUsesNativeSchemaOperationsIfPossible
  • changed: method PostgresGrammar.compileGetAllTables($schema) → method PostgresGrammar.compileGetAllTables($searchPath)
  • changed: method PostgresGrammar.compileGetAllViews($schema) → method PostgresGrammar.compileGetAllViews($searchPath)
  • added: method MySqlGrammar.compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
  • added: method MySqlGrammar.compileTableComment(Blueprint $blueprint, Fluent $command)
  • added: method PostgresGrammar.compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
  • added: method PostgresGrammar.compileTableComment(Blueprint $blueprint, Fluent $command)
  • added: method PostgresGrammar.escapeNames($names)
  • added: method SQLiteGrammar.compileGetAllTables()
  • added: method SQLiteGrammar.compileGetAllViews()
  • added: method SQLiteGrammar.compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
  • added: method SqlServerGrammar.compileGetAllTables()
  • added: method SqlServerGrammar.compileGetAllViews()
  • added: method SqlServerGrammar.compileRenameColumn(Blueprint $blueprint, Fluent $command, Connection $connection)
  • added: protected method MySqlGrammar.wrapJsonSelector($value)
  • added: protected method SQLiteGrammar.wrapJsonSelector($value)
  • removed: protected method EncryptionServiceProvider.registerOpisSecurityKey()
  • changed: constructor Dispatcher(ContainerContract $container = …) → constructor Dispatcher(?ContainerContract $container = …)
  • added: method Dispatcher.getRawListeners()
  • added: protected method Dispatcher.prepareListeners(string $eventName)
  • removed: class Cache extends AbstractCache
  • removed: constructor Cache(Repository $repository, $key = …, $expire = …)
  • removed: method Cache.load()
  • removed: method Cache.save()
  • removed: method FilesystemAdapter.flushCache()
  • removed: method FilesystemAdapter.getAwsTemporaryUrl($adapter, $path, $expiration, $options)
  • removed: protected method FilesystemAdapter.filterContentsByType($contents, $type)
  • removed: protected method FilesystemAdapter.getAwsUrl($adapter, $path)
  • removed: protected method FilesystemManager.adapt(FilesystemInterface $filesystem)
  • removed: protected method FilesystemManager.createCacheStore($config)
  • removed: protected property Cache.expire
  • removed: protected property Cache.key
  • removed: protected property Cache.repository
  • changed: constructor FilesystemAdapter(FilesystemInterface $driver) → constructor FilesystemAdapter(FilesystemOperator $driver, FlysystemAdapter $adapter, array $config = …)
  • changed: method Filesystem.hash($path) → method Filesystem.hash($path, $algorithm = …)
  • changed: method Filesystem.replace($path, $content) → method Filesystem.replace($path, $content, $mode = …)
  • changed: protected method FilesystemManager.createFlysystem(AdapterInterface $adapter, array $config) → protected method FilesystemManager.createFlysystem(FlysystemAdapter $adapter, array $config)
  • added: class AwsS3V3Adapter extends FilesystemAdapter
  • added: constructor AwsS3V3Adapter(FilesystemOperator $driver, S3Adapter $adapter, array $config, S3Client $client)
  • added: method AwsS3V3Adapter.getClient()
  • added: method AwsS3V3Adapter.providesTemporaryUrls()
  • added: method AwsS3V3Adapter.temporaryUploadUrl($path, $expiration, array $options = …)
  • added: method AwsS3V3Adapter.temporaryUrl($path, $expiration, array $options = …)
  • added: method AwsS3V3Adapter.url($path)
  • added: method Filesystem.hasSameHash($firstFile, $secondFile)
  • added: method Filesystem.isEmptyDirectory($directory, $ignoreDotFiles = …)
  • added: method FilesystemAdapter.assertDirectoryEmpty($path)
  • added: method FilesystemAdapter.checksum(string $path, array $options = …)
  • added: method FilesystemAdapter.directoryExists($path)
  • added: method FilesystemAdapter.directoryMissing($path)
  • added: method FilesystemAdapter.fileExists($path)
  • added: method FilesystemAdapter.fileMissing($path)
  • added: method FilesystemAdapter.getAdapter()
  • added: method FilesystemAdapter.getConfig()
  • added: method FilesystemAdapter.providesTemporaryUrls()
  • added: method FilesystemAdapter.temporaryUploadUrl($path, $expiration, array $options = …)
  • added: method FilesystemManager.createScopedDriver(array $config)
  • added: protected method FilesystemAdapter.throwsExceptions(): bool
  • added: protected property AwsS3V3Adapter.client
  • added: protected property FilesystemAdapter.adapter
  • added: protected property FilesystemAdapter.config
  • added: protected property FilesystemAdapter.prefixer
  • changed: method Application.handle(SymfonyRequest $request, int $type = …, bool $catch = …) → method Application.handle(SymfonyRequest $request, int $type = …, bool $catch = …): SymfonyResponse
  • changed: method Application.langPath() → method Application.langPath($path = …)
  • changed: method Application.storagePath() → method Application.storagePath($path = …)
  • added: class CacheBasedMaintenanceMode implements MaintenanceMode
  • added: class CloudBootstrapper
  • added: class FileBasedMaintenanceMode implements MaintenanceModeContract
  • added: class MaintenanceModeManager extends Manager
  • added: class Precognition
  • added: class Vite implements Htmlable
  • added: constructor CacheBasedMaintenanceMode(Factory $cache, string $store, string $key)
  • added: method Application.maintenanceMode()
  • added: method CacheBasedMaintenanceMode.activate(array $payload): void
  • added: method CacheBasedMaintenanceMode.active(): bool
  • added: method CacheBasedMaintenanceMode.data(): array
  • added: method CacheBasedMaintenanceMode.deactivate(): void
  • added: method FileBasedMaintenanceMode.activate(array $payload): void
  • added: method FileBasedMaintenanceMode.active(): bool
  • added: method FileBasedMaintenanceMode.data(): array
  • added: method FileBasedMaintenanceMode.deactivate(): void
  • added: method MaintenanceModeManager.getDefaultDriver(): string
  • added: method Vite.__invoke($entrypoints, $buildDirectory = …)
  • added: method Vite.asset($asset, $buildDirectory = …)
  • added: method Vite.cspNonce()
  • added: method Vite.hotFile()
  • added: method Vite.isRunningHot()
  • added: method Vite.manifestHash($buildDirectory = …)
  • added: method Vite.preloadedAssets()
  • added: method Vite.reactRefresh()
  • added: method Vite.toHtml()
  • added: method Vite.useBuildDirectory($path)
  • added: method Vite.useCspNonce($nonce = …)
  • added: method Vite.useHotFile($path)
  • added: method Vite.useIntegrityKey($key)
  • added: method Vite.useManifestFilename($filename)
  • added: method Vite.usePreloadTagAttributes($attributes)
  • added: method Vite.useScriptTagAttributes($attributes)
  • added: method Vite.useStyleTagAttributes($attributes)
  • added: method Vite.withEntryPoints($entryPoints)
  • added: protected method Application.registerLaravelCloudServices()
  • added: protected method CacheBasedMaintenanceMode.getStore(): Repository
  • added: protected method FileBasedMaintenanceMode.path(): string
  • added: protected method MaintenanceModeManager.createCacheDriver(): CacheBasedMaintenanceMode
  • added: protected method MaintenanceModeManager.createFileDriver(): FileBasedMaintenanceMode
  • added: protected method Vite.assetPath($path, $secure = …)
  • added: protected method Vite.chunk($manifest, $file)
  • added: protected method Vite.hotAsset($asset)
  • added: protected method Vite.isCssPath($path)
  • added: protected method Vite.makePreloadTagForChunk($src, $url, $chunk, $manifest)
  • added: protected method Vite.makeScriptTag($url)
  • added: protected method Vite.makeScriptTagWithAttributes($url, $attributes)
  • added: protected method Vite.makeStylesheetTag($url)
  • added: protected method Vite.makeStylesheetTagWithAttributes($url, $attributes)
  • added: protected method Vite.makeTag($url)
  • added: protected method Vite.makeTagForChunk($src, $url, $chunk, $manifest)
  • added: protected method Vite.manifest($buildDirectory)
  • added: protected method Vite.manifestPath($buildDirectory)
  • added: protected method Vite.parseAttributes($attributes)
  • added: protected method Vite.resolvePreloadTagAttributes($src, $url, $chunk, $manifest)
  • added: protected method Vite.resolveScriptTagAttributes($src, $url, $chunk, $manifest)
  • added: protected method Vite.resolveStylesheetTagAttributes($src, $url, $chunk, $manifest)
  • added: protected property CacheBasedMaintenanceMode.cache
  • added: protected property CacheBasedMaintenanceMode.key
  • added: protected property CacheBasedMaintenanceMode.store
  • added: protected property Vite.buildDirectory
  • added: protected property Vite.entryPoints
  • added: protected property Vite.hotFile
  • added: protected property Vite.integrityKey
  • added: protected property Vite.manifestFilename
  • added: protected property Vite.nonce
  • added: protected property Vite.preloadTagAttributesResolvers
  • added: protected property Vite.preloadedAssets
  • added: protected property Vite.scriptTagAttributesResolvers
  • added: protected property Vite.styleTagAttributesResolvers
  • added: protected static method CloudBootstrapper.socket(): string
  • added: protected static method Inspiring.formatForConsole($quote)
  • added: protected static property Vite.manifests
  • added: static method CloudBootstrapper.bootstrapped(Application $app, string $bootstrapper): void
  • added: static method CloudBootstrapper.bootstrapping(Application $app, string $bootstrapper): void
  • added: static method CloudBootstrapper.configureCloudLogging(Application $app): void
  • added: static method CloudBootstrapper.configureDisks(Application $app): void
  • added: static method CloudBootstrapper.configureExceptions(Application $app): void
  • added: static method CloudBootstrapper.configureUnpooledPostgresConnection(Application $app): void
  • added: static method CloudBootstrapper.ensureMigrationsUseUnpooledConnection(Application $app): void
  • added: static method CloudBootstrapper.registerEvents(Application $app): void
  • added: static method CloudBootstrapper.registerExceptionReporting(Application $app): void
  • added: static method Inspiring.quotes()
  • added: static method Precognition.afterValidationHook($request)
  • changed: protected property HandleExceptions.app → protected static property HandleExceptions.app
  • added: method HandleExceptions.handleDeprecationError($message, $file, $line, $level = …)
  • added: protected method HandleExceptions.forwardsTo($method)
  • added: protected method HandleExceptions.shouldIgnoreDeprecationErrors()
  • added: static method HandleExceptions.forgetApp()
  • added: class Events
  • added: class ExceptionReporter
  • added: constructor Events(string $address)
  • added: constructor ExceptionReporter(Events $events, Closure $bladeMapperResolver, string $basePath, array $config)
  • added: method Events.emit(array $payload): bool
  • added: method Events.emitMany(array $payloads): bool
  • added: method ExceptionReporter.__invoke(Throwable $e): ?bool
  • added: method ExceptionReporter.exceptionId(Throwable $e): string
  • added: method ExceptionReporter.finishScheduledTask(ScheduledTask $task): void
  • added: method ExceptionReporter.flushJobContext(): void
  • added: method ExceptionReporter.flushScheduledTaskContext(): void
  • added: method ExceptionReporter.forgetUser(): void
  • added: method ExceptionReporter.jobPayload(): array
  • added: method ExceptionReporter.prepareForCommand(?string $name, InputInterface $input): void
  • added: method ExceptionReporter.prepareForJob(Job $job): void
  • added: method ExceptionReporter.prepareForOctaneRequest(): void
  • added: method ExceptionReporter.prepareForScheduledTask(ScheduledTask $task): void
  • added: method ExceptionReporter.rememberUser(Authenticatable $user): void
  • added: protected method Events.connect(): void
  • added: protected method Events.connected(): bool
  • added: protected method Events.disconnect(): void
  • added: protected method Events.ensureConnected(): void
  • added: protected method Events.format(array $payloads): string
  • added: protected method Events.withSocketMetaData(string $message): string
  • added: protected method Events.write(string $payload): void
  • added: protected method ExceptionReporter.applyTransformationToConsoleInputValue(null|bool|string|array $value, callable $transformer): array
  • added: protected method ExceptionReporter.argType(mixed $argument, string|int $name): string|array
  • added: protected method ExceptionReporter.bladeMapper(): BladeMapper
  • added: protected method ExceptionReporter.consoleArgumentTransformer(string $name): callable
  • added: protected method ExceptionReporter.consoleCommandClass(): ?string
  • added: protected method ExceptionReporter.consoleCommandExecutionDetails(Throwable $e): array
  • added: protected method ExceptionReporter.consoleCommandLine(): ?string
  • added: protected method ExceptionReporter.consoleCommandName(): ?string
  • added: protected method ExceptionReporter.consoleCommandTraceId(): string
  • added: protected method ExceptionReporter.consoleOptionTransformer(string $name): callable
  • added: protected method ExceptionReporter.currentConsoleInput(): ConsoleInput
  • added: protected method ExceptionReporter.currentFallbackArgvInput(): ArgvInput
  • added: protected method ExceptionReporter.currentlyProcessingJobAttemptId(): string
  • added: protected method ExceptionReporter.exceptionContext(Throwable $e): ?object
  • added: protected method ExceptionReporter.executionDetails(Throwable $e): array
  • added: protected method ExceptionReporter.handled(Throwable $e): bool
  • added: protected method ExceptionReporter.isProcessingJob(): bool
  • added: protected method ExceptionReporter.isRunningScheduledTask(): bool
  • added: protected method ExceptionReporter.isViewException(Throwable $e): bool
  • added: protected method ExceptionReporter.jobExecutionDetails(Throwable $e): array
  • added: protected method ExceptionReporter.laravelContext(): ?object
  • added: protected method ExceptionReporter.laravelStartedAtTimestamp(): ?string
  • added: protected method ExceptionReporter.mapCompiledViewFrame(array $frame): array
  • added: protected method ExceptionReporter.normalizeBasePath(string $path): string
  • added: protected method ExceptionReporter.normalizeFrameFileAndLine(array $frame): array
  • added: protected method ExceptionReporter.normalizedQueue(): string
  • added: protected method ExceptionReporter.parseException(Throwable $e): array
  • added: protected method ExceptionReporter.parseRequestFiles(array $files): array
  • added: protected method ExceptionReporter.payload(Throwable $e): array
  • added: protected method ExceptionReporter.previous(Throwable $e): array
  • added: protected method ExceptionReporter.redactAuthorizationHeaderValue(string $value): string
  • added: protected method ExceptionReporter.redactCookieHeaderValue(string $value): string
  • added: protected method ExceptionReporter.redactHeaders(HeaderBag $headers): void
  • added: protected method ExceptionReporter.redactRequestPayload(array $payload): array
  • added: protected method ExceptionReporter.redactValue(string $value): string
  • added: protected method ExceptionReporter.removeSyntheticAuthorizationHeaders(HeaderBag $headers): void
  • added: protected method ExceptionReporter.requestExecutionDetails(Throwable $e): array
  • added: protected method ExceptionReporter.requestFiles(Throwable $e): ?array
  • added: protected method ExceptionReporter.requestHeaders(): ?array
  • added: protected method ExceptionReporter.requestPayload(Throwable $e): ?array
  • added: protected method ExceptionReporter.requestRouteExecutionDetails(): ?array
  • added: protected method ExceptionReporter.requestUrl(): string
  • added: protected method ExceptionReporter.scheduledCallbackTaskClass(): ?string
  • added: protected method ExceptionReporter.scheduledCallbackTaskName(): string
  • added: protected method ExceptionReporter.scheduledClosureTaskName(Closure $callback): string
  • added: protected method ExceptionReporter.scheduledTaskCallback(): mixed
  • added: protected method ExceptionReporter.scheduledTaskClass(): ?string
  • added: protected method ExceptionReporter.scheduledTaskExecutionDetails(Throwable $e): array
  • added: protected method ExceptionReporter.scheduledTaskName(): string
  • added: protected method ExceptionReporter.scheduledTaskTimezone(): ?string
  • added: protected method ExceptionReporter.shouldRedactConsoleInputValue(string $name): bool
  • added: protected method ExceptionReporter.shouldRedactRequestPayloadField(string $field, mixed $value): bool
  • added: protected method ExceptionReporter.timestamp(): string
  • added: protected method ExceptionReporter.trace(Throwable $e): array
  • added: protected method ExceptionReporter.traceId(): ?string
  • added: protected method ExceptionReporter.traceIdFromContext(): ?string
  • added: protected method ExceptionReporter.unwrapViewException(Throwable $e): Throwable
  • added: protected method ExceptionReporter.userId(): ?string
  • added: protected method ExceptionReporter.userIdFromContext(): ?string
  • added: protected method ExceptionReporter.userIdentifier(Authenticatable $user): ?string
  • added: protected property Events.address: string
  • added: protected property Events.socket
  • added: protected property ExceptionReporter.artisanCommandTraceId: ?string
  • added: protected property ExceptionReporter.basePath: string
  • added: protected property ExceptionReporter.bladeMapper: ?BladeMapper
  • added: protected property ExceptionReporter.bladeMapperResolver: Closure
  • added: protected property ExceptionReporter.config: array
  • added: protected property ExceptionReporter.connectionConfig: ?array
  • added: protected property ExceptionReporter.currentConsoleInput: ?ConsoleInput
  • added: protected property ExceptionReporter.currentFallbackArgvInput: ?ArgvInput
  • added: protected property ExceptionReporter.currentlyProcessingJob: ?Job
  • added: protected property ExceptionReporter.currentlyProcessingJobAttemptId: ?string
  • added: protected property ExceptionReporter.currentlyRunningCommandName: ?string
  • added: protected property ExceptionReporter.currentlyRunningScheduledTask: ?ScheduledTask
  • added: protected property ExceptionReporter.events: Events
  • added: protected property ExceptionReporter.exceptionIds: WeakMap
  • added: protected property ExceptionReporter.executionContext: array
  • added: protected property ExceptionReporter.loggedOutUserId: ?string
  • added: protected property ExceptionReporter.normalizedQueues: array
  • added: protected property ExceptionReporter.octaneRequestReceivedAt: ?float
  • added: protected property ExceptionReporter.reportingViewException: bool
  • added: protected property ExceptionReporter.reservedMemory: ?string
  • added: protected property ExceptionReporter.scheduledTaskAwaitingFailureReport: bool
  • added: static property Events.socketFactory
  • added: method ResolvesDumpSource.resolveDumpSource()
  • added: protected method ResolvesDumpSource.getOriginalFileForCompiledView($file)
  • added: protected method ResolvesDumpSource.isCompiledViewFile($file)
  • added: protected method ResolvesDumpSource.resolveSourceHref($file, $line)
  • added: protected property ResolvesDumpSource.editorHrefs
  • added: protected static property ResolvesDumpSource.adjustableTraces
  • added: protected static property ResolvesDumpSource.dumpSourceResolver
  • added: static method ResolvesDumpSource.dontIncludeSource()
  • added: static method ResolvesDumpSource.resolveDumpSourceUsing($callable)
  • added: trait ResolvesDumpSource
  • removed: protected property RouteListCommand.compactColumns
  • changed: protected method ComponentMakeCommand.writeView() → protected method ComponentMakeCommand.writeView($onSuccess = …)
  • changed: protected method EventListCommand.filterEvents(array $events) → protected method EventListCommand.filterEvents($events)
  • changed: protected method RouteListCommand.asJson(array $routes) → protected method RouteListCommand.asJson($routes)
  • added: class AboutCommand extends Command
  • added: class CliDumper extends BaseCliDumper
  • added: class DocsCommand extends Command
  • added: class EnvironmentDecryptCommand extends Command
  • added: class EnvironmentEncryptCommand extends Command
  • added: class ScopeMakeCommand extends GeneratorCommand
  • added: class ShowModelCommand extends DatabaseInspectionCommand
  • added: constructor AboutCommand(Composer $composer)
  • added: constructor CliDumper($output, $basePath, $compiledViewPath)
  • added: constructor EnvironmentDecryptCommand(Filesystem $files)
  • added: constructor EnvironmentEncryptCommand(Filesystem $files)
  • added: method AboutCommand.handle()
  • added: method CliDumper.dumpWithSource(Data $data)
  • added: method DocsCommand.docs()
  • added: method DocsCommand.handle(Http $http, Cache $cache)
  • added: method DocsCommand.pages()
  • added: method DocsCommand.sectionsFor($page)
  • added: method DocsCommand.setSystemOsFamily($family)
  • added: method DocsCommand.setUrlOpener($opener)
  • added: method DocsCommand.setVersion($version)
  • added: method EnvironmentDecryptCommand.handle()
  • added: method EnvironmentEncryptCommand.handle()
  • added: method EventListCommand.getEventsDispatcher()
  • added: method Kernel.bootstrapWithoutBootingProviders()
  • added: method Kernel.commandStartedAt()
  • added: method Kernel.findCommand($name)
  • added: method Kernel.whenCommandLifecycleIsLongerThan($threshold, $handler)
  • added: method ShowModelCommand.handle()
  • added: protected method AboutCommand.display($data)
  • added: protected method AboutCommand.displayDetail($data)
  • added: protected method AboutCommand.displayJson($data)
  • added: protected method AboutCommand.gatherApplicationInformation()
  • added: protected method AboutCommand.hasPhpFiles(string $path): bool
  • added: protected method AboutCommand.sections()
  • added: protected method CastMakeCommand.getOptions()
  • added: protected method ChannelMakeCommand.getOptions()
  • added: protected method CliDumper.getDumpSourceContent()
  • added: protected method CliDumper.supportsColors(): bool
  • added: protected method DocsCommand.askForPage()
  • added: protected method DocsCommand.askForPageViaAutocomplete()
  • added: protected method DocsCommand.askForPageViaCustomStrategy()
  • added: protected method DocsCommand.configure()
  • added: protected method DocsCommand.didNotRequestPage()
  • added: protected method DocsCommand.didNotRequestSection()
  • added: protected method DocsCommand.fetchDocs()
  • added: protected method DocsCommand.guessPage()
  • added: protected method DocsCommand.guessSection($page)
  • added: protected method DocsCommand.isSearching()
  • added: protected method DocsCommand.open($url)
  • added: protected method DocsCommand.openUrl()
  • added: protected method DocsCommand.openViaBuiltInStrategy($url)
  • added: protected method DocsCommand.openViaCustomStrategy($url)
  • added: protected method DocsCommand.page()
  • added: protected method DocsCommand.refreshDocs()
  • added: protected method DocsCommand.resolvePage()
  • added: protected method DocsCommand.searchQuery()
  • added: protected method DocsCommand.section($page)
  • added: protected method DocsCommand.url()
  • added: protected method DocsCommand.version()
  • added: protected method EnvironmentDecryptCommand.outputFilePath()
  • added: protected method EnvironmentDecryptCommand.parseKey(string $key)
  • added: protected method EnvironmentEncryptCommand.parseKey(string $key)
  • added: protected method EventListCommand.appendEventInterfaces($event)
  • added: protected method EventListCommand.appendListenerInterfaces($listener)
  • added: protected method EventListCommand.getListenersOnDispatcher()
  • added: protected method EventListCommand.getRawListeners()
  • added: protected method EventListCommand.stringifyClosure(Closure $rawListener)
  • added: protected method EventMakeCommand.getOptions()
  • added: protected method ListenerMakeCommand.afterPromptingForMissingArguments(InputInterface $input, OutputInterface $output)
  • added: protected method ModelMakeCommand.afterPromptingForMissingArguments(InputInterface $input, OutputInterface $output)
  • added: protected method ObserverMakeCommand.afterPromptingForMissingArguments(InputInterface $input, OutputInterface $output)
  • added: protected method PolicyMakeCommand.afterPromptingForMissingArguments(InputInterface $input, OutputInterface $output)
  • added: protected method ProviderMakeCommand.getOptions()
  • added: protected method RequestMakeCommand.getOptions()
  • added: protected method RouteListCommand.determineRouteCountOutput($routes, $terminalWidth)
  • added: protected method RouteListCommand.forCli($routes)
  • added: protected method RouteListCommand.formatActionForCli($route)
  • added: protected method RouteListCommand.isFrameworkController(Route $route)
  • added: protected method RouteListCommand.isVendorRoute(Route $route)
  • added: protected method ScopeMakeCommand.getDefaultNamespace($rootNamespace)
  • added: protected method ScopeMakeCommand.getOptions()
  • added: protected method ScopeMakeCommand.getStub()
  • added: protected method ScopeMakeCommand.resolveStubPath($stub)
  • added: protected method ServeCommand.getDateFromLine($line)
  • added: protected method ServeCommand.getRequestPortFromLine($line)
  • added: protected method ServeCommand.handleProcessOutput()
  • added: protected method ShowModelCommand.attributeIsHidden($attribute, $model)
  • added: protected method ShowModelCommand.columnIsUnique($column, $indexes)
  • added: protected method ShowModelCommand.display($class, $database, $table, $policy, $attributes, $relations, $observers)
  • added: protected method ShowModelCommand.displayCli($class, $database, $table, $policy, $attributes, $relations, $observers)
  • added: protected method ShowModelCommand.displayJson($class, $database, $table, $policy, $attributes, $relations, $observers)
  • added: protected method ShowModelCommand.getAttributes($model)
  • added: protected method ShowModelCommand.getCastType($column, $model)
  • added: protected method ShowModelCommand.getCastsWithDates($model)
  • added: protected method ShowModelCommand.getColumnDefault($column, $model)
  • added: protected method ShowModelCommand.getColumnType($column)
  • added: protected method ShowModelCommand.getObservers($model)
  • added: protected method ShowModelCommand.getPolicy($model)
  • added: protected method ShowModelCommand.getRelations($model)
  • added: protected method ShowModelCommand.getVirtualAttributes($model, $columns)
  • added: protected method ShowModelCommand.qualifyModel(string $model)
  • added: protected method TestMakeCommand.afterPromptingForMissingArguments(InputInterface $input, OutputInterface $output)
  • added: protected property AboutCommand.composer
  • added: protected property AboutCommand.description
  • added: protected property AboutCommand.signature
  • added: protected property CliDumper.basePath
  • added: protected property CliDumper.compiledViewPath
  • added: protected property CliDumper.dumping
  • added: protected property CliDumper.output
  • added: protected property DocsCommand.cache
  • added: protected property DocsCommand.description
  • added: protected property DocsCommand.help
  • added: protected property DocsCommand.http
  • added: protected property DocsCommand.signature
  • added: protected property DocsCommand.systemOsFamily
  • added: protected property DocsCommand.urlOpener
  • added: protected property DocsCommand.version
  • added: protected property EnvironmentDecryptCommand.description
  • added: protected property EnvironmentDecryptCommand.files
  • added: protected property EnvironmentDecryptCommand.signature
  • added: protected property EnvironmentEncryptCommand.description
  • added: protected property EnvironmentEncryptCommand.files
  • added: protected property EnvironmentEncryptCommand.signature
  • added: protected property Kernel.commandLifecycleDurationHandlers
  • added: protected property Kernel.commandStartedAt
  • added: protected property RouteListCommand.verbColors
  • added: protected property ScopeMakeCommand.description
  • added: protected property ScopeMakeCommand.name
  • added: protected property ScopeMakeCommand.type
  • added: protected property ServeCommand.requestsPool
  • added: protected property ServeCommand.serverRunningHasBeenDisplayed
  • added: protected property ShowModelCommand.description
  • added: protected property ShowModelCommand.name
  • added: protected property ShowModelCommand.relationMethods
  • added: protected property ShowModelCommand.signature
  • added: protected static method AboutCommand.addToSection(string $section, $data, ?string $value = …)
  • added: protected static property AboutCommand.customDataResolvers
  • added: protected static property AboutCommand.data
  • added: protected static property AboutCommand.defaultName
  • added: protected static property CastMakeCommand.defaultName
  • added: protected static property ChannelMakeCommand.defaultName
  • added: protected static property ClearCompiledCommand.defaultName
  • added: protected static property ComponentMakeCommand.defaultName
  • added: protected static property ConfigCacheCommand.defaultName
  • added: protected static property ConfigClearCommand.defaultName
  • added: protected static property ConsoleMakeCommand.defaultName
  • added: protected static property DocsCommand.defaultName
  • added: protected static property DownCommand.defaultName
  • added: protected static property EnvironmentCommand.defaultName
  • added: protected static property EnvironmentDecryptCommand.defaultName
  • added: protected static property EnvironmentEncryptCommand.defaultName
  • added: protected static property EventCacheCommand.defaultName
  • added: protected static property EventClearCommand.defaultName
  • added: protected static property EventGenerateCommand.defaultName
  • added: protected static property EventListCommand.defaultName
  • added: protected static property EventListCommand.eventsResolver
  • added: protected static property EventMakeCommand.defaultName
  • added: protected static property ExceptionMakeCommand.defaultName
  • added: protected static property JobMakeCommand.defaultName
  • added: protected static property KeyGenerateCommand.defaultName
  • added: protected static property ListenerMakeCommand.defaultName
  • added: protected static property MailMakeCommand.defaultName
  • added: protected static property ModelMakeCommand.defaultName
  • added: protected static property NotificationMakeCommand.defaultName
  • added: protected static property ObserverMakeCommand.defaultName
  • added: protected static property OptimizeClearCommand.defaultName
  • added: protected static property OptimizeCommand.defaultName
  • added: protected static property PackageDiscoverCommand.defaultName
  • added: protected static property PolicyMakeCommand.defaultName
  • added: protected static property ProviderMakeCommand.defaultName
  • added: protected static property RequestMakeCommand.defaultName
  • added: protected static property ResourceMakeCommand.defaultName
  • added: protected static property RouteCacheCommand.defaultName
  • added: protected static property RouteClearCommand.defaultName
  • added: protected static property RouteListCommand.defaultName
  • added: protected static property RouteListCommand.terminalWidthResolver
  • added: protected static property RuleMakeCommand.defaultName
  • added: protected static property ScopeMakeCommand.defaultName
  • added: protected static property ServeCommand.defaultName
  • added: protected static property ShowModelCommand.defaultName
  • added: protected static property StorageLinkCommand.defaultName
  • added: protected static property StubPublishCommand.defaultName
  • added: protected static property TestMakeCommand.defaultName
  • added: protected static property UpCommand.defaultName
  • added: protected static property VendorPublishCommand.defaultName
  • added: protected static property ViewCacheCommand.defaultName
  • added: protected static property ViewClearCommand.defaultName
  • added: static method AboutCommand.add(string $section, $data, ?string $value = …)
  • added: static method CliDumper.register($basePath, $compiledViewPath)
  • added: static method EventListCommand.resolveEventsUsing($resolver)
  • added: static method RouteListCommand.getTerminalWidth()
  • added: static method RouteListCommand.resolveTerminalWidthUsing($resolver)
  • added: static property ServeCommand.passthroughVariables
  • added: class PublishingStubs
  • added: constructor PublishingStubs(array $stubs)
  • added: method PublishingStubs.add(string $path, string $name)
  • added: property PublishingStubs.stubs
  • removed: class WhoopsHandler
  • removed: method WhoopsHandler.forDebug()
  • removed: protected method Handler.renderExceptionWithWhoops(Throwable $e)
  • removed: protected method Handler.whoopsHandler()
  • removed: protected method WhoopsHandler.directoriesExceptVendor()
  • removed: protected method WhoopsHandler.registerApplicationPaths($handler)
  • removed: protected method WhoopsHandler.registerBlacklist($handler)
  • removed: protected method WhoopsHandler.registerEditor($handler)
  • changed: protected method Handler.ignore(string $class) → method Handler.ignore(string $class)
  • added: method Handler.contextForException(Throwable $e)
  • added: method Handler.level($type, $level)
  • added: protected method Handler.buildExceptionContext(Throwable $e)
  • added: protected method Handler.renderExceptionResponse($request, Throwable $e)
  • added: protected method Handler.renderExceptionWithCustomRenderer(Throwable $e)
  • added: protected method Handler.renderViaCallbacks($request, Throwable $e)
  • added: protected property Handler.levels
  • added: class BladeMapper
  • added: constructor BladeMapper(Factory $factory, BladeCompiler $bladeCompiler)
  • added: method BladeMapper.detectLineNumber(string $filename, int $compiledLineNumber)
  • added: method BladeMapper.findCompiledView(string $compiledPath)
  • added: method BladeMapper.map(FlattenException $exception)
  • added: protected method BladeMapper.addBladeComponentLineNumbers(string $value)
  • added: protected method BladeMapper.addEchoLineNumbers(string $value)
  • added: protected method BladeMapper.addStatementLineNumbers(string $value)
  • added: protected method BladeMapper.compileSourcemap(string $value)
  • added: protected method BladeMapper.filterViewData(array $data)
  • added: protected method BladeMapper.findClosestLineNumberMapping(string $map, int $compiledLineNumber)
  • added: protected method BladeMapper.getKnownPaths()
  • added: protected method BladeMapper.insertLineNumberAtPosition(int $position, string $value)
  • added: protected method BladeMapper.trimEmptyLines(string $value)
  • added: protected property BladeMapper.bladeCompiler
  • added: protected property BladeMapper.factory
  • added: protected property BladeMapper.knownPaths
  • added: class WhoopsExceptionRenderer implements ExceptionRenderer
  • added: class WhoopsHandler
  • added: method WhoopsExceptionRenderer.render($throwable)
  • added: method WhoopsHandler.forDebug()
  • added: protected method WhoopsExceptionRenderer.whoopsHandler()
  • added: protected method WhoopsHandler.directoriesExceptVendor()
  • added: protected method WhoopsHandler.registerApplicationPaths($handler)
  • added: protected method WhoopsHandler.registerBlacklist($handler)
  • added: protected method WhoopsHandler.registerEditor($handler)
  • changed: method FormRequest.safe(array $keys = …) → method FormRequest.safe(?array $keys = …)
  • changed: method FormRequest.validated() → method FormRequest.validated($key = …, $default = …)
  • added: class HtmlDumper extends BaseHtmlDumper
  • added: const HtmlDumper.EXPANDED_SEPARATOR
  • added: const HtmlDumper.NON_EXPANDED_SEPARATOR
  • added: constructor HtmlDumper($basePath, $compiledViewPath)
  • added: method HtmlDumper.dumpWithSource(Data $data)
  • added: method Kernel.requestStartedAt()
  • added: method Kernel.whenRequestLifecycleIsLongerThan($threshold, $handler)
  • added: protected method HtmlDumper.getDumpSourceContent()
  • added: protected property HtmlDumper.basePath
  • added: protected property HtmlDumper.compiledViewPath
  • added: protected property HtmlDumper.dumping
  • added: protected property Kernel.requestLifecycleDurationHandlers
  • added: protected property Kernel.requestStartedAt
  • added: static method HtmlDumper.register($basePath, $compiledViewPath)
  • changed: constructor MaintenanceModeException($time, $retryAfter = …, $message = …, Throwable $previous = …, $code = …) → constructor MaintenanceModeException($time, $retryAfter = …, $message = …, ?Throwable $previous = …, $code = …)
  • added: class HandlePrecognitiveRequests
  • added: constructor HandlePrecognitiveRequests(Container $container)
  • added: method HandlePrecognitiveRequests.handle($request, $next)
  • added: protected method HandlePrecognitiveRequests.appendVaryHeader($request, $response)
  • added: protected method HandlePrecognitiveRequests.prepareForPrecognition($request)
  • added: protected method VerifyCsrfToken.newCookie($request, $config)
  • added: protected property HandlePrecognitiveRequests.container
  • removed: protected method ArtisanServiceProvider.registerClearCompiledCommand()
  • removed: protected method ArtisanServiceProvider.registerClearResetsCommand()
  • removed: protected method ArtisanServiceProvider.registerDbCommand()
  • removed: protected method ArtisanServiceProvider.registerDbPruneCommand()
  • removed: protected method ArtisanServiceProvider.registerDbWipeCommand()
  • removed: protected method ArtisanServiceProvider.registerDownCommand()
  • removed: protected method ArtisanServiceProvider.registerEnvironmentCommand()
  • removed: protected method ArtisanServiceProvider.registerEventCacheCommand()
  • removed: protected method ArtisanServiceProvider.registerEventGenerateCommand()
  • removed: protected method ArtisanServiceProvider.registerEventListCommand()
  • removed: protected method ArtisanServiceProvider.registerKeyGenerateCommand()
  • removed: protected method ArtisanServiceProvider.registerOptimizeClearCommand()
  • removed: protected method ArtisanServiceProvider.registerOptimizeCommand()
  • removed: protected method ArtisanServiceProvider.registerPackageDiscoverCommand()
  • removed: protected method ArtisanServiceProvider.registerQueueClearCommand()
  • removed: protected method ArtisanServiceProvider.registerQueueFailedCommand()
  • removed: protected method ArtisanServiceProvider.registerQueueFlushCommand()
  • removed: protected method ArtisanServiceProvider.registerQueueRetryBatchCommand()
  • removed: protected method ArtisanServiceProvider.registerQueueRetryCommand()
  • removed: protected method ArtisanServiceProvider.registerScheduleClearCacheCommand()
  • removed: protected method ArtisanServiceProvider.registerScheduleFinishCommand()
  • removed: protected method ArtisanServiceProvider.registerScheduleListCommand()
  • removed: protected method ArtisanServiceProvider.registerScheduleRunCommand()
  • removed: protected method ArtisanServiceProvider.registerScheduleTestCommand()
  • removed: protected method ArtisanServiceProvider.registerScheduleWorkCommand()
  • removed: protected method ArtisanServiceProvider.registerSchemaDumpCommand()
  • removed: protected method ArtisanServiceProvider.registerServeCommand()
  • removed: protected method ArtisanServiceProvider.registerStorageLinkCommand()
  • removed: protected method ArtisanServiceProvider.registerStubPublishCommand()
  • removed: protected method ArtisanServiceProvider.registerUpCommand()
  • removed: protected method ArtisanServiceProvider.registerViewCacheCommand()
  • added: method FoundationServiceProvider.registerDumper()
  • added: method FoundationServiceProvider.registerMaintenanceModeManager()
  • added: property FoundationServiceProvider.singletons
  • added: protected method ArtisanServiceProvider.registerAboutCommand()
  • added: protected method ArtisanServiceProvider.registerScopeMakeCommand()
  • added: class PrecognitionCallableDispatcher extends CallableDispatcher
  • added: class PrecognitionControllerDispatcher extends ControllerDispatcher
  • added: method PrecognitionCallableDispatcher.dispatch(Route $route, $callable)
  • added: method PrecognitionControllerDispatcher.dispatch(Route $route, $controller, $method)
  • added: protected method PrecognitionControllerDispatcher.ensureMethodExists($controller, $method)
  • added: protected property EventServiceProvider.observers
  • added: protected method DatabaseTruncation.connectionsToTruncate(): array
  • added: protected method DatabaseTruncation.exceptTables(?string $connectionName): array
  • added: protected method DatabaseTruncation.truncateDatabaseTables(): void
  • added: protected method DatabaseTruncation.truncateTablesForAllConnections(): void
  • added: protected method DatabaseTruncation.truncateTablesForConnection(ConnectionInterface $connection, ?string $name): void
  • added: protected method RefreshDatabase.beforeRefreshingDatabase()
  • added: protected method TestCase.onNotSuccessfulTest(Throwable $exception): void
  • added: protected static property DatabaseTruncation.allTables: array
  • added: static method TestCase.tearDownAfterClass(): void
  • added: trait DatabaseTruncation
  • removed: protected method InteractsWithDatabase.assertDeleted($table, array $data = …, $connection = …)
  • changed: method InteractsWithTime.travelTo(DateTimeInterface $date, $callback = …) → method InteractsWithTime.travelTo($date, $callback = …)
  • changed: protected method InteractsWithContainer.mock($abstract, Closure $mock = …) → protected method InteractsWithContainer.mock($abstract, ?Closure $mock = …)
  • changed: protected method InteractsWithContainer.partialMock($abstract, Closure $mock = …) → protected method InteractsWithContainer.partialMock($abstract, ?Closure $mock = …)
  • changed: protected method InteractsWithContainer.spy($abstract, Closure $mock = …) → protected method InteractsWithContainer.spy($abstract, ?Closure $mock = …)
  • changed: protected method InteractsWithDatabase.getConnection($connection = …) → protected method InteractsWithDatabase.getConnection($connection = …, $table = …)
  • changed: protected method InteractsWithViews.blade(string $template, array $data = …) → protected method InteractsWithViews.blade(string $template, $data = …)
  • changed: protected method InteractsWithViews.component(string $componentClass, array $data = …) → protected method InteractsWithViews.component(string $componentClass, $data = …)
  • changed: protected method InteractsWithViews.view(string $view, array $data = …) → protected method InteractsWithViews.view(string $view, $data = …)
  • added: method InteractsWithDatabase.expectsDatabaseQueryCount($expected, $connection = …)
  • added: method InteractsWithTime.freezeSecond($callback = …)
  • added: method InteractsWithTime.freezeTime($callback = …)
  • added: method MakesHttpRequests.head($uri, array $headers = …)
  • added: method MakesHttpRequests.withBasicAuth(string $username, string $password)
  • added: method MakesHttpRequests.withoutToken()
  • added: property InteractsWithConsole.expectedOutputSubstrings
  • added: property InteractsWithConsole.unexpectedOutputSubstrings
  • added: protected method InteractsWithContainer.withVite()
  • added: protected method InteractsWithContainer.withoutVite()
  • added: protected method InteractsWithDatabase.assertDatabaseEmpty($table, $connection = …)
  • added: protected method InteractsWithDatabase.getTableConnection($table)
  • added: protected method InteractsWithDatabase.newModelFor($table)
  • added: protected method InteractsWithExceptionHandling.assertThrows(Closure $test, string $expectedClass = …, ?string $expectedMessage = …)
  • added: protected property InteractsWithContainer.originalVite
  • added: static property MakesHttpRequests.latestResponse
  • changed: method ValidatesRequests.validateWith($validator, Request $request = …) → method ValidatesRequests.validateWith($validator, ?Request $request = …)
  • changed: method JsonResponse.setData($data = …) → method JsonResponse.setData($data = …): static
  • changed: method JsonResponse.setEncodingOptions($options) → method JsonResponse.setEncodingOptions($options): static
  • changed: method RedirectResponse.withInput(array $input = …) → method RedirectResponse.withInput(?array $input = …)
  • changed: method Request.duplicate(array $query = …, array $request = …, array $attributes = …, array $cookies = …, array $files = …, array $server = …) → method Request.duplicate(?array $query = …, ?array $request = …, ?array $attributes = …, ?array $cookies = …, ?array $files = …, ?array $server = …): static
  • changed: method Request.get(string $key, $default = …) → method Request.get(string $key, mixed $default = …): mixed
  • changed: method Request.getSession() → method Request.getSession(): SessionInterface
  • changed: method Request.offsetExists($offset) → method Request.offsetExists($offset): bool
  • changed: method Request.offsetGet($offset) → method Request.offsetGet($offset): mixed
  • changed: method Request.offsetSet($offset, $value) → method Request.offsetSet($offset, $value): void
  • changed: method Request.offsetUnset($offset) → method Request.offsetUnset($offset): void
  • changed: method Request.toArray() → method Request.toArray(): array
  • changed: method Response.setContent($content) → method Response.setContent(mixed $content): static
  • changed: static method JsonResponse.fromJsonString(?string $data = …, int $status = …, array $headers = …) → static method JsonResponse.fromJsonString(?string $data = …, int $status = …, array $headers = …): static
  • added: method Request.hasSession(bool $skipIfUninitialized = …): bool
  • added: method Request.host()
  • added: method Request.httpHost()
  • added: method Request.schemeAndHttpHost()
  • added: method Request.setDefaultRequestLocale(string $locale)
  • added: method Request.setRequestLocale(string $locale)
  • removed: method Response.forbidden()
  • removed: method Response.ok()
  • removed: method Response.unauthorized()
  • changed: constructor Factory(Dispatcher $dispatcher = …) → constructor Factory(?Dispatcher $dispatcher = …)
  • changed: constructor PendingRequest(Factory $factory = …) → constructor PendingRequest(?Factory $factory = …)
  • changed: constructor Pool(Factory $factory = …) → constructor Pool(?Factory $factory = …)
  • changed: method PendingRequest.delete($url, $data = …) → method PendingRequest.delete(string $url, $data = …)
  • changed: method PendingRequest.patch($url, $data = …) → method PendingRequest.patch(string $url, $data = …)
  • changed: method PendingRequest.post(string $url, array $data = …) → method PendingRequest.post(string $url, $data = …)
  • changed: method PendingRequest.put($url, $data = …) → method PendingRequest.put(string $url, $data = …)
  • changed: method PendingRequest.retry(int $times, int $sleep = …, ?callable $when = …) → method PendingRequest.retry(int $times, int $sleepMilliseconds = …, ?callable $when = …, bool $throw = …)
  • changed: method Request.offsetExists($offset) → method Request.offsetExists($offset): bool
  • changed: method Request.offsetGet($offset) → method Request.offsetGet($offset): mixed
  • changed: method Request.offsetSet($offset, $value) → method Request.offsetSet($offset, $value): void
  • changed: method Request.offsetUnset($offset) → method Request.offsetUnset($offset): void
  • changed: method Response.offsetExists($offset) → method Response.offsetExists($offset): bool
  • changed: method Response.offsetGet($offset) → method Response.offsetGet($offset): mixed
  • changed: method Response.offsetSet($offset, $value) → method Response.offsetSet($offset, $value): void
  • changed: method Response.offsetUnset($offset) → method Response.offsetUnset($offset): void
  • added: method Factory.allowStrayRequests()
  • added: method Factory.preventStrayRequests($prevent = …)
  • added: method PendingRequest.connectTimeout(int $seconds)
  • added: method PendingRequest.maxRedirects(int $max)
  • added: method PendingRequest.preventStrayRequests($prevent = …)
  • added: method PendingRequest.throw(?callable $callback = …)
  • added: method PendingRequest.throwIf($condition)
  • added: method PendingRequest.throwUnless($condition)
  • added: method PendingRequest.withUrlParameters(array $parameters = …)
  • added: method Response.throwIfClientError()
  • added: method Response.throwIfServerError()
  • added: method Response.throwIfStatus($statusCode)
  • added: method Response.throwUnlessStatus($statusCode)
  • added: property Response.cookies
  • added: property Response.transferStats
  • added: protected method PendingRequest.expandUrlParameters(string $url)
  • added: protected method PendingRequest.parseHttpOptions(array $options)
  • added: protected property Factory.preventStrayRequests
  • added: protected property PendingRequest.handler
  • added: protected property PendingRequest.preventStrayRequests
  • added: protected property PendingRequest.retryThrow
  • added: protected property PendingRequest.throwCallback
  • added: protected property PendingRequest.throwIfCallback
  • added: protected property PendingRequest.urlParameters
  • added: method DeterminesStatusCode.accepted()
  • added: method DeterminesStatusCode.badRequest()
  • added: method DeterminesStatusCode.conflict()
  • added: method DeterminesStatusCode.created()
  • added: method DeterminesStatusCode.forbidden()
  • added: method DeterminesStatusCode.found()
  • added: method DeterminesStatusCode.movedPermanently()
  • added: method DeterminesStatusCode.noContent($status = …)
  • added: method DeterminesStatusCode.notFound()
  • added: method DeterminesStatusCode.ok()
  • added: method DeterminesStatusCode.paymentRequired()
  • added: method DeterminesStatusCode.requestTimeout()
  • added: method DeterminesStatusCode.tooManyRequests()
  • added: method DeterminesStatusCode.unauthorized()
  • added: method DeterminesStatusCode.unprocessableEntity()
  • added: trait DeterminesStatusCode
  • changed: method InteractsWithInput.whenFilled($key, callable $callback, callable $default = …) → method InteractsWithInput.whenFilled($key, callable $callback, ?callable $default = …)
  • changed: method InteractsWithInput.whenHas($key, callable $callback, callable $default = …) → method InteractsWithInput.whenHas($key, callable $callback, ?callable $default = …)
  • added: method CanBePrecognitive.filterPrecognitiveRules($rules)
  • added: method CanBePrecognitive.isAttemptingPrecognition()
  • added: method CanBePrecognitive.isPrecognitive()
  • added: method InteractsWithInput.enum($key, $enumClass)
  • added: method InteractsWithInput.float($key, $default = …)
  • added: method InteractsWithInput.integer($key, $default = …)
  • added: method InteractsWithInput.str($key, $default = …)
  • added: method InteractsWithInput.string($key, $default = …)
  • added: method InteractsWithInput.whenMissing($key, callable $callback, ?callable $default = …)
  • added: trait CanBePrecognitive
  • changed: constructor PostTooLargeException($message = …, Throwable $previous = …, array $headers = …, $code = …) → constructor PostTooLargeException($message = …, ?Throwable $previous = …, array $headers = …, $code = …)
  • changed: constructor ThrottleRequestsException($message = …, Throwable $previous = …, array $headers = …, $code = …) → constructor ThrottleRequestsException($message = …, ?Throwable $previous = …, array $headers = …, $code = …)
  • added: class AddLinkHeadersForPreloadedAssets
  • added: class HandleCors
  • added: constructor HandleCors(Container $container, CorsService $cors)
  • added: method AddLinkHeadersForPreloadedAssets.handle($request, $next)
  • added: method HandleCors.handle($request, Closure $next)
  • added: protected method HandleCors.getPathsByHost(string $host)
  • added: protected method HandleCors.hasMatchingPath(Request $request): bool
  • added: protected property HandleCors.container
  • added: protected property HandleCors.cors
  • changed: method CollectsResources.getIterator() → method CollectsResources.getIterator(): Traversable
  • changed: method DelegatesToResource.offsetExists($offset) → method DelegatesToResource.offsetExists($offset): bool
  • changed: method DelegatesToResource.offsetGet($offset) → method DelegatesToResource.offsetGet($offset): mixed
  • changed: method DelegatesToResource.offsetSet($offset, $value) → method DelegatesToResource.offsetSet($offset, $value): void
  • changed: method DelegatesToResource.offsetUnset($offset) → method DelegatesToResource.offsetUnset($offset): void
  • added: method ConditionallyLoadsAttributes.unless($condition, $value, $default = …)
  • added: method ConditionallyLoadsAttributes.whenCounted($relationship, $value = …, $default = …)
  • added: method ConditionallyLoadsAttributes.whenHas($attribute, $value = …, $default = …)
  • added: protected method ConditionallyLoadsAttributes.mergeUnless($condition, $value)
  • added: protected method ConditionallyLoadsAttributes.whenNotNull($value, $default = …)
  • added: protected method ConditionallyLoadsAttributes.whenNull($value, $default = …)
  • changed: method JsonResource.jsonSerialize() → method JsonResource.jsonSerialize(): array
  • changed: method ResourceCollection.count() → method ResourceCollection.count(): int
  • added: property AnonymousResourceCollection.preserveKeys
  • changed: method File.getMimeType() → method File.getMimeType(): string
  • changed: method File.getSize() → method File.getSize(): int
  • changed: constructor Logger(LoggerInterface $logger, Dispatcher $dispatcher = …) → constructor Logger(LoggerInterface $logger, ?Dispatcher $dispatcher = …)
  • changed: method LogManager.alert($message, array $context = …) → method LogManager.alert($message, array $context = …): void
  • changed: method LogManager.critical($message, array $context = …) → method LogManager.critical($message, array $context = …): void
  • changed: method LogManager.debug($message, array $context = …) → method LogManager.debug($message, array $context = …): void
  • changed: method LogManager.emergency($message, array $context = …) → method LogManager.emergency($message, array $context = …): void
  • changed: method LogManager.error($message, array $context = …) → method LogManager.error($message, array $context = …): void
  • changed: method LogManager.info($message, array $context = …) → method LogManager.info($message, array $context = …): void
  • changed: method LogManager.log($level, $message, array $context = …) → method LogManager.log($level, $message, array $context = …): void
  • changed: method LogManager.notice($message, array $context = …) → method LogManager.notice($message, array $context = …): void
  • changed: method LogManager.warning($message, array $context = …) → method LogManager.warning($message, array $context = …): void
  • changed: method Logger.alert($message, array $context = …) → method Logger.alert($message, array $context = …): void
  • changed: method Logger.critical($message, array $context = …) → method Logger.critical($message, array $context = …): void
  • changed: method Logger.debug($message, array $context = …) → method Logger.debug($message, array $context = …): void
  • changed: method Logger.emergency($message, array $context = …) → method Logger.emergency($message, array $context = …): void
  • changed: method Logger.error($message, array $context = …) → method Logger.error($message, array $context = …): void
  • changed: method Logger.info($message, array $context = …) → method Logger.info($message, array $context = …): void
  • changed: method Logger.log($level, $message, array $context = …) → method Logger.log($level, $message, array $context = …): void
  • changed: method Logger.notice($message, array $context = …) → method Logger.notice($message, array $context = …): void
  • changed: method Logger.warning($message, array $context = …) → method Logger.warning($message, array $context = …): void
  • changed: method Logger.write($level, $message, array $context = …) → method Logger.write($level, $message, array $context = …): void
  • changed: protected method Logger.writeLog($level, $message, $context) → protected method Logger.writeLog($level, $message, $context): void
  • added: method LogManager.flushSharedContext()
  • added: method LogManager.shareContext(array $context)
  • added: method LogManager.sharedContext()
  • added: protected property LogManager.sharedContext
  • removed: method MailManager.createTransport(array $config)
  • removed: method Mailable.withSwiftMessage($callback)
  • removed: method Mailer.failures()
  • removed: method Mailer.getSwiftMailer()
  • removed: method Mailer.setSwiftMailer($swift)
  • removed: method Message.getSwiftMessage()
  • removed: protected method MailManager.createSwiftMailer(array $config)
  • removed: protected method MailManager.guzzle(array $config)
  • removed: protected method Mailer.forceReconnection()
  • removed: protected method Mailer.sendSwiftMessage($message)
  • removed: protected method Message.createAttachmentFromData($data, $name)
  • removed: protected method Message.createAttachmentFromPath($file)
  • removed: protected method Message.prepAttachment($attachment, $options = …)
  • removed: protected property Mailer.failedRecipients
  • removed: protected property Mailer.swift
  • removed: protected property Message.swift
  • changed: constructor Mailer(string $name, Factory $views, Swift_Mailer $swift, Dispatcher $events = …) → constructor Mailer(string $name, Factory $views, TransportInterface $transport, ?Dispatcher $events = …)
  • changed: constructor Message($swift) → constructor Message(Email $message)
  • changed: protected method MailManager.configureSmtpTransport($transport, array $config) → protected method MailManager.configureSmtpTransport(EsmtpTransport $transport, array $config)
  • added: class Attachment
  • added: class SentMessage
  • added: constructor SentMessage(SymfonySentMessage $sentMessage)
  • added: method Attachment.as($name)
  • added: method Attachment.attachTo($mail)
  • added: method Attachment.attachWith(Closure $pathStrategy, Closure $dataStrategy)
  • added: method Attachment.isEquivalent(Attachment $attachment)
  • added: method Attachment.withMime($mime)
  • added: method MailManager.createSymfonyTransport(array $config)
  • added: method Mailable.assertFrom($address, $name = …)
  • added: method Mailable.assertHasAttachedData($data, $name, array $options = …)
  • added: method Mailable.assertHasAttachment($file, array $options = …)
  • added: method Mailable.assertHasAttachmentFromStorage($path, $name = …, array $options = …)
  • added: method Mailable.assertHasAttachmentFromStorageDisk($disk, $path, $name = …, array $options = …)
  • added: method Mailable.assertHasBcc($address, $name = …)
  • added: method Mailable.assertHasCc($address, $name = …)
  • added: method Mailable.assertHasMetadata($key, $value)
  • added: method Mailable.assertHasReplyTo($address, $name = …)
  • added: method Mailable.assertHasSubject($subject)
  • added: method Mailable.assertHasTag($tag)
  • added: method Mailable.assertHasTo($address, $name = …)
  • added: method Mailable.assertSeeInOrderInHtml($strings)
  • added: method Mailable.assertSeeInOrderInText($strings)
  • added: method Mailable.assertTo($address, $name = …)
  • added: method Mailable.attachMany($files)
  • added: method Mailable.hasAttachedData($data, $name, array $options = …)
  • added: method Mailable.hasAttachment($file, array $options = …)
  • added: method Mailable.hasAttachmentFromStorage($path, $name = …, array $options = …)
  • added: method Mailable.hasAttachmentFromStorageDisk($disk, $path, $name = …, array $options = …)
  • added: method Mailable.hasMetadata($key, $value)
  • added: method Mailable.hasSubject($subject)
  • added: method Mailable.hasTag($value)
  • added: method Mailable.metadata($key, $value)
  • added: method Mailable.tag($value)
  • added: method Mailable.withSymfonyMessage($callback)
  • added: method Mailer.getSymfonyTransport()
  • added: method Mailer.setSymfonyTransport(TransportInterface $transport)
  • added: method Message.forgetBcc()
  • added: method Message.forgetCc()
  • added: method Message.forgetTo()
  • added: method Message.getSymfonyMessage()
  • added: method SendQueuedMailable.retryUntil()
  • added: method SentMessage.__call($method, $parameters)
  • added: method SentMessage.getSymfonySentMessage()
  • added: property Attachment.as
  • added: property Attachment.mime
  • added: property SendQueuedMailable.maxExceptions
  • added: protected method MailManager.createSesV2Transport(array $config)
  • added: protected method MailManager.getHttpClient(array $config)
  • added: protected method Mailable.buildMetadata($message)
  • added: protected method Mailable.buildTags($message)
  • added: protected method Mailer.sendSymfonyMessage(Email $message)
  • added: protected method Message.addAddressDebugHeader(string $header, array $addresses)
  • added: protected property Attachment.resolver
  • added: protected property Mailable.metadata
  • added: protected property Mailable.tags
  • added: protected property Mailer.transport
  • added: protected property Message.message
  • added: protected property SentMessage.sentMessage
  • added: static method Attachment.fromData(Closure $data, $name)
  • added: static method Attachment.fromPath($path)
  • added: static method Attachment.fromStorage($path)
  • added: static method Attachment.fromStorageDisk($disk, $path)
  • removed: property MessageSent.message
  • changed: constructor MessageSending($message, $data = …) → constructor MessageSending(Email $message, array $data = …)
  • changed: constructor MessageSent($message, $data = …) → constructor MessageSent(SentMessage $message, array $data = …)
  • added: method MessageSent.__get($key)
  • added: property MessageSent.sent
  • added: class Address
  • added: class Attachment extends BaseAttachment
  • added: class Content
  • added: class Envelope
  • added: class Headers
  • added: constructor Address(string $address, ?string $name = …)
  • added: constructor Content(?string $view = …, ?string $html = …, ?string $text = …, $markdown = …, array $with = …, ?string $htmlString = …)
  • added: constructor Envelope(Address|string|null $from = …, $to = …, $cc = …, $bcc = …, $replyTo = …, ?string $subject = …, array $tags = …, array $metadata = …, Closure|array $using = …)
  • added: constructor Headers(?string $messageId = …, array $references = …, array $text = …)
  • added: method Content.html(string $view)
  • added: method Content.htmlString(string $html)
  • added: method Content.markdown(string $view)
  • added: method Content.text(string $view)
  • added: method Content.view(string $view)
  • added: method Content.with($key, $value = …)
  • added: method Envelope.bcc(Address|array|string $address, $name = …)
  • added: method Envelope.cc(Address|array|string $address, $name = …)
  • added: method Envelope.from(Address|string $address, $name = …)
  • added: method Envelope.hasBcc(string $address, ?string $name = …)
  • added: method Envelope.hasCc(string $address, ?string $name = …)
  • added: method Envelope.hasMetadata(string $key, string $value)
  • added: method Envelope.hasReplyTo(string $address, ?string $name = …)
  • added: method Envelope.hasSubject(string $subject)
  • added: method Envelope.hasTo(string $address, ?string $name = …)
  • added: method Envelope.isFrom(string $address, ?string $name = …)
  • added: method Envelope.metadata(string $key, string|int $value)
  • added: method Envelope.replyTo(Address|array|string $address, $name = …)
  • added: method Envelope.subject(string $subject)
  • added: method Envelope.tag(string $tag)
  • added: method Envelope.tags(array $tags)
  • added: method Envelope.to(Address|array|string $address, $name = …)
  • added: method Envelope.using(Closure $callback)
  • added: method Headers.messageId(string $messageId)
  • added: method Headers.references(array $references)
  • added: method Headers.referencesString(): string
  • added: method Headers.text(array $text)
  • added: property Address.address
  • added: property Address.name
  • added: property Content.html
  • added: property Content.htmlString
  • added: property Content.markdown
  • added: property Content.text
  • added: property Content.view
  • added: property Content.with
  • added: property Envelope.bcc
  • added: property Envelope.cc
  • added: property Envelope.from
  • added: property Envelope.metadata
  • added: property Envelope.replyTo
  • added: property Envelope.subject
  • added: property Envelope.tags
  • added: property Envelope.to
  • added: property Envelope.using
  • added: property Headers.messageId
  • added: property Headers.references
  • added: property Headers.text
  • added: protected method Envelope.hasRecipient(array $recipients, string $address, ?string $name = …)
  • added: protected method Envelope.normalizeAddresses($addresses)
  • removed: abstract class Transport implements Swift_Transport
  • removed: class MailgunTransport extends Transport
  • removed: constructor MailgunTransport(ClientInterface $client, $key, $domain, $endpoint = …)
  • removed: method MailgunTransport.getDomain()
  • removed: method MailgunTransport.getEndpoint()
  • removed: method MailgunTransport.getKey()
  • removed: method MailgunTransport.send(Swift_Mime_SimpleMessage $message, &$failedRecipients = …)
  • removed: method MailgunTransport.setDomain($domain)
  • removed: method MailgunTransport.setEndpoint($endpoint)
  • removed: method MailgunTransport.setKey($key)
  • removed: method SesTransport.send(Swift_Mime_SimpleMessage $message, &$failedRecipients = …)
  • removed: method Transport.isStarted()
  • removed: method Transport.ping()
  • removed: method Transport.registerPlugin(Swift_Events_EventListener $plugin)
  • removed: method Transport.start()
  • removed: method Transport.stop()
  • removed: property Transport.plugins
  • removed: protected method LogTransport.getMimeEntityString(Swift_Mime_SimpleMimeEntity $entity)
  • removed: protected method MailgunTransport.allContacts(Swift_Mime_SimpleMessage $message)
  • removed: protected method MailgunTransport.getMessageId($response)
  • removed: protected method MailgunTransport.getTo(Swift_Mime_SimpleMessage $message)
  • removed: protected method MailgunTransport.payload(Swift_Mime_SimpleMessage $message, $to)
  • removed: protected method Transport.beforeSendPerformed(Swift_Mime_SimpleMessage $message)
  • removed: protected method Transport.numberOfRecipients(Swift_Mime_SimpleMessage $message)
  • removed: protected method Transport.sendPerformed(Swift_Mime_SimpleMessage $message)
  • removed: protected property MailgunTransport.client
  • removed: protected property MailgunTransport.domain
  • removed: protected property MailgunTransport.endpoint
  • removed: protected property MailgunTransport.key
  • changed: class ArrayTransport extends Transport → class ArrayTransport implements TransportInterface
  • changed: class LogTransport extends Transport → class LogTransport implements TransportInterface
  • changed: class SesTransport extends Transport → class SesTransport extends AbstractTransport
  • changed: method ArrayTransport.send(Swift_Mime_SimpleMessage $message, &$failedRecipients = …) → method ArrayTransport.send(RawMessage $message, ?Envelope $envelope = …): ?SentMessage
  • changed: method LogTransport.send(Swift_Mime_SimpleMessage $message, &$failedRecipients = …) → method LogTransport.send(RawMessage $message, ?Envelope $envelope = …): ?SentMessage
  • added: class SesV2Transport extends AbstractTransport
  • added: constructor SesV2Transport(SesV2Client $ses, $options = …)
  • added: method ArrayTransport.__toString(): string
  • added: method LogTransport.__toString(): string
  • added: method SesTransport.__toString(): string
  • added: method SesV2Transport.__toString(): string
  • added: method SesV2Transport.getOptions()
  • added: method SesV2Transport.ses()
  • added: method SesV2Transport.setOptions(array $options)
  • added: protected method SesTransport.doSend(SentMessage $message): void
  • added: protected method SesV2Transport.doSend(SentMessage $message): void
  • added: protected property SesV2Transport.options
  • added: protected property SesV2Transport.ses
  • changed: constructor SendQueuedNotifications($notifiables, $notification, array $channels = …) → constructor SendQueuedNotifications($notifiables, $notification, ?array $channels = …)
  • changed: method ChannelManager.sendNow($notifiables, $notification, array $channels = …) → method ChannelManager.sendNow($notifiables, $notification, ?array $channels = …)
  • changed: method NotificationSender.sendNow($notifiables, $notification, array $channels = …) → method NotificationSender.sendNow($notifiables, $notification, ?array $channels = …)
  • changed: method RoutesNotifications.notifyNow($instance, array $channels = …) → method RoutesNotifications.notifyNow($instance, ?array $channels = …)
  • added: property SendQueuedNotifications.maxExceptions
  • added: protected static property NotificationTableCommand.defaultName
  • removed: method MailMessage.withSwiftMessage($callback)
  • added: method MailMessage.metadata($key, $value)
  • added: method MailMessage.tag($value)
  • added: method MailMessage.withSymfonyMessage($callback)
  • added: method SimpleMessage.lineIf($boolean, $line)
  • added: method SimpleMessage.linesIf($boolean, $lines)
  • added: property MailMessage.metadata
  • added: property MailMessage.tags
  • removed: class CursorPaginationException extends RuntimeException
  • changed: method AbstractCursorPaginator.count() → method AbstractCursorPaginator.count(): int
  • changed: method AbstractCursorPaginator.getIterator() → method AbstractCursorPaginator.getIterator(): Traversable
  • changed: method AbstractCursorPaginator.offsetExists($key) → method AbstractCursorPaginator.offsetExists($key): bool
  • changed: method AbstractCursorPaginator.offsetGet($key) → method AbstractCursorPaginator.offsetGet($key): mixed
  • changed: method AbstractCursorPaginator.offsetSet($key, $value) → method AbstractCursorPaginator.offsetSet($key, $value): void
  • changed: method AbstractCursorPaginator.offsetUnset($key) → method AbstractCursorPaginator.offsetUnset($key): void
  • changed: method AbstractPaginator.count() → method AbstractPaginator.count(): int
  • changed: method AbstractPaginator.getIterator() → method AbstractPaginator.getIterator(): Traversable
  • changed: method AbstractPaginator.offsetExists($key) → method AbstractPaginator.offsetExists($key): bool
  • changed: method AbstractPaginator.offsetGet($key) → method AbstractPaginator.offsetGet($key): mixed
  • changed: method AbstractPaginator.offsetSet($key, $value) → method AbstractPaginator.offsetSet($key, $value): void
  • changed: method AbstractPaginator.offsetUnset($key) → method AbstractPaginator.offsetUnset($key): void
  • changed: method CursorPaginator.jsonSerialize() → method CursorPaginator.jsonSerialize(): array
  • changed: method LengthAwarePaginator.jsonSerialize() → method LengthAwarePaginator.jsonSerialize(): array
  • changed: method Paginator.jsonSerialize() → method Paginator.jsonSerialize(): array
  • added: method CursorPaginator.onLastPage()
  • added: static method AbstractPaginator.useBootstrapFive()
  • added: static method AbstractPaginator.useBootstrapFour()
  • changed: constructor Hub(Container $container = …) → constructor Hub(?Container $container = …)
  • changed: constructor Pipeline(Container $container = …) → constructor Pipeline(?Container $container = …)
  • added: method Pipeline.pipe($pipes)
  • removed: class SerializableClosure extends OpisSerializableClosure
  • removed: class SerializableClosureFactory
  • removed: method SerializesModels.__sleep()
  • removed: method SerializesModels.__wakeup()
  • removed: protected method SerializableClosure.resolveUseVariables($data)
  • removed: protected method SerializableClosure.transformUseVariables($data)
  • removed: static method SerializableClosureFactory.make($closure)
  • changed: constructor InvalidPayloadException($message = …) → constructor InvalidPayloadException($message = …, $value = …)
  • changed: constructor ListenerOptions($name = …, $environment = …, $backoff = …, $memory = …, $timeout = …, $sleep = …, $maxTries = …, $force = …) → constructor ListenerOptions($name = …, $environment = …, $backoff = …, $memory = …, $timeout = …, $sleep = …, $maxTries = …, $force = …, $rest = …)
  • changed: constructor RedisQueue(Redis $redis, $default = …, $connection = …, $retryAfter = …, $blockFor = …, $dispatchAfterCommit = …) → constructor RedisQueue(Redis $redis, $default = …, $connection = …, $retryAfter = …, $blockFor = …, $dispatchAfterCommit = …, $migrationBatchSize = …)
  • changed: constructor Worker(QueueManager $manager, Dispatcher $events, ExceptionHandler $exceptions, callable $isDownForMaintenance, callable $resetScope = …) → constructor Worker(QueueManager $manager, Dispatcher $events, ExceptionHandler $exceptions, callable $isDownForMaintenance, ?callable $resetScope = …)
  • changed: method Worker.kill($status = …) → method Worker.kill($status = …, $options = …)
  • changed: method Worker.stop($status = …) → method Worker.stop($status = …, $options = …)
  • added: method BeanstalkdQueue.bulk($jobs, $data = …, $queue = …)
  • added: method SqsQueue.bulk($jobs, $data = …, $queue = …)
  • added: property InvalidPayloadException.value
  • added: protected property RedisQueue.migrationBatchSize
  • changed: constructor Manager(Container $container = …) → constructor Manager(?Container $container = …)
  • removed: protected method WorkCommand.writeStatus(Job $job, $status, $type)
  • removed: protected property FlushFailedCommand.name
  • changed: protected method BatchesTableCommand.replaceMigration($path, $table, $tableClassName) → protected method BatchesTableCommand.replaceMigration($path, $table)
  • changed: protected method FailedTableCommand.replaceMigration($path, $table, $tableClassName) → protected method FailedTableCommand.replaceMigration($path, $table)
  • changed: protected method TableCommand.replaceMigration($path, $table, $tableClassName) → protected method TableCommand.replaceMigration($path, $table)
  • added: protected method WorkCommand.now()
  • added: protected property FlushFailedCommand.signature
  • added: protected property WorkCommand.latestStartedAt
  • added: protected static property BatchesTableCommand.defaultName
  • added: protected static property ClearCommand.defaultName
  • added: protected static property FailedTableCommand.defaultName
  • added: protected static property FlushFailedCommand.defaultName
  • added: protected static property ForgetFailedCommand.defaultName
  • added: protected static property ListFailedCommand.defaultName
  • added: protected static property ListenCommand.defaultName
  • added: protected static property MonitorCommand.defaultName
  • added: protected static property PruneBatchesCommand.defaultName
  • added: protected static property PruneFailedJobsCommand.defaultName
  • added: protected static property RestartCommand.defaultName
  • added: protected static property RetryBatchCommand.defaultName
  • added: protected static property RetryCommand.defaultName
  • added: protected static property TableCommand.defaultName
  • added: protected static property WorkCommand.defaultName
  • changed: constructor WorkerStopping($status = …) → constructor WorkerStopping($status = …, $workerOptions = …)
  • added: class JobReleasedAfterException
  • added: constructor JobReleasedAfterException($connectionName, $job)
  • added: property JobReleasedAfterException.connectionName
  • added: property JobReleasedAfterException.job
  • added: property WorkerStopping.workerOptions
  • changed: method DatabaseFailedJobProvider.flush() → method DatabaseFailedJobProvider.flush($hours = …)
  • changed: method DatabaseUuidFailedJobProvider.flush() → method DatabaseUuidFailedJobProvider.flush($hours = …)
  • changed: method DynamoDbFailedJobProvider.flush() → method DynamoDbFailedJobProvider.flush($hours = …)
  • changed: method FailedJobProviderInterface.flush() → method FailedJobProviderInterface.flush($hours = …)
  • changed: method NullFailedJobProvider.flush() → method NullFailedJobProvider.flush($hours = …)
  • added: class SkipIfBatchCancelled
  • added: method SkipIfBatchCancelled.handle($job, $next)
  • added: method WithoutOverlapping.shared()
  • added: property WithoutOverlapping.shareKey
  • changed: constructor PhpRedisConnection($client, callable $connector = …, array $config = …) → constructor PhpRedisConnection($client, ?callable $connector = …, array $config = …)
  • changed: method PhpRedisConnection.pipeline(callable $callback = …) → method PhpRedisConnection.pipeline(?callable $callback = …)
  • changed: method PhpRedisConnection.transaction(callable $callback = …) → method PhpRedisConnection.transaction(?callable $callback = …)
  • added: protected method Connection.parseParametersForEvent(array $parameters)
  • added: protected method PredisConnection.parseParametersForEvent(array $parameters)
  • changed: method ConcurrencyLimiter.block($timeout, $callback = …) → method ConcurrencyLimiter.block($timeout, $callback = …, $sleep = …)
  • changed: method ConcurrencyLimiterBuilder.then(callable $callback, callable $failure = …) → method ConcurrencyLimiterBuilder.then(callable $callback, ?callable $failure = …)
  • changed: method DurationLimiter.block($timeout, $callback = …) → method DurationLimiter.block($timeout, $callback = …, $sleep = …)
  • changed: method DurationLimiterBuilder.then(callable $callback, callable $failure = …) → method DurationLimiterBuilder.then(callable $callback, ?callable $failure = …)
  • added: method ConcurrencyLimiterBuilder.sleep($sleep)
  • added: method DurationLimiterBuilder.sleep($sleep)
  • added: property ConcurrencyLimiterBuilder.sleep
  • added: property DurationLimiterBuilder.sleep
  • changed: constructor Router(Dispatcher $events, Container $container = …) → constructor Router(Dispatcher $events, ?Container $container = …)
  • changed: method AbstractRouteCollection.count() → method AbstractRouteCollection.count(): int
  • changed: method AbstractRouteCollection.getIterator() → method AbstractRouteCollection.getIterator(): Traversable
  • changed: method Route.signatureParameters($subClass = …) → method Route.signatureParameters($conditions = …)
  • changed: method Router.model($key, $class, Closure $callback = …) → method Router.model($key, $class, ?Closure $callback = …)
  • changed: method UrlGenerator.hasCorrectSignature(Request $request, $absolute = …) → method UrlGenerator.hasCorrectSignature(Request $request, $absolute = …, array $ignoreQuery = …)
  • changed: method UrlGenerator.hasValidRelativeSignature(Request $request) → method UrlGenerator.hasValidRelativeSignature(Request $request, array $ignoreQuery = …)
  • changed: method UrlGenerator.hasValidSignature(Request $request, $absolute = …) → method UrlGenerator.hasValidSignature(Request $request, $absolute = …, array $ignoreQuery = …)
  • changed: protected static method ControllerDispatcher.methodExcludedByOptions($method, array $options) → static method ControllerDispatcher.methodExcludedByOptions($method, array $options)
  • changed: static method RouteSignatureParameters.fromAction(array $action, $subClass = …) → static method RouteSignatureParameters.fromAction(array $action, $conditions = …)
  • added: class CallableDispatcher implements CallableDispatcherContract
  • added: class PendingSingletonResourceRegistration
  • added: constructor CallableDispatcher(Container $container)
  • added: constructor PendingSingletonResourceRegistration(ResourceRegistrar $registrar, $name, $controller, array $options)
  • added: method CallableDispatcher.dispatch(Route $route, $callable)
  • added: method CreatesRegularExpressionRouteConstraints.whereIn($parameters, array $values)
  • added: method CreatesRegularExpressionRouteConstraints.whereUlid($parameters)
  • added: method PendingResourceRegistration.withTrashed(array $methods = …)
  • added: method PendingSingletonResourceRegistration.__destruct()
  • added: method PendingSingletonResourceRegistration.creatable()
  • added: method PendingSingletonResourceRegistration.destroyable()
  • added: method PendingSingletonResourceRegistration.except($methods)
  • added: method PendingSingletonResourceRegistration.middleware($middleware)
  • added: method PendingSingletonResourceRegistration.name($method, $name)
  • added: method PendingSingletonResourceRegistration.names($names)
  • added: method PendingSingletonResourceRegistration.only($methods)
  • added: method PendingSingletonResourceRegistration.parameter($previous, $new)
  • added: method PendingSingletonResourceRegistration.parameters($parameters)
  • added: method PendingSingletonResourceRegistration.register()
  • added: method PendingSingletonResourceRegistration.where($wheres)
  • added: method PendingSingletonResourceRegistration.withoutMiddleware($middleware)
  • added: method Redirector.getIntendedUrl()
  • added: method ResourceRegistrar.singleton($name, $controller, array $options = …)
  • added: method Route.getControllerClass()
  • added: method Route.preventsScopedBindings()
  • added: method Route.withoutScopedBindings()
  • added: method RouteRegistrar.apiSingleton($name, $controller, array $options = …)
  • added: method RouteRegistrar.singleton($name, $controller, array $options = …)
  • added: method Router.apiSingleton($name, $controller, array $options = …)
  • added: method Router.apiSingletons(array $singletons, array $options = …)
  • added: method Router.removeMiddlewareFromGroup($group, $middleware)
  • added: method Router.resolveMiddleware(array $middleware, array $excluded = …)
  • added: method Router.singleton($name, $controller, array $options = …)
  • added: method Router.singletons(array $singletons, array $options = …)
  • added: method UrlGenerator.getRootControllerNamespace()
  • added: method UrlGenerator.previousPath($fallback = …)
  • added: method UrlGenerator.withKeyResolver(callable $keyResolver)
  • added: method ViewController.callAction($method, $parameters)
  • added: protected method AbstractRouteCollection.requestMethodNotAllowed($request, array $others, $method)
  • added: protected method CallableDispatcher.resolveParameters(Route $route, $callable)
  • added: protected method ControllerDispatcher.resolveParameters(Route $route, $controller, $method)
  • added: protected method ResourceRegistrar.addSingletonCreate($name, $controller, $options)
  • added: protected method ResourceRegistrar.addSingletonDestroy($name, $controller, $options)
  • added: protected method ResourceRegistrar.addSingletonEdit($name, $controller, $options)
  • added: protected method ResourceRegistrar.addSingletonShow($name, $controller, $options)
  • added: protected method ResourceRegistrar.addSingletonStore($name, $controller, $options)
  • added: protected method ResourceRegistrar.addSingletonUpdate($name, $controller, $options)
  • added: protected method ResourceRegistrar.prefixedSingleton($name, $controller, array $options)
  • added: protected method Route.staticallyProvidedControllerMiddleware(string $class, string $method)
  • added: protected method RoutingServiceProvider.registerCallableDispatcher()
  • added: protected property CallableDispatcher.container
  • added: protected property PendingSingletonResourceRegistration.controller
  • added: protected property PendingSingletonResourceRegistration.name
  • added: protected property PendingSingletonResourceRegistration.options
  • added: protected property PendingSingletonResourceRegistration.registered
  • added: protected property PendingSingletonResourceRegistration.registrar
  • added: protected property ResourceRegistrar.singletonResourceDefaults
  • added: protected static method ImplicitRouteBinding.resolveBackedEnumsForRoute($route, $parameters)
  • added: protected method ControllerMakeCommand.afterPromptingForMissingArguments(InputInterface $input, OutputInterface $output)
  • added: protected static property ControllerMakeCommand.defaultName
  • added: protected static property MiddlewareMakeCommand.defaultName
  • added: interface CallableDispatcher
  • added: method CallableDispatcher.dispatch(Route $route, $callable)
  • added: class Middleware
  • added: constructor Middleware(Closure|string|array $middleware)
  • added: interface HasMiddleware
  • added: method Middleware.except(array|string $except)
  • added: method Middleware.only(array|string $only)
  • added: property Middleware.except
  • added: property Middleware.middleware
  • added: property Middleware.only
  • added: static method HasMiddleware.middleware()
  • added: class Routing
  • added: constructor Routing($request)
  • added: property Routing.request
  • added: class BackedEnumCaseNotFoundException extends RuntimeException
  • added: class StreamedResponseException extends RuntimeException
  • added: constructor BackedEnumCaseNotFoundException($backedEnumClass, $case)
  • added: constructor StreamedResponseException(Throwable $originalException)
  • added: method StreamedResponseException.getInnerException()
  • added: method StreamedResponseException.render()
  • added: property StreamedResponseException.originalException
  • added: protected property ValidateSignature.ignore
  • changed: constructor DatabaseSessionHandler(ConnectionInterface $connection, $table, $minutes, Container $container = …) → constructor DatabaseSessionHandler(ConnectionInterface $connection, $table, $minutes, ?Container $container = …)
  • changed: constructor EncryptedStore($name, SessionHandlerInterface $handler, EncrypterContract $encrypter, $id = …) → constructor EncryptedStore($name, SessionHandlerInterface $handler, EncrypterContract $encrypter, $id = …, $serialization = …)
  • changed: constructor Store($name, SessionHandlerInterface $handler, $id = …) → constructor Store($name, SessionHandlerInterface $handler, $id = …, $serialization = …)
  • changed: method ArraySessionHandler.close() → method ArraySessionHandler.close(): bool
  • changed: method ArraySessionHandler.destroy($sessionId) → method ArraySessionHandler.destroy($sessionId): bool
  • changed: method ArraySessionHandler.gc($lifetime) → method ArraySessionHandler.gc($lifetime): int
  • changed: method ArraySessionHandler.open($savePath, $sessionName) → method ArraySessionHandler.open($savePath, $sessionName): bool
  • changed: method ArraySessionHandler.read($sessionId) → method ArraySessionHandler.read($sessionId): string|false
  • changed: method ArraySessionHandler.write($sessionId, $data) → method ArraySessionHandler.write($sessionId, $data): bool
  • changed: method CacheBasedSessionHandler.close() → method CacheBasedSessionHandler.close(): bool
  • changed: method CacheBasedSessionHandler.destroy($sessionId) → method CacheBasedSessionHandler.destroy($sessionId): bool
  • changed: method CacheBasedSessionHandler.gc($lifetime) → method CacheBasedSessionHandler.gc($lifetime): int
  • changed: method CacheBasedSessionHandler.open($savePath, $sessionName) → method CacheBasedSessionHandler.open($savePath, $sessionName): bool
  • changed: method CacheBasedSessionHandler.read($sessionId) → method CacheBasedSessionHandler.read($sessionId): string
  • changed: method CacheBasedSessionHandler.write($sessionId, $data) → method CacheBasedSessionHandler.write($sessionId, $data): bool
  • changed: method CookieSessionHandler.close() → method CookieSessionHandler.close(): bool
  • changed: method CookieSessionHandler.destroy($sessionId) → method CookieSessionHandler.destroy($sessionId): bool
  • changed: method CookieSessionHandler.gc($lifetime) → method CookieSessionHandler.gc($lifetime): int
  • changed: method CookieSessionHandler.open($savePath, $sessionName) → method CookieSessionHandler.open($savePath, $sessionName): bool
  • changed: method CookieSessionHandler.read($sessionId) → method CookieSessionHandler.read($sessionId): string|false
  • changed: method CookieSessionHandler.write($sessionId, $data) → method CookieSessionHandler.write($sessionId, $data): bool
  • changed: method DatabaseSessionHandler.close() → method DatabaseSessionHandler.close(): bool
  • changed: method DatabaseSessionHandler.destroy($sessionId) → method DatabaseSessionHandler.destroy($sessionId): bool
  • changed: method DatabaseSessionHandler.gc($lifetime) → method DatabaseSessionHandler.gc($lifetime): int
  • changed: method DatabaseSessionHandler.open($savePath, $sessionName) → method DatabaseSessionHandler.open($savePath, $sessionName): bool
  • changed: method DatabaseSessionHandler.read($sessionId) → method DatabaseSessionHandler.read($sessionId): string|false
  • changed: method DatabaseSessionHandler.write($sessionId, $data) → method DatabaseSessionHandler.write($sessionId, $data): bool
  • changed: method FileSessionHandler.close() → method FileSessionHandler.close(): bool
  • changed: method FileSessionHandler.destroy($sessionId) → method FileSessionHandler.destroy($sessionId): bool
  • changed: method FileSessionHandler.gc($lifetime) → method FileSessionHandler.gc($lifetime): int
  • changed: method FileSessionHandler.open($savePath, $sessionName) → method FileSessionHandler.open($savePath, $sessionName): bool
  • changed: method FileSessionHandler.read($sessionId) → method FileSessionHandler.read($sessionId): string|false
  • changed: method FileSessionHandler.write($sessionId, $data) → method FileSessionHandler.write($sessionId, $data): bool
  • changed: method NullSessionHandler.close() → method NullSessionHandler.close(): bool
  • changed: method NullSessionHandler.destroy($sessionId) → method NullSessionHandler.destroy($sessionId): bool
  • changed: method NullSessionHandler.gc($lifetime) → method NullSessionHandler.gc($lifetime): int
  • changed: method NullSessionHandler.open($savePath, $sessionName) → method NullSessionHandler.open($savePath, $sessionName): bool
  • changed: method NullSessionHandler.read($sessionId) → method NullSessionHandler.read($sessionId): string
  • changed: method NullSessionHandler.write($sessionId, $data) → method NullSessionHandler.write($sessionId, $data): bool
  • added: class SymfonySessionDecorator implements SessionInterface
  • added: constructor SymfonySessionDecorator(Session $store)
  • added: method Store.setHandler(SessionHandlerInterface $handler)
  • added: method SymfonySessionDecorator.all(): array
  • added: method SymfonySessionDecorator.clear()
  • added: method SymfonySessionDecorator.get(string $name, mixed $default = …): mixed
  • added: method SymfonySessionDecorator.getBag(string $name): SessionBagInterface
  • added: method SymfonySessionDecorator.getId(): string
  • added: method SymfonySessionDecorator.getMetadataBag(): MetadataBag
  • added: method SymfonySessionDecorator.getName(): string
  • added: method SymfonySessionDecorator.has(string $name): bool
  • added: method SymfonySessionDecorator.invalidate(?int $lifetime = …): bool
  • added: method SymfonySessionDecorator.isStarted(): bool
  • added: method SymfonySessionDecorator.migrate(bool $destroy = …, ?int $lifetime = …): bool
  • added: method SymfonySessionDecorator.registerBag(SessionBagInterface $bag)
  • added: method SymfonySessionDecorator.remove(string $name): mixed
  • added: method SymfonySessionDecorator.replace(array $attributes)
  • added: method SymfonySessionDecorator.save()
  • added: method SymfonySessionDecorator.set(string $name, mixed $value)
  • added: method SymfonySessionDecorator.setId(string $id)
  • added: method SymfonySessionDecorator.setName(string $name)
  • added: method SymfonySessionDecorator.start(): bool
  • added: protected method Store.marshalErrorBag()
  • added: protected method Store.prepareErrorBagForSerialization()
  • added: protected property Store.serialization
  • added: protected property SymfonySessionDecorator.store
  • added: protected static property SessionTableCommand.defaultName
  • changed: class AuthenticateSession → class AuthenticateSession implements AuthenticatesSessions
  • changed: constructor StartSession(SessionManager $manager, callable $cacheFactoryResolver = …) → constructor StartSession(SessionManager $manager, ?callable $cacheFactoryResolver = …)
  • changed: protected method StartSession.sessionIsPersistent(array $config = …) → protected method StartSession.sessionIsPersistent(?array $config = …)
  • removed: protected property HigherOrderWhenProxy.collection
  • changed: constructor HigherOrderWhenProxy(Enumerable $collection, $condition) → constructor HigherOrderWhenProxy($target)
  • changed: method Collection.count() → method Collection.count(): int
  • changed: method Collection.filter(callable $callback = …) → method Collection.filter(?callable $callback = …)
  • changed: method Collection.first(callable $callback = …, $default = …) → method Collection.first(?callable $callback = …, $default = …)
  • changed: method Collection.getIterator() → method Collection.getIterator(): Traversable
  • changed: method Collection.last(callable $callback = …, $default = …) → method Collection.last(?callable $callback = …, $default = …)
  • changed: method Collection.offsetExists($key) → method Collection.offsetExists($key): bool
  • changed: method Collection.offsetGet($key) → method Collection.offsetGet($key): mixed
  • changed: method Collection.offsetSet($key, $value) → method Collection.offsetSet($key, $value): void
  • changed: method Collection.offsetUnset($key) → method Collection.offsetUnset($key): void
  • changed: method Enumerable.countBy($callback = …) → method Enumerable.countBy($countBy = …)
  • changed: method Enumerable.filter(callable $callback = …) → method Enumerable.filter(?callable $callback = …)
  • changed: method Enumerable.first(callable $callback = …, $default = …) → method Enumerable.first(?callable $callback = …, $default = …)
  • changed: method Enumerable.last(callable $callback = …, $default = …) → method Enumerable.last(?callable $callback = …, $default = …)
  • changed: method Enumerable.unless($value, callable $callback, callable $default = …) → method Enumerable.unless($value, callable $callback, ?callable $default = …)
  • changed: method Enumerable.unlessEmpty(callable $callback, callable $default = …) → method Enumerable.unlessEmpty(callable $callback, ?callable $default = …)
  • changed: method Enumerable.unlessNotEmpty(callable $callback, callable $default = …) → method Enumerable.unlessNotEmpty(callable $callback, ?callable $default = …)
  • changed: method Enumerable.when($value, callable $callback, callable $default = …) → method Enumerable.when($value, ?callable $callback = …, ?callable $default = …)
  • changed: method Enumerable.whenEmpty(callable $callback, callable $default = …) → method Enumerable.whenEmpty(callable $callback, ?callable $default = …)
  • changed: method Enumerable.whenNotEmpty(callable $callback, callable $default = …) → method Enumerable.whenNotEmpty(callable $callback, ?callable $default = …)
  • changed: method Fluent.jsonSerialize() → method Fluent.jsonSerialize(): array
  • changed: method Fluent.offsetExists($offset) → method Fluent.offsetExists($offset): bool
  • changed: method Fluent.offsetGet($offset) → method Fluent.offsetGet($offset): mixed
  • changed: method Fluent.offsetSet($offset, $value) → method Fluent.offsetSet($offset, $value): void
  • changed: method Fluent.offsetUnset($offset) → method Fluent.offsetUnset($offset): void
  • changed: method LazyCollection.count() → method LazyCollection.count(): int
  • changed: method LazyCollection.filter(callable $callback = …) → method LazyCollection.filter(?callable $callback = …)
  • changed: method LazyCollection.first(callable $callback = …, $default = …) → method LazyCollection.first(?callable $callback = …, $default = …)
  • changed: method LazyCollection.getIterator() → method LazyCollection.getIterator(): Traversable
  • changed: method LazyCollection.last(callable $callback = …, $default = …) → method LazyCollection.last(?callable $callback = …, $default = …)
  • changed: method MessageBag.count() → method MessageBag.count(): int
  • changed: method MessageBag.jsonSerialize() → method MessageBag.jsonSerialize(): array
  • changed: method Optional.offsetExists($key) → method Optional.offsetExists($key): bool
  • changed: method Optional.offsetGet($key) → method Optional.offsetGet($key): mixed
  • changed: method Optional.offsetSet($key, $value) → method Optional.offsetSet($key, $value): void
  • changed: method Optional.offsetUnset($key) → method Optional.offsetUnset($key): void
  • changed: method Stringable.contains($needles) → method Stringable.contains($needles, $ignoreCase = …)
  • changed: method Stringable.containsAll(array $needles) → method Stringable.containsAll($needles, $ignoreCase = …)
  • changed: method Stringable.jsonSerialize() → method Stringable.jsonSerialize(): string
  • changed: method Stringable.replaceArray($search, array $replace) → method Stringable.replaceArray($search, $replace)
  • changed: method Stringable.slug($separator = …, $language = …) → method Stringable.slug($separator = …, $language = …, $dictionary = …)
  • changed: method Stringable.substr($start, $length = …) → method Stringable.substr($start, $length = …, $encoding = …)
  • changed: method Stringable.wordCount() → method Stringable.wordCount($characters = …)
  • changed: method ValidatedInput.getIterator() → method ValidatedInput.getIterator(): Traversable
  • changed: method ValidatedInput.offsetExists($key) → method ValidatedInput.offsetExists($key): bool
  • changed: method ValidatedInput.offsetGet($key) → method ValidatedInput.offsetGet($key): mixed
  • changed: method ValidatedInput.offsetSet($key, $value) → method ValidatedInput.offsetSet($key, $value): void
  • changed: method ValidatedInput.offsetUnset($key) → method ValidatedInput.offsetUnset($key): void
  • changed: method ViewErrorBag.count() → method ViewErrorBag.count(): int
  • changed: protected method Composer.findComposer() → method Composer.findComposer()
  • changed: protected method Timebox.usleep($microseconds) → protected method Timebox.usleep(int $microseconds)
  • changed: static method Arr.first($array, callable $callback = …, $default = …) → static method Arr.first($array, ?callable $callback = …, $default = …)
  • changed: static method Arr.last($array, callable $callback = …, $default = …) → static method Arr.last($array, ?callable $callback = …, $default = …)
  • changed: static method Enumerable.times($number, callable $callback = …) → static method Enumerable.times($number, ?callable $callback = …)
  • changed: static method Str.contains($haystack, $needles) → static method Str.contains($haystack, $needles, $ignoreCase = …)
  • changed: static method Str.containsAll($haystack, array $needles) → static method Str.containsAll($haystack, $needles, $ignoreCase = …)
  • changed: static method Str.createUuidsUsing(callable $factory = …) → static method Str.createUuidsUsing(?callable $factory = …)
  • changed: static method Str.replaceArray($search, array $replace, $subject) → static method Str.replaceArray($search, $replace, $subject)
  • changed: static method Str.slug($title, $separator = …, $language = …) → static method Str.slug($title, $separator = …, $language = …, $dictionary = …)
  • changed: static method Str.substr($string, $start, $length = …) → static method Str.substr($string, $start, $length = …, $encoding = …)
  • changed: static method Str.wordCount($string) → static method Str.wordCount($string, $characters = …)
  • added: class Benchmark
  • added: class Lottery
  • added: constructor Lottery($chances, $outOf = …)
  • added: constructor MultipleItemsFoundException($count, $code = …, $previous = …)
  • added: method Collection.containsStrict($key, $value = …)
  • added: method Collection.intersectAssoc($items)
  • added: method Collection.intersectAssocUsing($items, callable $callback)
  • added: method Collection.intersectUsing($items, callable $callback)
  • added: method Composer.getVersion()
  • added: method Enumerable.containsOneItem()
  • added: method Enumerable.count(): int
  • added: method Enumerable.doesntContain($key, $operator = …, $value = …)
  • added: method Enumerable.escapeWhenCastingToString($escape = …)
  • added: method Enumerable.firstOrFail($key = …, $operator = …, $value = …)
  • added: method Enumerable.getCachingIterator($flags = …)
  • added: method Enumerable.getIterator(): Traversable
  • added: method Enumerable.hasAny($key)
  • added: method Enumerable.jsonSerialize(): mixed
  • added: method Enumerable.pipeInto($class)
  • added: method Enumerable.pipeThrough($pipes)
  • added: method Enumerable.reduceSpread(callable $callback, ...$initial)
  • added: method Enumerable.sliding($size = …, $step = …)
  • added: method Enumerable.sole($key = …, $operator = …, $value = …)
  • added: method Enumerable.sortKeysUsing(callable $callback)
  • added: method Enumerable.splitIn($numberOfGroups)
  • added: method Enumerable.toArray()
  • added: method Enumerable.toJson($options = …)
  • added: method Enumerable.undot()
  • added: method HigherOrderWhenProxy.condition($condition)
  • added: method HigherOrderWhenProxy.negateConditionOnCapture()
  • added: method LazyCollection.containsStrict($key, $value = …)
  • added: method LazyCollection.intersectAssoc($items)
  • added: method LazyCollection.intersectAssocUsing($items, callable $callback)
  • added: method LazyCollection.intersectUsing()
  • added: method Lottery.__invoke(...$args)
  • added: method Lottery.choose($times = …)
  • added: method Lottery.loser($callback)
  • added: method Lottery.winner($callback)
  • added: method MultipleItemsFoundException.getCount()
  • added: method Stringable.betweenFirst($from, $to)
  • added: method Stringable.excerpt($phrase = …, $options = …)
  • added: method Stringable.inlineMarkdown(array $options = …)
  • added: method Stringable.isJson()
  • added: method Stringable.isUlid()
  • added: method Stringable.lcfirst()
  • added: method Stringable.newLine($count = …)
  • added: method Stringable.squish()
  • added: method Stringable.toBoolean()
  • added: method Stringable.toDate($format = …, $tz = …)
  • added: method Stringable.toFloat()
  • added: method Stringable.toInteger()
  • added: method Stringable.toString()
  • added: method Stringable.value()
  • added: method Stringable.whenIsUlid($callback, $default = …)
  • added: method Stringable.whenNotExactly($value, $callback, $default = …)
  • added: method Stringable.wrap($before, $after = …)
  • added: method ValidatedInput.has($keys)
  • added: method ValidatedInput.missing($keys)
  • added: property MultipleItemsFoundException.count
  • added: protected method Lottery.runCallback(...$args)
  • added: protected method Lottery.wins()
  • added: protected property HigherOrderWhenProxy.hasCondition
  • added: protected property HigherOrderWhenProxy.negateConditionOnCapture
  • added: protected property HigherOrderWhenProxy.target
  • added: protected property Lottery.chances
  • added: protected property Lottery.loser
  • added: protected property Lottery.outOf
  • added: protected property Lottery.winner
  • added: protected static method Lottery.resultFactory()
  • added: protected static property Lottery.resultFactory
  • added: protected static property Pluralizer.inflector
  • added: protected static property Pluralizer.language
  • added: protected static property Str.randomStringFactory
  • added: static method Arr.join($array, $glue, $finalGlue = …)
  • added: static method Arr.keyBy($array, $keyBy)
  • added: static method Arr.map(array $array, callable $callback)
  • added: static method Arr.prependKeysWith($array, $prependWith)
  • added: static method Arr.sortDesc($array, $callback = …)
  • added: static method Arr.toCssStyles($array)
  • added: static method Benchmark.dd(Closure|array $benchmarkables, int $iterations = …): void
  • added: static method Benchmark.measure(Closure|array $benchmarkables, int $iterations = …): array|float
  • added: static method LazyCollection.make($items = …)
  • added: static method Lottery.alwaysLose($callback = …)
  • added: static method Lottery.alwaysWin($callback = …)
  • added: static method Lottery.determineResultNormally()
  • added: static method Lottery.fix($sequence, $whenMissing = …)
  • added: static method Lottery.forceResultWithSequence($sequence, $whenMissing = …)
  • added: static method Lottery.odds($chances, $outOf = …)
  • added: static method Lottery.setResultFactory($factory)
  • added: static method Pluralizer.useLanguage(string $language)
  • added: static method Reflector.isParameterBackedEnumWithStringBackingType($parameter)
  • added: static method Str.betweenFirst($subject, $from, $to)
  • added: static method Str.createRandomStringsNormally()
  • added: static method Str.createRandomStringsUsing(?callable $factory = …)
  • added: static method Str.createRandomStringsUsingSequence(array $sequence, $whenMissing = …)
  • added: static method Str.createUuidsUsingSequence(array $sequence, $whenMissing = …)
  • added: static method Str.excerpt($text, $phrase = …, $options = …)
  • added: static method Str.freezeUuids(?Closure $callback = …)
  • added: static method Str.inlineMarkdown($string, array $options = …)
  • added: static method Str.isJson($value)
  • added: static method Str.isUlid($value)
  • added: static method Str.lcfirst($string)
  • added: static method Str.squish($value)
  • added: static method Str.ulid()
  • added: static method Str.wrap($value, $before, $after = …)
  • added: class MathException extends RuntimeException
  • changed: static method Bus.fake($jobsToFake = …) → static method Bus.fake($jobsToFake = …, ?BatchRepository $batchRepository = …)
  • changed: static method Queue.fake() → static method Queue.fake($jobsToFake = …)
  • added: class Vite extends Facade
  • added: protected static method Vite.getFacadeAccessor()
  • added: protected static property Facade.cached
  • added: protected static property Schema.cached
  • added: static method Facade.defaultAliases()
  • added: static method Facade.expects()
  • added: static method Http.fake($callback = …)
  • added: static method Http.fakeSequence(string $urlPattern = …)
  • added: static method Http.preventStrayRequests()
  • added: static method Http.stubUrl($url, $callback)
  • changed: constructor BusFake(QueueingDispatcher $dispatcher, $jobsToFake = …) → constructor BusFake(QueueingDispatcher $dispatcher, $jobsToFake = …, ?BatchRepository $batchRepository = …)
  • changed: method NotificationFake.sendNow($notifiables, $notification, array $channels = …) → method NotificationFake.sendNow($notifiables, $notification, ?array $channels = …)
  • added: class BatchFake extends Batch
  • added: constructor BatchFake(string $id, string $name, int $totalJobs, int $pendingJobs, int $failedJobs, array $failedJobIds, array $options, CarbonImmutable $createdAt, ?CarbonImmutable $cancelledAt = …, ?CarbonImmutable $finishedAt = …)
  • added: constructor QueueFake($app, $jobsToFake = …, $queue = …)
  • added: method BatchFake.add($jobs)
  • added: method BatchFake.cancel()
  • added: method BatchFake.decrementPendingJobs(string $jobId)
  • added: method BatchFake.delete()
  • added: method BatchFake.deleted()
  • added: method BatchFake.fresh()
  • added: method BatchFake.incrementFailedJobs(string $jobId)
  • added: method BatchFake.recordFailedJob(string $jobId, $e)
  • added: method BatchFake.recordSuccessfulJob(string $jobId)
  • added: method BusFake.assertNothingBatched()
  • added: method BusFake.dispatchFakeBatch($name = …)
  • added: method BusFake.except($jobsToDispatch)
  • added: method EventFake.except($eventsToDispatch)
  • added: method MailFake.cc($users)
  • added: method NotificationFake.assertCount($expectedCount)
  • added: method NotificationFake.assertNothingSentTo($notifiable)
  • added: method NotificationFake.sentNotifications()
  • added: method PendingBatchFake.dispatchAfterResponse()
  • added: method QueueFake.except($jobsToBeQueued)
  • added: method QueueFake.shouldFakeJob($job)
  • added: property BatchFake.added
  • added: property BatchFake.deleted
  • added: protected method BusFake.shouldDispatchCommand($command)
  • added: protected method EventFake.shouldDispatchEvent($eventName, $payload)
  • added: protected method QueueFake.shouldDispatchJob($job)
  • added: protected property BatchRepositoryFake.batches
  • added: protected property BusFake.batchRepository
  • added: protected property BusFake.jobsToDispatch
  • added: protected property EventFake.eventsToDispatch
  • added: protected property QueueFake.jobsToBeQueued
  • added: protected property QueueFake.jobsToFake
  • added: protected property QueueFake.queue
  • removed: method EnumeratesValues.containsStrict($key, $value = …)
  • removed: method EnumeratesValues.reduceMany(callable $callback, ...$initial)
  • removed: method EnumeratesValues.reduceWithKeys(callable $callback, $initial = …)
  • removed: method EnumeratesValues.unless($value, callable $callback, callable $default = …)
  • removed: method EnumeratesValues.when($value, callable $callback = …, callable $default = …)
  • changed: method Conditionable.unless($value, $callback, $default = …) → method Conditionable.unless($value = …, ?callable $callback = …, ?callable $default = …)
  • changed: method Conditionable.when($value, $callback, $default = …) → method Conditionable.when($value = …, ?callable $callback = …, ?callable $default = …)
  • changed: method EnumeratesValues.jsonSerialize() → method EnumeratesValues.jsonSerialize(): array
  • changed: method EnumeratesValues.pipeThrough($pipes) → method EnumeratesValues.pipeThrough($callbacks)
  • changed: method EnumeratesValues.unlessEmpty(callable $callback, callable $default = …) → method EnumeratesValues.unlessEmpty(callable $callback, ?callable $default = …)
  • changed: method EnumeratesValues.unlessNotEmpty(callable $callback, callable $default = …) → method EnumeratesValues.unlessNotEmpty(callable $callback, ?callable $default = …)
  • changed: method EnumeratesValues.whenEmpty(callable $callback, callable $default = …) → method EnumeratesValues.whenEmpty(callable $callback, ?callable $default = …)
  • changed: method EnumeratesValues.whenNotEmpty(callable $callback, callable $default = …) → method EnumeratesValues.whenNotEmpty(callable $callback, ?callable $default = …)
  • changed: static method EnumeratesValues.times($number, callable $callback = …) → static method EnumeratesValues.times($number, ?callable $callback = …)
  • added: method EnumeratesValues.unique($key = …, $strict = …)
  • added: method EnumeratesValues.value($key, $default = …)
  • removed: method TestResponse.assertCreated()
  • removed: method TestResponse.assertForbidden()
  • removed: method TestResponse.assertNoContent($status = …)
  • removed: method TestResponse.assertNotFound()
  • removed: method TestResponse.assertOk()
  • removed: method TestResponse.assertUnauthorized()
  • removed: method TestResponse.assertUnprocessable()
  • removed: protected method TestResponse.statusMessageWithErrors($expected, $actual, $errors)
  • removed: protected method TestResponse.statusMessageWithException($expected, $actual, $exception)
  • changed: method AssertableJsonString.assertStructure(array $structure = …, $responseData = …) → method AssertableJsonString.assertStructure(?array $structure = …, $responseData = …)
  • changed: method AssertableJsonString.count() → method AssertableJsonString.count(): int
  • changed: method AssertableJsonString.offsetExists($offset) → method AssertableJsonString.offsetExists($offset): bool
  • changed: method AssertableJsonString.offsetGet($offset) → method AssertableJsonString.offsetGet($offset): mixed
  • changed: method AssertableJsonString.offsetSet($offset, $value) → method AssertableJsonString.offsetSet($offset, $value): void
  • changed: method AssertableJsonString.offsetUnset($offset) → method AssertableJsonString.offsetUnset($offset): void
  • changed: method TestResponse.assertJsonStructure(array $structure = …, $responseData = …) → method TestResponse.assertJsonStructure(?array $structure = …, $responseData = …)
  • changed: method TestResponse.dump() → method TestResponse.dump($key = …)
  • changed: method TestResponse.getCookie($cookieName) → method TestResponse.getCookie($cookieName, $decrypt = …, $unserialize = …)
  • changed: method TestResponse.offsetExists($offset) → method TestResponse.offsetExists($offset): bool
  • changed: method TestResponse.offsetGet($offset) → method TestResponse.offsetGet($offset): mixed
  • changed: method TestResponse.offsetSet($offset, $value) → method TestResponse.offsetSet($offset, $value): void
  • changed: method TestResponse.offsetUnset($offset) → method TestResponse.offsetUnset($offset): void
  • changed: protected property TestResponse.exceptions → property TestResponse.exceptions
  • added: method AssertableJsonString.assertMissingPath($path)
  • added: method PendingCommand.assertOk()
  • added: method PendingCommand.doesntExpectOutputToContain($string)
  • added: method PendingCommand.expectsOutputToContain($string)
  • added: method TestResponse.assertContent($value)
  • added: method TestResponse.assertJsonIsArray($key = …)
  • added: method TestResponse.assertJsonIsObject($key = …)
  • added: method TestResponse.assertJsonMissingPath(string $path)
  • added: method TestResponse.assertRedirectToRoute($name, $parameters = …)
  • added: method TestResponse.assertServerError()
  • added: method TestResponse.assertStreamedContent($value)
  • added: method TestResponse.collect($key = …)
  • added: method TestResponse.transformNotSuccessfulException($exception)
  • added: method TestView.assertViewHas($key, $value = …)
  • added: method TestView.assertViewHasAll(array $bindings)
  • added: method TestView.assertViewMissing($key)
  • added: protected method TestResponse.appendErrorsToException($errors, $exception, $json = …)
  • added: protected method TestResponse.appendExceptionToException($exceptionToAppend, $exception)
  • added: protected method TestResponse.appendMessageToException($message, $exception)
  • added: method AssertsStatusCodes.assertAccepted()
  • added: method AssertsStatusCodes.assertBadRequest()
  • added: method AssertsStatusCodes.assertConflict()
  • added: method AssertsStatusCodes.assertCreated()
  • added: method AssertsStatusCodes.assertForbidden()
  • added: method AssertsStatusCodes.assertFound()
  • added: method AssertsStatusCodes.assertMovedPermanently()
  • added: method AssertsStatusCodes.assertNoContent($status = …)
  • added: method AssertsStatusCodes.assertNotFound()
  • added: method AssertsStatusCodes.assertOk()
  • added: method AssertsStatusCodes.assertPaymentRequired()
  • added: method AssertsStatusCodes.assertRequestTimeout()
  • added: method AssertsStatusCodes.assertTooManyRequests()
  • added: method AssertsStatusCodes.assertUnauthorized()
  • added: method AssertsStatusCodes.assertUnprocessable()
  • added: trait AssertsStatusCodes
  • changed: protected constructor AssertableJson(array $props, string $path = …) → protected constructor AssertableJson(array $props, ?string $path = …)
  • changed: protected method AssertableJson.prop(string $key = …) → protected method AssertableJson.prop(?string $key = …)
  • changed: method Debugging.dd(string $prop = …): void → method Debugging.dd(?string $prop = …): void
  • changed: method Debugging.dump(string $prop = …): self → method Debugging.dump(?string $prop = …): self
  • changed: method Has.count($key, int $length = …): self → method Has.count($key, ?int $length = …): self
  • changed: method Has.has($key, $length = …, Closure $callback = …): self → method Has.has($key, $length = …, ?Closure $callback = …): self
  • changed: method Matching.has(string $key, $value = …, Closure $scope = …) → method Matching.has(string $key, $value = …, ?Closure $scope = …)
  • changed: protected method Debugging.prop(string $key = …) → protected method Debugging.prop(?string $key = …)
  • changed: protected method Has.prop(string $key = …) → protected method Has.prop(?string $key = …)
  • changed: protected method Interaction.prop(string $key = …) → protected method Interaction.prop(?string $key = …)
  • changed: protected method Matching.prop(string $key = …) → protected method Matching.prop(?string $key = …)
  • added: method Matching.whereNot(string $key, $expected): self
  • added: class PotentiallyTranslatedString implements Stringable
  • added: constructor PotentiallyTranslatedString($string, $translator)
  • added: method PotentiallyTranslatedString.__toString()
  • added: method PotentiallyTranslatedString.original()
  • added: method PotentiallyTranslatedString.toString()
  • added: method PotentiallyTranslatedString.translate($replace = …, $locale = …)
  • added: method PotentiallyTranslatedString.translateChoice($number, array $replace = …, $locale = …)
  • added: method Translator.determineLocalesUsing($callback)
  • added: method Translator.stringable($class, $handler = …)
  • added: protected property PotentiallyTranslatedString.string
  • added: protected property PotentiallyTranslatedString.translation
  • added: protected property PotentiallyTranslatedString.translator
  • added: protected property Translator.determineLocalesUsing
  • added: protected property Translator.stringableHandlers
  • changed: constructor Factory(Translator $translator, Container $container = …) → constructor Factory(Translator $translator, ?Container $container = …)
  • changed: method ConditionalRules.defaultRules() → method ConditionalRules.defaultRules(array $data = …)
  • changed: method ConditionalRules.rules() → method ConditionalRules.rules(array $data = …)
  • changed: method Validator.safe(array $keys = …) → method Validator.safe(?array $keys = …)
  • changed: method Validator.setImplicitAttributesFormatter(callable $formatter = …) → method Validator.setImplicitAttributesFormatter(?callable $formatter = …)
  • changed: protected method ValidationRuleParser.explodeExplicitRule($rule) → protected method ValidationRuleParser.explodeExplicitRule($rule, $attribute)
  • changed: protected method ValidationRuleParser.prepareRule($rule) → protected method ValidationRuleParser.prepareRule($rule, $attribute)
  • added: class InvokableValidationRule implements Rule, ValidatorAwareRule
  • added: class NestedRules
  • added: constructor NestedRules(callable $callback)
  • added: method Factory.includeUnvalidatedArrayKeys()
  • added: method InvokableValidationRule.invokable()
  • added: method InvokableValidationRule.message()
  • added: method InvokableValidationRule.passes($attribute, $value)
  • added: method InvokableValidationRule.setData($data)
  • added: method InvokableValidationRule.setValidator($validator)
  • added: method NestedRules.compile($attribute, $value, $data = …)
  • added: method Validator.getRulesWithoutPlaceholders()
  • added: protected constructor InvokableValidationRule(InvokableRule $invokable)
  • added: protected method InvokableValidationRule.pendingPotentiallyTranslatedString($attribute, $message)
  • added: protected property InvokableValidationRule.data
  • added: protected property InvokableValidationRule.failed
  • added: protected property InvokableValidationRule.invokable
  • added: protected property InvokableValidationRule.messages
  • added: protected property InvokableValidationRule.validator
  • added: protected property NestedRules.callback
  • added: protected static method ValidationException.summarize($validator)
  • added: protected static method ValidationRuleParser.ruleIsRegex($rule)
  • added: static method InvokableValidationRule.make($invokable)
  • added: static method Rule.enum($type)
  • added: static method Rule.excludeIf($callback)
  • added: static method Rule.file()
  • added: static method Rule.forEach($callback)
  • added: static method Rule.imageFile()
  • added: static method Rule.prohibitedIf($callback)
  • removed: protected method ValidatesAttributes.validatePassword($attribute, $value, $parameters)
  • changed: method FilterEmailValidation.getError() → method FilterEmailValidation.getError(): ?InvalidEmail
  • changed: method FilterEmailValidation.getWarnings() → method FilterEmailValidation.getWarnings(): array
  • changed: method FilterEmailValidation.isValid($email, EmailLexer $emailLexer) → method FilterEmailValidation.isValid(string $email, EmailLexer $emailLexer): bool
  • changed: method ValidatesAttributes.validateAlpha($attribute, $value) → method ValidatesAttributes.validateAlpha($attribute, $value, $parameters)
  • changed: method ValidatesAttributes.validateAlphaDash($attribute, $value) → method ValidatesAttributes.validateAlphaDash($attribute, $value, $parameters)
  • changed: method ValidatesAttributes.validateAlphaNum($attribute, $value) → method ValidatesAttributes.validateAlphaNum($attribute, $value, $parameters)
  • changed: protected method FormatsMessages.getCustomMessageFromTranslator($key) → protected method FormatsMessages.getCustomMessageFromTranslator($keys)
  • added: method ValidatesAttributes.validateAscii($attribute, $value)
  • added: method ValidatesAttributes.validateDecimal($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateDoesntEndWith($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateDoesntStartWith($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateExcludeWith($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateLowercase($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateMaxDigits($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateMinDigits($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateMissing($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateMissingIf($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateMissingUnless($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateMissingWith($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateMissingWithAll($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateRequiredIfAccepted($attribute, $value, $parameters)
  • added: method ValidatesAttributes.validateUlid($attribute, $value)
  • added: method ValidatesAttributes.validateUppercase($attribute, $value, $parameters)
  • added: protected method FormatsMessages.numberToIndexOrPositionWord(int $value)
  • added: protected method FormatsMessages.replaceIndexOrPositionPlaceholder($message, $attribute, $placeholder, ?Closure $modifier = …)
  • added: protected method FormatsMessages.replaceIndexPlaceholder($message, $attribute)
  • added: protected method FormatsMessages.replacePositionPlaceholder($message, $attribute)
  • added: protected method ReplacesAttributes.replaceDecimal($message, $attribute, $rule, $parameters)
  • added: protected method ReplacesAttributes.replaceDoesntEndWith($message, $attribute, $rule, $parameters)
  • added: protected method ReplacesAttributes.replaceDoesntStartWith($message, $attribute, $rule, $parameters)
  • added: protected method ReplacesAttributes.replaceMaxDigits($message, $attribute, $rule, $parameters)
  • added: protected method ReplacesAttributes.replaceMinDigits($message, $attribute, $rule, $parameters)
  • added: protected method ReplacesAttributes.replaceMissingIf($message, $attribute, $rule, $parameters)
  • added: protected method ReplacesAttributes.replaceMissingUnless($message, $attribute, $rule, $parameters)
  • added: protected method ReplacesAttributes.replaceMissingWith($message, $attribute, $rule, $parameters)
  • added: protected method ReplacesAttributes.replaceMissingWithAll($message, $attribute, $rule, $parameters)
  • added: protected method ReplacesAttributes.replaceRequiredIfAccepted($message, $attribute, $rule, $parameters)
  • added: protected method ValidatesAttributes.getDnsRecords($hostname, $type)
  • added: protected method ValidatesAttributes.trim($value)
  • removed: method Exists.withoutTrashed($deletedAtColumn = …)
  • removed: method Unique.withoutTrashed($deletedAtColumn = …)
  • changed: method DatabaseRule.whereIn($column, array $values) → method DatabaseRule.whereIn($column, $values)
  • changed: method DatabaseRule.whereNotIn($column, array $values) → method DatabaseRule.whereNotIn($column, $values)
  • added: class ExcludeIf
  • added: class File implements Rule, DataAwareRule, ValidatorAwareRule
  • added: class ImageFile extends File
  • added: class ProhibitedIf
  • added: constructor ExcludeIf($condition)
  • added: constructor ImageFile()
  • added: constructor ProhibitedIf($condition)
  • added: method DatabaseRule.onlyTrashed($deletedAtColumn = …)
  • added: method DatabaseRule.withoutTrashed($deletedAtColumn = …)
  • added: method ExcludeIf.__toString()
  • added: method File.between($minKilobytes, $maxKilobytes)
  • added: method File.max($kilobytes)
  • added: method File.message()
  • added: method File.min($kilobytes)
  • added: method File.passes($attribute, $value)
  • added: method File.rules($rules)
  • added: method File.setData($data)
  • added: method File.setValidator($validator)
  • added: method File.size($kilobytes)
  • added: method ImageFile.dimensions($dimensions)
  • added: method ProhibitedIf.__toString()
  • added: property ExcludeIf.condition
  • added: property ProhibitedIf.condition
  • added: protected method File.buildMimetypes()
  • added: protected method File.buildValidationRules()
  • added: protected method File.fail($messages)
  • added: protected method Password.getErrorMessage($key)
  • added: protected property File.allowedMimetypes
  • added: protected property File.customRules
  • added: protected property File.data
  • added: protected property File.maximumFileSize
  • added: protected property File.messages
  • added: protected property File.minimumFileSize
  • added: protected property File.validator
  • added: static method File.default()
  • added: static method File.defaults($callback = …)
  • added: static method File.image()
  • added: static method File.types($mimetypes)
  • added: static property File.defaultCallback
  • changed: constructor FileViewFinder(Filesystem $files, array $paths, array $extensions = …) → constructor FileViewFinder(Filesystem $files, array $paths, ?array $extensions = …)
  • changed: method ComponentAttributeBag.getIterator() → method ComponentAttributeBag.getIterator(): Traversable
  • changed: method ComponentAttributeBag.offsetExists($offset) → method ComponentAttributeBag.offsetExists($offset): bool
  • changed: method ComponentAttributeBag.offsetGet($offset) → method ComponentAttributeBag.offsetGet($offset): mixed
  • changed: method ComponentAttributeBag.offsetSet($offset, $value) → method ComponentAttributeBag.offsetSet($offset, $value): void
  • changed: method ComponentAttributeBag.offsetUnset($offset) → method ComponentAttributeBag.offsetUnset($offset): void
  • changed: method InvokableComponentVariable.getIterator() → method InvokableComponentVariable.getIterator(): Traversable
  • changed: method View.offsetExists($key) → method View.offsetExists($key): bool
  • changed: method View.offsetGet($key) → method View.offsetGet($key): mixed
  • changed: method View.offsetSet($key, $value) → method View.offsetSet($key, $value): void
  • changed: method View.offsetUnset($key) → method View.offsetUnset($key): void
  • changed: method View.render(callable $callback = …) → method View.render(?callable $callback = …)
  • added: method Component.view($view, $data = …, $mergeData = …)
  • added: method ComponentAttributeBag.missing($key)
  • added: method ComponentAttributeBag.onlyProps($keys)
  • added: method ComponentAttributeBag.style($styleList)
  • added: method View.fragment($fragment)
  • added: method View.fragmentIf($boolean, $fragment)
  • added: method View.fragments(array $fragments)
  • added: method View.fragmentsIf($boolean, array $fragments)
  • added: protected method Component.extractBladeViewFromString($contents)
  • added: protected method Component.factory()
  • added: protected method ComponentAttributeBag.extractPropNames($keys)
  • added: protected static method Component.extractConstructorParameters()
  • added: protected static property Component.bladeViewCache
  • added: protected static property Component.componentsResolver
  • added: protected static property Component.constructorParametersCache
  • added: protected static property Component.factory
  • added: static method Component.flushCache()
  • added: static method Component.forgetComponentsResolver()
  • added: static method Component.forgetFactory()
  • added: static method Component.resolve($data)
  • added: static method Component.resolveComponentsUsing($resolver)
  • changed: constructor Compiler(Filesystem $files, $cachePath) → constructor Compiler(Filesystem $files, $cachePath, $basePath = …, $shouldCache = …, $compiledExtension = …)
  • changed: method ComponentTagCompiler.guessViewName($name) → method ComponentTagCompiler.guessViewName($name, $prefix = …)
  • changed: protected method BladeCompiler.compileStatements($value) → protected method BladeCompiler.compileStatements($template)
  • added: method BladeCompiler.anonymousComponentNamespace(string $directory, ?string $prefix = …)
  • added: method BladeCompiler.anonymousComponentPath(string $path, ?string $prefix = …)
  • added: method BladeCompiler.getAnonymousComponentNamespaces()
  • added: method BladeCompiler.getAnonymousComponentPaths()
  • added: protected method BladeCompiler.hasEvenNumberOfParentheses(string $expression)
  • added: protected method BladeCompiler.replaceFirstStatement($search, $replace, $subject, $offset)
  • added: protected method ComponentTagCompiler.guessAnonymousComponentUsingNamespaces(Factory $viewFactory, string $component)
  • added: protected method ComponentTagCompiler.guessAnonymousComponentUsingPaths(Factory $viewFactory, string $component)
  • added: protected method ComponentTagCompiler.parseComponentTagClassStatements(string $attributeString)
  • added: protected method ComponentTagCompiler.parseComponentTagStyleStatements(string $attributeString)
  • added: protected method ComponentTagCompiler.parseShortAttributeSyntax(string $value)
  • added: protected property BladeCompiler.anonymousComponentNamespaces
  • added: protected property BladeCompiler.anonymousComponentPaths
  • added: protected property Compiler.basePath
  • added: protected property Compiler.compiledExtension
  • added: protected property Compiler.shouldCache
  • added: protected method CompilesConditionals.compileChecked($condition)
  • added: protected method CompilesConditionals.compileDisabled($condition)
  • added: protected method CompilesConditionals.compileEndPushIf()
  • added: protected method CompilesConditionals.compilePushIf($expression)
  • added: protected method CompilesConditionals.compileReadonly($condition)
  • added: protected method CompilesConditionals.compileRequired($condition)
  • added: protected method CompilesConditionals.compileSelected($condition)
  • added: protected method CompilesFragments.compileEndfragment()
  • added: protected method CompilesFragments.compileFragment($expression)
  • added: protected method CompilesHelpers.compileVite($arguments)
  • added: protected method CompilesHelpers.compileViteReactRefresh()
  • added: protected method CompilesStacks.compileEndprependOnce()
  • added: protected method CompilesStacks.compileEndpushOnce()
  • added: protected method CompilesStacks.compilePrependOnce($expression)
  • added: protected method CompilesStacks.compilePushOnce($expression)
  • added: protected method CompilesStyles.compileStyle($expression)
  • added: protected property CompilesFragments.lastFragment
  • added: trait CompilesFragments
  • added: trait CompilesStyles
  • added: method ManagesFragments.flushFragments()
  • added: method ManagesFragments.getFragment($name, $default = …)
  • added: method ManagesFragments.getFragments()
  • added: method ManagesFragments.startFragment($fragment)
  • added: method ManagesFragments.stopFragment()
  • added: protected property ManagesFragments.fragmentStack
  • added: protected property ManagesFragments.fragments
  • added: trait ManagesFragments
  • changed: constructor CompilerEngine(CompilerInterface $compiler, Filesystem $files = …) → constructor CompilerEngine(CompilerInterface $compiler, ?Filesystem $files = …)
  • added: method CompilerEngine.forgetCompiledOrNotExpired()
  • added: protected property CompilerEngine.compiledOrNotExpired
  • changed: function optional($value = …, callable $callback = …) → function optional($value = …, ?callable $callback = …)
  • changed: function with($value, callable $callback = …) → function with($value, ?callable $callback = …)
  • added: function fake($locale = …)
  • added: function laravel_cloud()
  • added: function precognitive($callable = …)
  • added: function report_if($boolean, $exception)
  • added: function report_unless($boolean, $exception)
  • added: function str($string = …)
  • added: function to_route($route, $parameters = …, $status = …, $headers = …)