Skip to content

Upgrading symfony/console 5 to 6

Breakingv5.4.55 → v6.4.49Breaking2Platform1Deprecated4New50Changed12Fixed168Other2

Fetching 105 releases from GitHub…104 / 105
BreakingUpgrade verdict

2 breaking changes and a platform requirement change.

  • Removes default values from setters that have a nullable parameter.
  • Two methods on HelperSet are gone; code calling them will break.
  • The package now requires PHP 8.1 or newer.
  • Deprecates the ProxyManagerBridge package.
Top 5 of 7 that need code or config changes

PHP requirement changed in v6.1.0-BETA1: >=7.2.5 → >=8.1.

Breaking2
Removes default values from setters that have a nullable parameter.
Removes HelperSet::setCommand() and getCommand().
HelperSet::setCommand()HelperSet::getCommand()
Platform1
Bumps the minimum required PHP version to 8.1.
Deprecated4
Deprecates the ProxyManagerBridge package.
Deprecates enabling the SecurityBundle without configuring it.
Deprecates the $defaultName property.
$defaultName
Deprecates HelperSet::setCommand() and getCommand().
HelperSet::setCommand()HelperSet::getCommand()

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

  • changed: method Application.areExceptionsCaught() → method Application.areExceptionsCaught(): bool
  • changed: method Application.extractNamespace(string $name, ?int $limit = …) → method Application.extractNamespace(string $name, ?int $limit = …): string
  • changed: method Application.findNamespace(string $namespace) → method Application.findNamespace(string $namespace): string
  • changed: method Application.getDefinition() → method Application.getDefinition(): InputDefinition
  • changed: method Application.getHelp() → method Application.getHelp(): string
  • changed: method Application.getHelperSet() → method Application.getHelperSet(): HelperSet
  • changed: method Application.getName() → method Application.getName(): string
  • changed: method Application.getNamespaces() → method Application.getNamespaces(): array
  • changed: method Application.getVersion() → method Application.getVersion(): string
  • changed: method Application.has(string $name) → method Application.has(string $name): bool
  • changed: method Application.isAutoExitEnabled() → method Application.isAutoExitEnabled(): bool
  • changed: method Application.register(string $name) → method Application.register(string $name): Command
  • changed: method Application.run(?InputInterface $input = …, ?OutputInterface $output = …) → method Application.run(?InputInterface $input = …, ?OutputInterface $output = …): int
  • changed: method Application.setDefaultCommand(string $commandName, bool $isSingleCommand = …) → method Application.setDefaultCommand(string $commandName, bool $isSingleCommand = …): static
  • changed: method Application.setDispatcher(EventDispatcherInterface $dispatcher) → method Application.setDispatcher(EventDispatcherInterface $dispatcher): void
  • changed: method Cursor.clearLine(): self → method Cursor.clearLine(): static
  • changed: method Cursor.clearOutput(): self → method Cursor.clearOutput(): static
  • changed: method Cursor.clearScreen(): self → method Cursor.clearScreen(): static
  • changed: method Cursor.hide(): self → method Cursor.hide(): static
  • changed: method Cursor.moveDown(int $lines = …): self → method Cursor.moveDown(int $lines = …): static
  • changed: method Cursor.moveLeft(int $columns = …): self → method Cursor.moveLeft(int $columns = …): static
  • changed: method Cursor.moveRight(int $columns = …): self → method Cursor.moveRight(int $columns = …): static
  • changed: method Cursor.moveToColumn(int $column): self → method Cursor.moveToColumn(int $column): static
  • changed: method Cursor.moveToPosition(int $column, int $row): self → method Cursor.moveToPosition(int $column, int $row): static
  • changed: method Cursor.moveUp(int $lines = …): self → method Cursor.moveUp(int $lines = …): static
  • changed: method Cursor.restorePosition(): self → method Cursor.restorePosition(): static
  • changed: method Cursor.savePosition(): self → method Cursor.savePosition(): static
  • changed: method Cursor.show(): self → method Cursor.show(): static
  • changed: method SingleCommandApplication.setAutoExit(bool $autoExit): self → method SingleCommandApplication.setAutoExit(bool $autoExit): static
  • changed: method SingleCommandApplication.setVersion(string $version): self → method SingleCommandApplication.setVersion(string $version): static
  • changed: method Terminal.getHeight() → method Terminal.getHeight(): int
  • changed: method Terminal.getWidth() → method Terminal.getWidth(): int
  • changed: protected method Application.getCommandName(InputInterface $input) → protected method Application.getCommandName(InputInterface $input): ?string
  • changed: protected method Application.getDefaultCommands() → protected method Application.getDefaultCommands(): array
  • changed: protected method Application.getDefaultHelperSet() → protected method Application.getDefaultHelperSet(): HelperSet
  • changed: protected method Application.getDefaultInputDefinition() → protected method Application.getDefaultInputDefinition(): InputDefinition
  • changed: static method Application.getAbbreviations(array $names) → static method Application.getAbbreviations(array $names): array
  • added: const Terminal.DEFAULT_COLOR_MODE
  • added: method Application.setCatchErrors(bool $catchErrors = …): void
  • added: static method Terminal.getColorMode(): AnsiColorMode
  • added: static method Terminal.setColorMode(?AnsiColorMode $colorMode): void
  • removed: method DumpCompletionCommand.complete(CompletionInput $input, CompletionSuggestions $suggestions): void
  • removed: method HelpCommand.complete(CompletionInput $input, CompletionSuggestions $suggestions): void
  • removed: method ListCommand.complete(CompletionInput $input, CompletionSuggestions $suggestions): void
  • changed: method Command.addArgument(string $name, ?int $mode = …, string $description = …, $default = …) → method Command.addArgument(string $name, ?int $mode = …, string $description = …, mixed $default = …): static
  • changed: method Command.addOption(string $name, $shortcut = …, ?int $mode = …, string $description = …, $default = …) → method Command.addOption(string $name, string|array|null $shortcut = …, ?int $mode = …, string $description = …, mixed $default = …): static
  • changed: method Command.addUsage(string $usage) → method Command.addUsage(string $usage): static
  • changed: method Command.getAliases() → method Command.getAliases(): array
  • changed: method Command.getApplication() → method Command.getApplication(): ?Application
  • changed: method Command.getDefinition() → method Command.getDefinition(): InputDefinition
  • changed: method Command.getDescription() → method Command.getDescription(): string
  • changed: method Command.getHelp() → method Command.getHelp(): string
  • changed: method Command.getHelper(string $name) → method Command.getHelper(string $name): mixed
  • changed: method Command.getHelperSet() → method Command.getHelperSet(): ?HelperSet
  • changed: method Command.getName() → method Command.getName(): ?string
  • changed: method Command.getNativeDefinition() → method Command.getNativeDefinition(): InputDefinition
  • changed: method Command.getProcessedHelp() → method Command.getProcessedHelp(): string
  • changed: method Command.getSynopsis(bool $short = …) → method Command.getSynopsis(bool $short = …): string
  • changed: method Command.getUsages() → method Command.getUsages(): array
  • changed: method Command.isHidden() → method Command.isHidden(): bool
  • changed: method Command.mergeApplicationDefinition(bool $mergeArgs = …) → method Command.mergeApplicationDefinition(bool $mergeArgs = …): void
  • changed: method Command.run(InputInterface $input, OutputInterface $output) → method Command.run(InputInterface $input, OutputInterface $output): int
  • changed: method Command.setAliases(iterable $aliases) → method Command.setAliases(iterable $aliases): static
  • changed: method Command.setCode(callable $code) → method Command.setCode(callable $code): static
  • changed: method Command.setDefinition($definition) → method Command.setDefinition(array|InputDefinition $definition): static
  • changed: method Command.setDescription(string $description) → method Command.setDescription(string $description): static
  • changed: method Command.setHelp(string $help) → method Command.setHelp(string $help): static
  • changed: method Command.setHidden(bool $hidden) → method Command.setHidden(bool $hidden = …): static
  • changed: method Command.setName(string $name) → method Command.setName(string $name): static
  • changed: method Command.setProcessTitle(string $title) → method Command.setProcessTitle(string $title): static
  • changed: method LazyCommand.addArgument(string $name, ?int $mode = …, string $description = …, $default = …): self → method LazyCommand.addArgument(string $name, ?int $mode = …, string $description = …, mixed $default = …): static
  • changed: method LazyCommand.addOption(string $name, $shortcut = …, ?int $mode = …, string $description = …, $default = …): self → method LazyCommand.addOption(string $name, string|array|null $shortcut = …, ?int $mode = …, string $description = …, mixed $default = …): static
  • changed: method LazyCommand.addUsage(string $usage): self → method LazyCommand.addUsage(string $usage): static
  • changed: method LazyCommand.getHelper(string $name) → method LazyCommand.getHelper(string $name): HelperInterface
  • changed: method LazyCommand.setCode(callable $code): self → method LazyCommand.setCode(callable $code): static
  • changed: method LazyCommand.setDefinition($definition): self → method LazyCommand.setDefinition(array|InputDefinition $definition): static
  • changed: method LazyCommand.setHelp(string $help): self → method LazyCommand.setHelp(string $help): static
  • changed: method LazyCommand.setProcessTitle(string $title): self → method LazyCommand.setProcessTitle(string $title): static
  • changed: method SignalableCommandInterface.handleSignal(int $signal): void → method SignalableCommandInterface.handleSignal(int $signal)
  • changed: protected method CompleteCommand.initialize(InputInterface $input, OutputInterface $output) → protected method CompleteCommand.initialize(InputInterface $input, OutputInterface $output): void
  • changed: protected method DumpCompletionCommand.configure() → protected method DumpCompletionCommand.configure(): void
  • changed: protected method HelpCommand.execute(InputInterface $input, OutputInterface $output) → protected method HelpCommand.execute(InputInterface $input, OutputInterface $output): int
  • changed: protected method ListCommand.execute(InputInterface $input, OutputInterface $output) → protected method ListCommand.execute(InputInterface $input, OutputInterface $output): int
  • changed: static method Command.getDefaultName() → static method Command.getDefaultName(): ?string
  • added: const CompleteCommand.COMPLETION_API_VERSION
  • added: constructor TraceableCommand(Command $command, Stopwatch $stopwatch)
  • added: final class TraceableCommand extends Command implements SignalableCommandInterface
  • added: method CompleteCommand.getDefinition(): InputDefinition
  • added: method CompleteCommand.mergeApplicationDefinition(bool $mergeArgs = …): void
  • added: method CompleteCommand.setApplication(?Application $application = …): void
  • added: method CompleteCommand.setDefinition(array|InputDefinition $definition): static
  • added: method TraceableCommand.__call(string $name, array $arguments): mixed
  • added: method TraceableCommand.addArgument(string $name, ?int $mode = …, string $description = …, mixed $default = …, array|\Closure $suggestedValues = …): static
  • added: method TraceableCommand.addOption(string $name, string|array|null $shortcut = …, ?int $mode = …, string $description = …, mixed $default = …, array|\Closure $suggestedValues = …): static
  • added: method TraceableCommand.addUsage(string $usage): static
  • added: method TraceableCommand.complete(CompletionInput $input, CompletionSuggestions $suggestions): void
  • added: method TraceableCommand.getApplication(): ?Application
  • added: method TraceableCommand.getDefinition(): InputDefinition
  • added: method TraceableCommand.getHelp(): string
  • added: method TraceableCommand.getHelper(string $name): HelperInterface
  • added: method TraceableCommand.getHelperSet(): ?HelperSet
  • added: method TraceableCommand.getNativeDefinition(): InputDefinition
  • added: method TraceableCommand.getProcessedHelp(): string
  • added: method TraceableCommand.getSubscribedSignals(): array
  • added: method TraceableCommand.getSynopsis(bool $short = …): string
  • added: method TraceableCommand.getUsages(): array
  • added: method TraceableCommand.handleSignal(int $signal, int|false $previousExitCode = …): int|false
  • added: method TraceableCommand.ignoreValidationErrors(): void
  • added: method TraceableCommand.isEnabled(): bool
  • added: method TraceableCommand.mergeApplicationDefinition(bool $mergeArgs = …): void
  • added: method TraceableCommand.run(InputInterface $input, OutputInterface $output): int
  • added: method TraceableCommand.setApplication(?Application $application = …): void
  • added: method TraceableCommand.setCode(callable $code): static
  • added: method TraceableCommand.setDefinition(array|InputDefinition $definition): static
  • added: method TraceableCommand.setHelp(string $help): static
  • added: method TraceableCommand.setHelperSet(HelperSet $helperSet): void
  • added: method TraceableCommand.setProcessTitle(string $title): static
  • added: property TraceableCommand.arguments: array
  • added: property TraceableCommand.command: Command
  • added: property TraceableCommand.duration: string
  • added: property TraceableCommand.exitCode: int
  • added: property TraceableCommand.handledSignals: array
  • added: property TraceableCommand.ignoreValidation: bool
  • added: property TraceableCommand.input: InputInterface
  • added: property TraceableCommand.interactiveInputs: array
  • added: property TraceableCommand.interruptedBySignal: ?int
  • added: property TraceableCommand.isInteractive: bool
  • added: property TraceableCommand.maxMemoryUsage: string
  • added: property TraceableCommand.options: array
  • added: property TraceableCommand.output: OutputInterface
  • added: protected method TraceableCommand.execute(InputInterface $input, OutputInterface $output): int
  • added: protected method TraceableCommand.initialize(InputInterface $input, OutputInterface $output): void
  • added: protected method TraceableCommand.interact(InputInterface $input, OutputInterface $output): void
  • changed: method CommandLoaderInterface.get(string $name) → method CommandLoaderInterface.get(string $name): Command
  • changed: method CommandLoaderInterface.getNames() → method CommandLoaderInterface.getNames(): array
  • changed: method CommandLoaderInterface.has(string $name) → method CommandLoaderInterface.has(string $name): bool
  • changed: method ContainerCommandLoader.get(string $name) → method ContainerCommandLoader.get(string $name): Command
  • changed: method ContainerCommandLoader.getNames() → method ContainerCommandLoader.getNames(): array
  • changed: method ContainerCommandLoader.has(string $name) → method ContainerCommandLoader.has(string $name): bool
  • changed: method FactoryCommandLoader.get(string $name) → method FactoryCommandLoader.get(string $name): Command
  • changed: method FactoryCommandLoader.getNames() → method FactoryCommandLoader.getNames(): array
  • changed: method FactoryCommandLoader.has(string $name) → method FactoryCommandLoader.has(string $name): bool
  • changed: class Suggestion → class Suggestion implements \Stringable
  • changed: constructor Suggestion(string $value) → constructor Suggestion(string $value, string $description = …)
  • changed: method CompletionSuggestions.suggestOption(InputOption $option): self → method CompletionSuggestions.suggestOption(InputOption $option): static
  • changed: method CompletionSuggestions.suggestOptions(array $options): self → method CompletionSuggestions.suggestOptions(array $options): static
  • changed: method CompletionSuggestions.suggestValue($value): self → method CompletionSuggestions.suggestValue(string|Suggestion $value): static
  • changed: method CompletionSuggestions.suggestValues(array $values): self → method CompletionSuggestions.suggestValues(array $values): static
  • added: method Suggestion.getDescription(): string
  • added: class FishCompletionOutput implements CompletionOutputInterface
  • added: class ZshCompletionOutput implements CompletionOutputInterface
  • added: method FishCompletionOutput.write(CompletionSuggestions $suggestions, OutputInterface $output): void
  • added: method ZshCompletionOutput.write(CompletionSuggestions $suggestions, OutputInterface $output): void
  • added: final class CommandDataCollector extends DataCollector
  • added: method CommandDataCollector.collect(Request $request, Response $response, ?\Throwable $exception = …): void
  • added: method CommandDataCollector.getApplicationInputs(): array
  • added: method CommandDataCollector.getArguments(): array
  • added: method CommandDataCollector.getCommand(): array
  • added: method CommandDataCollector.getDuration(): string
  • added: method CommandDataCollector.getEnabled(): bool
  • added: method CommandDataCollector.getHandledSignals(): array
  • added: method CommandDataCollector.getHelperSet(): array
  • added: method CommandDataCollector.getInput(): Data
  • added: method CommandDataCollector.getInteractive(): bool
  • added: method CommandDataCollector.getInteractiveInputs(): array
  • added: method CommandDataCollector.getInterruptedBySignal(): ?string
  • added: method CommandDataCollector.getMaxMemoryUsage(): string
  • added: method CommandDataCollector.getName(): string
  • added: method CommandDataCollector.getOptions(): array
  • added: method CommandDataCollector.getOutput(): Data
  • added: method CommandDataCollector.getSignalable(): array
  • added: method CommandDataCollector.getValidateInput(): bool
  • added: method CommandDataCollector.getVerbosityLevel(): string
  • added: method CommandDataCollector.getVisible(): bool
  • added: method CommandDataCollector.reset(): void
  • added: constructor CliRequest(TraceableCommand $command)
  • added: final class CliRequest extends Request
  • added: method CliRequest.getClientIp(): string
  • added: method CliRequest.getMethod(): string
  • added: method CliRequest.getResponse(): Response
  • added: method CliRequest.getUri(): string
  • added: property CliRequest.command: TraceableCommand
  • removed: constructor AddConsoleCommandPass(string $commandLoaderServiceId = …, string $commandTag = …, string $noPreloadTag = …, string $privateTagName = …)
  • changed: method Descriptor.describe(OutputInterface $output, object $object, array $options = …) → method Descriptor.describe(OutputInterface $output, object $object, array $options = …): void
  • changed: method MarkdownDescriptor.describe(OutputInterface $output, object $object, array $options = …) → method MarkdownDescriptor.describe(OutputInterface $output, object $object, array $options = …): void
  • changed: protected method Descriptor.describeApplication(Application $application, array $options = …) → protected method Descriptor.describeApplication(Application $application, array $options = …): void
  • changed: protected method Descriptor.describeCommand(Command $command, array $options = …) → protected method Descriptor.describeCommand(Command $command, array $options = …): void
  • changed: protected method Descriptor.describeInputArgument(InputArgument $argument, array $options = …) → protected method Descriptor.describeInputArgument(InputArgument $argument, array $options = …): void
  • changed: protected method Descriptor.describeInputDefinition(InputDefinition $definition, array $options = …) → protected method Descriptor.describeInputDefinition(InputDefinition $definition, array $options = …): void
  • changed: protected method Descriptor.describeInputOption(InputOption $option, array $options = …) → protected method Descriptor.describeInputOption(InputOption $option, array $options = …): void
  • changed: protected method Descriptor.write(string $content, bool $decorated = …) → protected method Descriptor.write(string $content, bool $decorated = …): void
  • changed: protected method JsonDescriptor.describeApplication(Application $application, array $options = …) → protected method JsonDescriptor.describeApplication(Application $application, array $options = …): void
  • changed: protected method JsonDescriptor.describeCommand(Command $command, array $options = …) → protected method JsonDescriptor.describeCommand(Command $command, array $options = …): void
  • changed: protected method JsonDescriptor.describeInputArgument(InputArgument $argument, array $options = …) → protected method JsonDescriptor.describeInputArgument(InputArgument $argument, array $options = …): void
  • changed: protected method JsonDescriptor.describeInputDefinition(InputDefinition $definition, array $options = …) → protected method JsonDescriptor.describeInputDefinition(InputDefinition $definition, array $options = …): void
  • changed: protected method JsonDescriptor.describeInputOption(InputOption $option, array $options = …) → protected method JsonDescriptor.describeInputOption(InputOption $option, array $options = …): void
  • changed: protected method MarkdownDescriptor.describeApplication(Application $application, array $options = …) → protected method MarkdownDescriptor.describeApplication(Application $application, array $options = …): void
  • changed: protected method MarkdownDescriptor.describeCommand(Command $command, array $options = …) → protected method MarkdownDescriptor.describeCommand(Command $command, array $options = …): void
  • changed: protected method MarkdownDescriptor.describeInputArgument(InputArgument $argument, array $options = …) → protected method MarkdownDescriptor.describeInputArgument(InputArgument $argument, array $options = …): void
  • changed: protected method MarkdownDescriptor.describeInputDefinition(InputDefinition $definition, array $options = …) → protected method MarkdownDescriptor.describeInputDefinition(InputDefinition $definition, array $options = …): void
  • changed: protected method MarkdownDescriptor.describeInputOption(InputOption $option, array $options = …) → protected method MarkdownDescriptor.describeInputOption(InputOption $option, array $options = …): void
  • changed: protected method MarkdownDescriptor.write(string $content, bool $decorated = …) → protected method MarkdownDescriptor.write(string $content, bool $decorated = …): void
  • changed: protected method TextDescriptor.describeApplication(Application $application, array $options = …) → protected method TextDescriptor.describeApplication(Application $application, array $options = …): void
  • changed: protected method TextDescriptor.describeCommand(Command $command, array $options = …) → protected method TextDescriptor.describeCommand(Command $command, array $options = …): void
  • changed: protected method TextDescriptor.describeInputArgument(InputArgument $argument, array $options = …) → protected method TextDescriptor.describeInputArgument(InputArgument $argument, array $options = …): void
  • changed: protected method TextDescriptor.describeInputDefinition(InputDefinition $definition, array $options = …) → protected method TextDescriptor.describeInputDefinition(InputDefinition $definition, array $options = …): void
  • changed: protected method TextDescriptor.describeInputOption(InputOption $option, array $options = …) → protected method TextDescriptor.describeInputOption(InputOption $option, array $options = …): void
  • changed: protected method XmlDescriptor.describeApplication(Application $application, array $options = …) → protected method XmlDescriptor.describeApplication(Application $application, array $options = …): void
  • changed: protected method XmlDescriptor.describeCommand(Command $command, array $options = …) → protected method XmlDescriptor.describeCommand(Command $command, array $options = …): void
  • changed: protected method XmlDescriptor.describeInputArgument(InputArgument $argument, array $options = …) → protected method XmlDescriptor.describeInputArgument(InputArgument $argument, array $options = …): void
  • changed: protected method XmlDescriptor.describeInputDefinition(InputDefinition $definition, array $options = …) → protected method XmlDescriptor.describeInputDefinition(InputDefinition $definition, array $options = …): void
  • changed: protected method XmlDescriptor.describeInputOption(InputOption $option, array $options = …) → protected method XmlDescriptor.describeInputOption(InputOption $option, array $options = …): void
  • changed: protected property Descriptor.output → protected property Descriptor.output: OutputInterface
  • added: class ReStructuredTextDescriptor extends Descriptor
  • added: method ReStructuredTextDescriptor.describe(OutputInterface $output, object $object, array $options = …): void
  • added: protected method ReStructuredTextDescriptor.describeApplication(Application $application, array $options = …): void
  • added: protected method ReStructuredTextDescriptor.describeCommand(Command $command, array $options = …): void
  • added: protected method ReStructuredTextDescriptor.describeInputArgument(InputArgument $argument, array $options = …): void
  • added: protected method ReStructuredTextDescriptor.describeInputDefinition(InputDefinition $definition, array $options = …): void
  • added: protected method ReStructuredTextDescriptor.describeInputOption(InputOption $option, array $options = …): void
  • added: protected method ReStructuredTextDescriptor.write(string $content, bool $decorated = …): void
  • changed: constructor ConsoleSignalEvent(Command $command, InputInterface $input, OutputInterface $output, int $handlingSignal) → constructor ConsoleSignalEvent(Command $command, InputInterface $input, OutputInterface $output, int $handlingSignal, int|false $exitCode = …)
  • changed: constructor ConsoleTerminateEvent(Command $command, InputInterface $input, OutputInterface $output, int $exitCode) → constructor ConsoleTerminateEvent(Command $command, InputInterface $input, OutputInterface $output, int $exitCode, ?int $interruptingSignal = …)
  • changed: method ConsoleEvent.getCommand() → method ConsoleEvent.getCommand(): ?Command
  • changed: method ConsoleEvent.getInput() → method ConsoleEvent.getInput(): InputInterface
  • changed: method ConsoleEvent.getOutput() → method ConsoleEvent.getOutput(): OutputInterface
  • added: method ConsoleSignalEvent.abortExit(): void
  • added: method ConsoleSignalEvent.getExitCode(): int|false
  • added: method ConsoleSignalEvent.setExitCode(int $exitCode): void
  • added: method ConsoleTerminateEvent.getInterruptingSignal(): ?int
  • changed: static method ErrorListener.getSubscribedEvents() → static method ErrorListener.getSubscribedEvents(): array
  • changed: method CommandNotFoundException.getAlternatives() → method CommandNotFoundException.getAlternatives(): array
  • added: constructor RunCommandFailedException(\Throwable|string $exception, RunCommandContext $context)
  • added: final class RunCommandFailedException extends RuntimeException
  • added: property RunCommandFailedException.context: RunCommandContext
  • changed: method OutputFormatter.format(?string $message) → method OutputFormatter.format(?string $message): ?string
  • changed: method OutputFormatter.getStyle(string $name) → method OutputFormatter.getStyle(string $name): OutputFormatterStyleInterface
  • changed: method OutputFormatter.getStyleStack() → method OutputFormatter.getStyleStack(): OutputFormatterStyleStack
  • changed: method OutputFormatter.hasStyle(string $name) → method OutputFormatter.hasStyle(string $name): bool
  • changed: method OutputFormatter.isDecorated() → method OutputFormatter.isDecorated(): bool
  • changed: method OutputFormatterInterface.format(?string $message) → method OutputFormatterInterface.format(?string $message): ?string
  • changed: method OutputFormatterInterface.getStyle(string $name) → method OutputFormatterInterface.getStyle(string $name): OutputFormatterStyleInterface
  • changed: method OutputFormatterInterface.hasStyle(string $name) → method OutputFormatterInterface.hasStyle(string $name): bool
  • changed: method OutputFormatterInterface.isDecorated() → method OutputFormatterInterface.isDecorated(): bool
  • changed: method OutputFormatterStyle.apply(string $text) → method OutputFormatterStyle.apply(string $text): string
  • changed: method OutputFormatterStyleInterface.apply(string $text) → method OutputFormatterStyleInterface.apply(string $text): string
  • changed: method OutputFormatterStyleInterface.setBackground(?string $color = …) → method OutputFormatterStyleInterface.setBackground(?string $color)
  • changed: method OutputFormatterStyleInterface.setForeground(?string $color = …) → method OutputFormatterStyleInterface.setForeground(?string $color)
  • changed: method OutputFormatterStyleStack.getCurrent() → method OutputFormatterStyleStack.getCurrent(): OutputFormatterStyleInterface
  • changed: method OutputFormatterStyleStack.getEmptyStyle() → method OutputFormatterStyleStack.getEmptyStyle(): OutputFormatterStyleInterface
  • changed: method OutputFormatterStyleStack.pop(?OutputFormatterStyleInterface $style = …) → method OutputFormatterStyleStack.pop(?OutputFormatterStyleInterface $style = …): OutputFormatterStyleInterface
  • changed: method OutputFormatterStyleStack.setEmptyStyle(OutputFormatterStyleInterface $emptyStyle) → method OutputFormatterStyleStack.setEmptyStyle(OutputFormatterStyleInterface $emptyStyle): static
  • changed: static method OutputFormatter.escape(string $text) → static method OutputFormatter.escape(string $text): string
  • removed: method HelperSet.getCommand()
  • removed: method HelperSet.setCommand(?Command $command = …)
  • removed: static method Helper.strlen(?string $string)
  • removed: static method Helper.strlenWithoutDecoration(OutputFormatterInterface $formatter, ?string $string)
  • changed: method DebugFormatterHelper.getName() → method DebugFormatterHelper.getName(): string
  • changed: method DebugFormatterHelper.progress(string $id, string $buffer, bool $error = …, string $prefix = …, string $errorPrefix = …) → method DebugFormatterHelper.progress(string $id, string $buffer, bool $error = …, string $prefix = …, string $errorPrefix = …): string
  • changed: method DebugFormatterHelper.start(string $id, string $message, string $prefix = …) → method DebugFormatterHelper.start(string $id, string $message, string $prefix = …): string
  • changed: method DebugFormatterHelper.stop(string $id, string $message, bool $successful, string $prefix = …) → method DebugFormatterHelper.stop(string $id, string $message, bool $successful, string $prefix = …): string
  • changed: method DescriptorHelper.getName() → method DescriptorHelper.getName(): string
  • changed: method DescriptorHelper.register(string $format, DescriptorInterface $descriptor) → method DescriptorHelper.register(string $format, DescriptorInterface $descriptor): static
  • changed: method Dumper.__invoke($var): string → method Dumper.__invoke(mixed $var): string
  • changed: method FormatterHelper.formatBlock($messages, string $style, bool $large = …) → method FormatterHelper.formatBlock(string|array $messages, string $style, bool $large = …): string
  • changed: method FormatterHelper.formatSection(string $section, string $message, string $style = …) → method FormatterHelper.formatSection(string $section, string $message, string $style = …): string
  • changed: method FormatterHelper.getName() → method FormatterHelper.getName(): string
  • changed: method FormatterHelper.truncate(string $message, int $length, string $suffix = …) → method FormatterHelper.truncate(string $message, int $length, string $suffix = …): string
  • changed: method Helper.getHelperSet() → method Helper.getHelperSet(): ?HelperSet
  • changed: method HelperInterface.getHelperSet() → method HelperInterface.getHelperSet(): ?HelperSet
  • changed: method HelperInterface.setHelperSet(?HelperSet $helperSet = …) → method HelperInterface.setHelperSet(?HelperSet $helperSet)
  • changed: method HelperSet.get(string $name) → method HelperSet.get(string $name): HelperInterface
  • changed: method HelperSet.getIterator() → method HelperSet.getIterator(): \Traversable
  • changed: method HelperSet.has(string $name) → method HelperSet.has(string $name): bool
  • changed: method ProcessHelper.mustRun(OutputInterface $output, $cmd, ?string $error = …, ?callable $callback = …): Process → method ProcessHelper.mustRun(OutputInterface $output, array|Process $cmd, ?string $error = …, ?callable $callback = …): Process
  • changed: method ProcessHelper.run(OutputInterface $output, $cmd, ?string $error = …, ?callable $callback = …, int $verbosity = …): Process → method ProcessHelper.run(OutputInterface $output, array|Process $cmd, ?string $error = …, ?callable $callback = …, int $verbosity = …): Process
  • changed: method ProgressBar.advance(int $step = …) → method ProgressBar.advance(int $step = …): void
  • changed: method ProgressBar.getMessage(string $name = …) → method ProgressBar.getMessage(string $name = …): ?string
  • changed: method ProgressBar.setBarCharacter(string $char) → method ProgressBar.setBarCharacter(string $char): void
  • changed: method ProgressBar.setBarWidth(int $size) → method ProgressBar.setBarWidth(int $size): void
  • changed: method ProgressBar.setEmptyBarCharacter(string $char) → method ProgressBar.setEmptyBarCharacter(string $char): void
  • changed: method ProgressBar.setFormat(string $format) → method ProgressBar.setFormat(string $format): void
  • changed: method ProgressBar.setMaxSteps(int $max) → method ProgressBar.setMaxSteps(int $max): void
  • changed: method ProgressBar.setMessage(string $message, string $name = …) → method ProgressBar.setMessage(string $message, string $name = …): void
  • changed: method ProgressBar.setOverwrite(bool $overwrite) → method ProgressBar.setOverwrite(bool $overwrite): void
  • changed: method ProgressBar.setProgress(int $step) → method ProgressBar.setProgress(int $step): void
  • changed: method ProgressBar.setProgressCharacter(string $char) → method ProgressBar.setProgressCharacter(string $char): void
  • changed: method ProgressBar.setRedrawFrequency(?int $freq) → method ProgressBar.setRedrawFrequency(?int $freq): void
  • changed: method ProgressBar.start(?int $max = …) → method ProgressBar.start(?int $max = …, int $startAt = …): void
  • changed: method QuestionHelper.ask(InputInterface $input, OutputInterface $output, Question $question) → method QuestionHelper.ask(InputInterface $input, OutputInterface $output, Question $question): mixed
  • changed: method QuestionHelper.getName() → method QuestionHelper.getName(): string
  • changed: method Table.addRow($row) → method Table.addRow(TableSeparator|array $row): static
  • changed: method Table.addRows(array $rows) → method Table.addRows(array $rows): static
  • changed: method Table.appendRow($row): self → method Table.appendRow(TableSeparator|array $row): static
  • changed: method Table.getColumnStyle(int $columnIndex) → method Table.getColumnStyle(int $columnIndex): TableStyle
  • changed: method Table.getStyle() → method Table.getStyle(): TableStyle
  • changed: method Table.setColumnMaxWidth(int $columnIndex, int $width): self → method Table.setColumnMaxWidth(int $columnIndex, int $width): static
  • changed: method Table.setColumnStyle(int $columnIndex, $name) → method Table.setColumnStyle(int $columnIndex, TableStyle|string $name): static
  • changed: method Table.setColumnWidth(int $columnIndex, int $width) → method Table.setColumnWidth(int $columnIndex, int $width): static
  • changed: method Table.setColumnWidths(array $widths) → method Table.setColumnWidths(array $widths): static
  • changed: method Table.setFooterTitle(?string $title): self → method Table.setFooterTitle(?string $title): static
  • changed: method Table.setHeaderTitle(?string $title): self → method Table.setHeaderTitle(?string $title): static
  • changed: method Table.setHeaders(array $headers) → method Table.setHeaders(array $headers): static
  • changed: method Table.setHorizontal(bool $horizontal = …): self → method Table.setHorizontal(bool $horizontal = …): static
  • changed: method Table.setRow($column, array $row) → method Table.setRow(int|string $column, array $row): static
  • changed: method Table.setStyle($name) → method Table.setStyle(TableStyle|string $name): static
  • changed: method TableCell.__toString() → method TableCell.__toString(): string
  • changed: method TableCell.getColspan() → method TableCell.getColspan(): int
  • changed: method TableCell.getRowspan() → method TableCell.getRowspan(): int
  • changed: method TableCellStyle.getPadByAlign() → method TableCellStyle.getPadByAlign(): int
  • changed: method TableCellStyle.getTagOptions() → method TableCellStyle.getTagOptions(): array
  • changed: method TableStyle.getBorderFormat() → method TableStyle.getBorderFormat(): string
  • changed: method TableStyle.getCellHeaderFormat() → method TableStyle.getCellHeaderFormat(): string
  • changed: method TableStyle.getCellRowContentFormat() → method TableStyle.getCellRowContentFormat(): string
  • changed: method TableStyle.getCellRowFormat() → method TableStyle.getCellRowFormat(): string
  • changed: method TableStyle.getCrossingChar() → method TableStyle.getCrossingChar(): string
  • changed: method TableStyle.getPadType() → method TableStyle.getPadType(): int
  • changed: method TableStyle.getPaddingChar() → method TableStyle.getPaddingChar(): string
  • changed: method TableStyle.setBorderFormat(string $borderFormat) → method TableStyle.setBorderFormat(string $borderFormat): static
  • changed: method TableStyle.setCellHeaderFormat(string $cellHeaderFormat) → method TableStyle.setCellHeaderFormat(string $cellHeaderFormat): static
  • changed: method TableStyle.setCellRowContentFormat(string $cellRowContentFormat) → method TableStyle.setCellRowContentFormat(string $cellRowContentFormat): static
  • changed: method TableStyle.setCellRowFormat(string $cellRowFormat) → method TableStyle.setCellRowFormat(string $cellRowFormat): static
  • changed: method TableStyle.setCrossingChars(string $cross, string $topLeft, string $topMid, string $topRight, string $midRight, string $bottomRight, string $bottomMid, string $bottomLeft, string $midLeft, ?string $topLeftBottom = …, ?string $topMidBottom = …, ?string $topRightBottom = …): self → method TableStyle.setCrossingChars(string $cross, string $topLeft, string $topMid, string $topRight, string $midRight, string $bottomRight, string $bottomMid, string $bottomLeft, string $midLeft, ?string $topLeftBottom = …, ?string $topMidBottom = …, ?string $topRightBottom = …): static
  • changed: method TableStyle.setFooterTitleFormat(string $format): self → method TableStyle.setFooterTitleFormat(string $format): static
  • changed: method TableStyle.setHeaderTitleFormat(string $format): self → method TableStyle.setHeaderTitleFormat(string $format): static
  • changed: method TableStyle.setHorizontalBorderChars(string $outside, ?string $inside = …): self → method TableStyle.setHorizontalBorderChars(string $outside, ?string $inside = …): static
  • changed: method TableStyle.setPadType(int $padType) → method TableStyle.setPadType(int $padType): static
  • changed: method TableStyle.setPaddingChar(string $paddingChar) → method TableStyle.setPaddingChar(string $paddingChar): static
  • changed: method TableStyle.setVerticalBorderChars(string $outside, ?string $inside = …): self → method TableStyle.setVerticalBorderChars(string $outside, ?string $inside = …): static
  • changed: protected method QuestionHelper.formatChoiceQuestionChoices(ChoiceQuestion $question, string $tag) → protected method QuestionHelper.formatChoiceQuestionChoices(ChoiceQuestion $question, string $tag): array
  • changed: static method Helper.formatTime($secs) → static method Helper.formatTime(int|float $secs, int $precision = …)
  • changed: static method Helper.substr(?string $string, int $from, ?int $length = …) → static method Helper.substr(?string $string, int $from, ?int $length = …): string
  • changed: static method ProgressIndicator.getFormatDefinition(string $name) → static method ProgressIndicator.getFormatDefinition(string $name): ?string
  • changed: static method ProgressIndicator.getPlaceholderFormatterDefinition(string $name) → static method ProgressIndicator.getPlaceholderFormatterDefinition(string $name): ?callable
  • changed: static method Table.getStyleDefinition(string $name) → static method Table.getStyleDefinition(string $name): TableStyle
  • added: constructor OutputWrapper(bool $allowCutUrls = …)
  • added: constructor TerminalInputHelper($inputStream, bool $withStty = …)
  • added: final class OutputWrapper
  • added: final class TerminalInputHelper
  • added: method OutputWrapper.wrap(string $text, int $width, string $break = …): string
  • added: method ProgressBar.getPlaceholderFormatter(string $name): ?callable
  • added: method ProgressBar.setPlaceholderFormatter(string $name, callable $callable): void
  • added: method Table.setVertical(bool $vertical = …): static
  • added: method TerminalInputHelper.finish(): void
  • added: method TerminalInputHelper.waitForInput(): void
  • changed: constructor InputArgument(string $name, ?int $mode = …, string $description = …, $default = …) → constructor InputArgument(string $name, ?int $mode = …, string $description = …, string|bool|int|float|array|null $default = …, \Closure|array $suggestedValues = …)
  • changed: constructor InputOption(string $name, $shortcut = …, ?int $mode = …, string $description = …, $default = …) → constructor InputOption(string $name, string|array|null $shortcut = …, ?int $mode = …, string $description = …, string|bool|int|float|array|null $default = …, array|\Closure $suggestedValues = …)
  • changed: method ArgvInput.__toString() → method ArgvInput.__toString(): string
  • changed: method ArgvInput.getFirstArgument() → method ArgvInput.getFirstArgument(): ?string
  • changed: method ArgvInput.getParameterOption($values, $default = …, bool $onlyParams = …) → method ArgvInput.getParameterOption(string|array $values, string|bool|int|float|array|null $default = …, bool $onlyParams = …): mixed
  • changed: method ArgvInput.hasParameterOption($values, bool $onlyParams = …) → method ArgvInput.hasParameterOption(string|array $values, bool $onlyParams = …): bool
  • changed: method ArrayInput.__toString() → method ArrayInput.__toString(): string
  • changed: method ArrayInput.getFirstArgument() → method ArrayInput.getFirstArgument(): ?string
  • changed: method ArrayInput.getParameterOption($values, $default = …, bool $onlyParams = …) → method ArrayInput.getParameterOption(string|array $values, string|bool|int|float|array|null $default = …, bool $onlyParams = …): mixed
  • changed: method ArrayInput.hasParameterOption($values, bool $onlyParams = …) → method ArrayInput.hasParameterOption(string|array $values, bool $onlyParams = …): bool
  • changed: method Input.escapeToken(string $token) → method Input.escapeToken(string $token): string
  • changed: method Input.getArgument(string $name) → method Input.getArgument(string $name): mixed
  • changed: method Input.getArguments() → method Input.getArguments(): array
  • changed: method Input.getOption(string $name) → method Input.getOption(string $name): mixed
  • changed: method Input.getOptions() → method Input.getOptions(): array
  • changed: method Input.hasArgument(string $name) → method Input.hasArgument(string $name): bool
  • changed: method Input.hasOption(string $name) → method Input.hasOption(string $name): bool
  • changed: method Input.isInteractive() → method Input.isInteractive(): bool
  • changed: method Input.setArgument(string $name, $value) → method Input.setArgument(string $name, mixed $value)
  • changed: method Input.setOption(string $name, $value) → method Input.setOption(string $name, mixed $value)
  • changed: method InputArgument.getDefault() → method InputArgument.getDefault(): string|bool|int|float|array|null
  • changed: method InputArgument.getDescription() → method InputArgument.getDescription(): string
  • changed: method InputArgument.getName() → method InputArgument.getName(): string
  • changed: method InputArgument.isArray() → method InputArgument.isArray(): bool
  • changed: method InputArgument.isRequired() → method InputArgument.isRequired(): bool
  • changed: method InputArgument.setDefault($default = …) → method InputArgument.setDefault(string|bool|int|float|array|null $default = …)
  • changed: method InputDefinition.getArgument($name) → method InputDefinition.getArgument(string|int $name): InputArgument
  • changed: method InputDefinition.getArgumentCount() → method InputDefinition.getArgumentCount(): int
  • changed: method InputDefinition.getArgumentDefaults() → method InputDefinition.getArgumentDefaults(): array
  • changed: method InputDefinition.getArgumentRequiredCount() → method InputDefinition.getArgumentRequiredCount(): int
  • changed: method InputDefinition.getArguments() → method InputDefinition.getArguments(): array
  • changed: method InputDefinition.getOption(string $name) → method InputDefinition.getOption(string $name): InputOption
  • changed: method InputDefinition.getOptionDefaults() → method InputDefinition.getOptionDefaults(): array
  • changed: method InputDefinition.getOptionForShortcut(string $shortcut) → method InputDefinition.getOptionForShortcut(string $shortcut): InputOption
  • changed: method InputDefinition.getOptions() → method InputDefinition.getOptions(): array
  • changed: method InputDefinition.getSynopsis(bool $short = …) → method InputDefinition.getSynopsis(bool $short = …): string
  • changed: method InputDefinition.hasArgument($name) → method InputDefinition.hasArgument(string|int $name): bool
  • changed: method InputDefinition.hasOption(string $name) → method InputDefinition.hasOption(string $name): bool
  • changed: method InputDefinition.hasShortcut(string $name) → method InputDefinition.hasShortcut(string $name): bool
  • changed: method InputInterface.getArguments() → method InputInterface.getArguments(): array
  • changed: method InputInterface.getFirstArgument() → method InputInterface.getFirstArgument(): ?string
  • changed: method InputInterface.getOptions() → method InputInterface.getOptions(): array
  • changed: method InputInterface.getParameterOption($values, $default = …, bool $onlyParams = …) → method InputInterface.getParameterOption(string|array $values, string|bool|int|float|array|null $default = …, bool $onlyParams = …)
  • changed: method InputInterface.hasArgument(string $name) → method InputInterface.hasArgument(string $name): bool
  • changed: method InputInterface.hasOption(string $name) → method InputInterface.hasOption(string $name): bool
  • changed: method InputInterface.hasParameterOption($values, bool $onlyParams = …) → method InputInterface.hasParameterOption(string|array $values, bool $onlyParams = …): bool
  • changed: method InputInterface.isInteractive() → method InputInterface.isInteractive(): bool
  • changed: method InputInterface.setArgument(string $name, $value) → method InputInterface.setArgument(string $name, mixed $value)
  • changed: method InputInterface.setOption(string $name, $value) → method InputInterface.setOption(string $name, mixed $value)
  • changed: method InputOption.acceptValue() → method InputOption.acceptValue(): bool
  • changed: method InputOption.equals(self $option) → method InputOption.equals(self $option): bool
  • changed: method InputOption.getDefault() → method InputOption.getDefault(): string|bool|int|float|array|null
  • changed: method InputOption.getDescription() → method InputOption.getDescription(): string
  • changed: method InputOption.getName() → method InputOption.getName(): string
  • changed: method InputOption.getShortcut() → method InputOption.getShortcut(): ?string
  • changed: method InputOption.isArray() → method InputOption.isArray(): bool
  • changed: method InputOption.isValueOptional() → method InputOption.isValueOptional(): bool
  • changed: method InputOption.isValueRequired() → method InputOption.isValueRequired(): bool
  • changed: method InputOption.setDefault($default = …) → method InputOption.setDefault(string|bool|int|float|array|null $default = …)
  • added: method InputArgument.complete(CompletionInput $input, CompletionSuggestions $suggestions): void
  • added: method InputArgument.hasCompletion(): bool
  • added: method InputOption.complete(CompletionInput $input, CompletionSuggestions $suggestions): void
  • added: method InputOption.hasCompletion(): bool
  • changed: method ConsoleLogger.hasErrored() → method ConsoleLogger.hasErrored(): bool
  • changed: method ConsoleLogger.log($level, $message, array $context = …) → method ConsoleLogger.log($level, $message, array $context = …): void
  • added: class RunCommandMessage implements \Stringable
  • added: constructor RunCommandContext(RunCommandMessage $message, int $exitCode, string $output)
  • added: constructor RunCommandMessage(string $input, bool $throwOnFailure = …, bool $catchExceptions = …)
  • added: constructor RunCommandMessageHandler(Application $application)
  • added: final class RunCommandContext
  • added: final class RunCommandMessageHandler
  • added: method RunCommandMessage.__toString(): string
  • added: method RunCommandMessageHandler.__invoke(RunCommandMessage $message): RunCommandContext
  • added: property RunCommandContext.exitCode: int
  • added: property RunCommandContext.message: RunCommandMessage
  • added: property RunCommandContext.output: string
  • added: property RunCommandMessage.catchExceptions: bool
  • added: property RunCommandMessage.input: string
  • added: property RunCommandMessage.throwOnFailure: bool
  • changed: method BufferedOutput.fetch() → method BufferedOutput.fetch(): string
  • changed: method ConsoleOutput.getErrorOutput() → method ConsoleOutput.getErrorOutput(): OutputInterface
  • changed: method ConsoleOutputInterface.getErrorOutput() → method ConsoleOutputInterface.getErrorOutput(): OutputInterface
  • changed: method ConsoleSectionOutput.addContent(string $input) → method ConsoleSectionOutput.addContent(string $input, bool $newline = …): int
  • changed: method ConsoleSectionOutput.overwrite($message) → method ConsoleSectionOutput.overwrite(string|iterable $message)
  • changed: method NullOutput.getFormatter() → method NullOutput.getFormatter(): OutputFormatterInterface
  • changed: method NullOutput.getVerbosity() → method NullOutput.getVerbosity(): int
  • changed: method NullOutput.isDebug() → method NullOutput.isDebug(): bool
  • changed: method NullOutput.isDecorated() → method NullOutput.isDecorated(): bool
  • changed: method NullOutput.isQuiet() → method NullOutput.isQuiet(): bool
  • changed: method NullOutput.isVerbose() → method NullOutput.isVerbose(): bool
  • changed: method NullOutput.isVeryVerbose() → method NullOutput.isVeryVerbose(): bool
  • changed: method NullOutput.write($messages, bool $newline = …, int $options = …) → method NullOutput.write(string|iterable $messages, bool $newline = …, int $options = …)
  • changed: method NullOutput.writeln($messages, int $options = …) → method NullOutput.writeln(string|iterable $messages, int $options = …)
  • changed: method Output.getFormatter() → method Output.getFormatter(): OutputFormatterInterface
  • changed: method Output.getVerbosity() → method Output.getVerbosity(): int
  • changed: method Output.isDebug() → method Output.isDebug(): bool
  • changed: method Output.isDecorated() → method Output.isDecorated(): bool
  • changed: method Output.isQuiet() → method Output.isQuiet(): bool
  • changed: method Output.isVerbose() → method Output.isVerbose(): bool
  • changed: method Output.isVeryVerbose() → method Output.isVeryVerbose(): bool
  • changed: method Output.write($messages, bool $newline = …, int $options = …) → method Output.write(string|iterable $messages, bool $newline = …, int $options = …)
  • changed: method Output.writeln($messages, int $options = …) → method Output.writeln(string|iterable $messages, int $options = …)
  • changed: method OutputInterface.getFormatter() → method OutputInterface.getFormatter(): OutputFormatterInterface
  • changed: method OutputInterface.getVerbosity() → method OutputInterface.getVerbosity(): int
  • changed: method OutputInterface.isDebug() → method OutputInterface.isDebug(): bool
  • changed: method OutputInterface.isDecorated() → method OutputInterface.isDecorated(): bool
  • changed: method OutputInterface.isQuiet() → method OutputInterface.isQuiet(): bool
  • changed: method OutputInterface.isVerbose() → method OutputInterface.isVerbose(): bool
  • changed: method OutputInterface.isVeryVerbose() → method OutputInterface.isVeryVerbose(): bool
  • changed: method OutputInterface.write($messages, bool $newline = …, int $options = …) → method OutputInterface.write(string|iterable $messages, bool $newline = …, int $options = …)
  • changed: method OutputInterface.writeln($messages, int $options = …) → method OutputInterface.writeln(string|iterable $messages, int $options = …)
  • changed: method TrimmedBufferOutput.fetch() → method TrimmedBufferOutput.fetch(): string
  • changed: protected method ConsoleOutput.hasStderrSupport() → protected method ConsoleOutput.hasStderrSupport(): bool
  • changed: protected method ConsoleOutput.hasStdoutSupport() → protected method ConsoleOutput.hasStdoutSupport(): bool
  • changed: protected method StreamOutput.hasColorSupport() → protected method StreamOutput.hasColorSupport(): bool
  • added: enum AnsiColorMode
  • added: member AnsiColorMode.Ansi24
  • added: member AnsiColorMode.Ansi4
  • added: member AnsiColorMode.Ansi8
  • added: method AnsiColorMode.convertFromHexToAnsiColorCode(string $hexColor): string
  • added: method ConsoleSectionOutput.addNewLineOfInputSubmit(): void
  • added: method ConsoleSectionOutput.getVisibleContent(): string
  • added: method ConsoleSectionOutput.setMaxHeight(int $maxHeight): void
  • changed: constructor ChoiceQuestion(string $question, array $choices, $default = …) → constructor ChoiceQuestion(string $question, array $choices, string|bool|int|float|null $default = …)
  • changed: constructor Question(string $question, $default = …) → constructor Question(string $question, string|bool|int|float|null $default = …)
  • changed: method ChoiceQuestion.getChoices() → method ChoiceQuestion.getChoices(): array
  • changed: method ChoiceQuestion.getPrompt() → method ChoiceQuestion.getPrompt(): string
  • changed: method ChoiceQuestion.isMultiselect() → method ChoiceQuestion.isMultiselect(): bool
  • changed: method ChoiceQuestion.setErrorMessage(string $errorMessage) → method ChoiceQuestion.setErrorMessage(string $errorMessage): static
  • changed: method ChoiceQuestion.setMultiselect(bool $multiselect) → method ChoiceQuestion.setMultiselect(bool $multiselect): static
  • changed: method ChoiceQuestion.setPrompt(string $prompt) → method ChoiceQuestion.setPrompt(string $prompt): static
  • changed: method Question.getAutocompleterValues() → method Question.getAutocompleterValues(): ?iterable
  • changed: method Question.getDefault() → method Question.getDefault(): string|bool|int|float|null
  • changed: method Question.getMaxAttempts() → method Question.getMaxAttempts(): ?int
  • changed: method Question.getNormalizer() → method Question.getNormalizer(): ?callable
  • changed: method Question.getQuestion() → method Question.getQuestion(): string
  • changed: method Question.getValidator() → method Question.getValidator(): ?callable
  • changed: method Question.isHidden() → method Question.isHidden(): bool
  • changed: method Question.isHiddenFallback() → method Question.isHiddenFallback(): bool
  • changed: method Question.setAutocompleterCallback(?callable $callback = …): self → method Question.setAutocompleterCallback(?callable $callback = …): static
  • changed: method Question.setAutocompleterValues(?iterable $values) → method Question.setAutocompleterValues(?iterable $values): static
  • changed: method Question.setHidden(bool $hidden) → method Question.setHidden(bool $hidden): static
  • changed: method Question.setHiddenFallback(bool $fallback) → method Question.setHiddenFallback(bool $fallback): static
  • changed: method Question.setMaxAttempts(?int $attempts) → method Question.setMaxAttempts(?int $attempts): static
  • changed: method Question.setMultiline(bool $multiline): self → method Question.setMultiline(bool $multiline): static
  • changed: method Question.setNormalizer(callable $normalizer) → method Question.setNormalizer(callable $normalizer): static
  • changed: method Question.setTrimmable(bool $trimmable): self → method Question.setTrimmable(bool $trimmable): static
  • changed: method Question.setValidator(?callable $validator = …) → method Question.setValidator(?callable $validator = …): static
  • added: class SignalMap
  • added: method SignalRegistry.popPreviousHandlers(): void
  • added: method SignalRegistry.pushCurrentHandlers(): void
  • added: static method SignalMap.getSignalName(int $signal): ?string
  • changed: method OutputStyle.createProgressBar(int $max = …) → method OutputStyle.createProgressBar(int $max = …): ProgressBar
  • changed: method OutputStyle.getFormatter() → method OutputStyle.getFormatter(): OutputFormatterInterface
  • changed: method OutputStyle.getVerbosity() → method OutputStyle.getVerbosity(): int
  • changed: method OutputStyle.isDebug() → method OutputStyle.isDebug(): bool
  • changed: method OutputStyle.isDecorated() → method OutputStyle.isDecorated(): 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: method OutputStyle.write($messages, bool $newline = …, int $type = …) → method OutputStyle.write(string|iterable $messages, bool $newline = …, int $type = …)
  • changed: method OutputStyle.writeln($messages, int $type = …) → method OutputStyle.writeln(string|iterable $messages, int $type = …)
  • changed: method StyleInterface.ask(string $question, ?string $default = …, ?callable $validator = …) → method StyleInterface.ask(string $question, ?string $default = …, ?callable $validator = …): mixed
  • changed: method StyleInterface.askHidden(string $question, ?callable $validator = …) → method StyleInterface.askHidden(string $question, ?callable $validator = …): mixed
  • changed: method StyleInterface.caution($message) → method StyleInterface.caution(string|array $message)
  • changed: method StyleInterface.choice(string $question, array $choices, $default = …) → method StyleInterface.choice(string $question, array $choices, mixed $default = …): mixed
  • changed: method StyleInterface.confirm(string $question, bool $default = …) → method StyleInterface.confirm(string $question, bool $default = …): bool
  • changed: method StyleInterface.error($message) → method StyleInterface.error(string|array $message)
  • changed: method StyleInterface.note($message) → method StyleInterface.note(string|array $message)
  • changed: method StyleInterface.success($message) → method StyleInterface.success(string|array $message)
  • changed: method StyleInterface.text($message) → method StyleInterface.text(string|array $message)
  • changed: method StyleInterface.warning($message) → method StyleInterface.warning(string|array $message)
  • changed: method SymfonyStyle.ask(string $question, ?string $default = …, ?callable $validator = …) → method SymfonyStyle.ask(string $question, ?string $default = …, ?callable $validator = …): mixed
  • changed: method SymfonyStyle.askHidden(string $question, ?callable $validator = …) → method SymfonyStyle.askHidden(string $question, ?callable $validator = …): mixed
  • changed: method SymfonyStyle.askQuestion(Question $question) → method SymfonyStyle.askQuestion(Question $question): mixed
  • changed: method SymfonyStyle.block($messages, ?string $type = …, ?string $style = …, string $prefix = …, bool $padding = …, bool $escape = …) → method SymfonyStyle.block(string|array $messages, ?string $type = …, ?string $style = …, string $prefix = …, bool $padding = …, bool $escape = …)
  • changed: method SymfonyStyle.caution($message) → method SymfonyStyle.caution(string|array $message)
  • changed: method SymfonyStyle.choice(string $question, array $choices, $default = …) → method SymfonyStyle.choice(string $question, array $choices, mixed $default = …, bool $multiSelect = …): mixed
  • changed: method SymfonyStyle.comment($message) → method SymfonyStyle.comment(string|array $message)
  • changed: method SymfonyStyle.confirm(string $question, bool $default = …) → method SymfonyStyle.confirm(string $question, bool $default = …): bool
  • changed: method SymfonyStyle.createProgressBar(int $max = …) → method SymfonyStyle.createProgressBar(int $max = …): ProgressBar
  • changed: method SymfonyStyle.definitionList(...$list) → method SymfonyStyle.definitionList(string|array|TableSeparator ...$list)
  • changed: method SymfonyStyle.error($message) → method SymfonyStyle.error(string|array $message)
  • changed: method SymfonyStyle.getErrorStyle() → method SymfonyStyle.getErrorStyle(): self
  • changed: method SymfonyStyle.info($message) → method SymfonyStyle.info(string|array $message)
  • changed: method SymfonyStyle.note($message) → method SymfonyStyle.note(string|array $message)
  • changed: method SymfonyStyle.success($message) → method SymfonyStyle.success(string|array $message)
  • changed: method SymfonyStyle.text($message) → method SymfonyStyle.text(string|array $message)
  • changed: method SymfonyStyle.warning($message) → method SymfonyStyle.warning(string|array $message)
  • changed: method SymfonyStyle.write($messages, bool $newline = …, int $type = …) → method SymfonyStyle.write(string|iterable $messages, bool $newline = …, int $type = …)
  • changed: method SymfonyStyle.writeln($messages, int $type = …) → method SymfonyStyle.writeln(string|iterable $messages, int $type = …)
  • changed: method ApplicationTester.run(array $input, array $options = …) → method ApplicationTester.run(array $input, array $options = …): int
  • changed: method CommandTester.execute(array $input, array $options = …) → method CommandTester.execute(array $input, array $options = …): int
  • changed: method TesterTrait.getDisplay(bool $normalize = …) → method TesterTrait.getDisplay(bool $normalize = …): string
  • changed: method TesterTrait.getErrorOutput(bool $normalize = …) → method TesterTrait.getErrorOutput(bool $normalize = …): string
  • changed: method TesterTrait.getInput() → method TesterTrait.getInput(): InputInterface
  • changed: method TesterTrait.getOutput() → method TesterTrait.getOutput(): OutputInterface
  • changed: method TesterTrait.getStatusCode() → method TesterTrait.getStatusCode(): int
  • changed: method TesterTrait.setInputs(array $inputs) → method TesterTrait.setInputs(array $inputs): static