9.8 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			9.8 KiB
		
	
	
	
	
	
	
	
CHANGELOG
6.2
- Improve truecolor terminal detection in some cases
- Add support for 256 color terminals (conversion from Ansi24 to Ansi8 if terminal is capable of it)
- Deprecate calling *Command::setApplication(),*FormatterStyle::setForeground/setBackground(),Helper::setHelpSet(),Input*::setDefault(),Question::setAutocompleterCallback/setValidator()without any arguments
- Change the signature of OutputFormatterStyleInterface::setForeground/setBackground()tosetForeground/setBackground(?string)
- Change the signature of HelperInterface::setHelperSet()tosetHelperSet(?HelperSet)
6.1
- Add support to display table vertically when calling setVertical()
- Add method __toString()toInputInterface
- Added OutputWrapperto prevent truncated URL inSymfonyStyle::createBlock.
- Deprecate Command::$defaultNameandCommand::$defaultDescription, use theAsCommandattribute instead
- Add suggested values for arguments and options in input definition, for input completion
- Add $resumeAtparameter toProgressBar#start(), so that one can easily 'resume' progress on longer tasks, and still get accurategetEstimate()andgetRemaining()results.
6.0
- Command::setHidden()has a default value (- true) for- $hiddenparameter and is final
- Remove Helper::strlen(), useHelper::width()instead
- Remove Helper::strlenWithoutDecoration(), useHelper::removeDecoration()instead
- AddConsoleCommandPasscan not be configured anymore
- Remove HelperSet::setCommand()andgetCommand()without replacement
5.4
- Add TesterTrait::assertCommandIsSuccessful()to test command
- Deprecate HelperSet::setCommand()andgetCommand()without replacement
5.3
- Add GithubActionReporterto render annotations in a Github Action
- Add InputOption::VALUE_NEGATABLEflag to handle--foo/--no-foooptions
- Add the Command::$defaultDescriptionstatic property and thedescriptionattribute on theconsole.commandtag to allow thelistcommand to instantiate commands lazily
- Add option --shortto thelistcommand
- Add support for bright colors
- Add #[AsCommand]attribute for declaring commands on PHP 8
- Add Helper::width()andHelper::length()
- The --ansiand--no-ansioptions now default tonull.
5.2.0
- Added SingleCommandApplication::setAutoExit()to allow testing viaCommandTester
- added support for multiline responses to questions through Question::setMultiline()andQuestion::isMultiline()
- Added SignalRegistryclass to stack signals handlers
- Added support for signals:
- Added Application::getSignalRegistry()andApplication::setSignalsToDispatchEvent()methods
- Added SignalableCommandInterfaceinterface
 
- Added 
- Added TableCellStyleclass to customize table cell
- Removed phpprefix invocation from help messages.
5.1.0
- Command::setHidden()is final since Symfony 5.1
- Add SingleCommandApplication
- Add Cursorclass
5.0.0
- removed support for finding hidden commands using an abbreviation, use the full name instead
- removed TableStyle::setCrossingChar()method in favor ofTableStyle::setDefaultCrossingChar()
- removed TableStyle::setHorizontalBorderChar()method in favor ofTableStyle::setDefaultCrossingChars()
- removed TableStyle::getHorizontalBorderChar()method in favor ofTableStyle::getBorderChars()
- removed TableStyle::setVerticalBorderChar()method in favor ofTableStyle::setVerticalBorderChars()
- removed TableStyle::getVerticalBorderChar()method in favor ofTableStyle::getBorderChars()
- removed support for returning nullfromCommand::execute(), return0instead
- ProcessHelper::run()accepts only- array|Symfony\Component\Process\Processfor its- commandargument
- Application::setDispatcheraccepts only- Symfony\Contracts\EventDispatcher\EventDispatcherInterfacefor its- dispatcherargument
- renamed Application::renderException()andApplication::doRenderException()torenderThrowable()anddoRenderThrowable()respectively.
4.4.0
- deprecated finding hidden commands using an abbreviation, use the full name instead
- added Question::setTrimmabledefault to true to allow the answer to be trimmed
- added method minSecondsBetweenRedraws()andmaxSecondsBetweenRedraws()onProgressBar
- Applicationimplements- ResetInterface
- marked all dispatched event classes as @final
- added support for displaying table horizontally
- deprecated returning nullfromCommand::execute(), return0instead
- Deprecated the Application::renderException()andApplication::doRenderException()methods, userenderThrowable()anddoRenderThrowable()instead.
- added support for the NO_COLORenv var (https://no-color.org/)
4.3.0
- added support for hyperlinks
- added ProgressBar::iterate()method that simplify updating the progress bar when iterating
- added Question::setAutocompleterCallback()to provide a callback function that dynamically generates suggestions as the user types
4.2.0
- allowed passing commands as [$process, 'ENV_VAR' => 'value']toProcessHelper::run()to pass environment variables
- deprecated passing a command as a string to ProcessHelper::run(), pass it the command as an array of its arguments instead
- made the ProcessHelperclass final
- added WrappableOutputFormatterInterface::formatAndWrap()(implemented inOutputFormatter)
- added capture_stderr_separatelyoption toCommandTester::execute()
4.1.0
- added option to run suggested command if command is not found and only 1 alternative is available
- added option to modify console output and print multiple modifiable sections
- added support for iterable messages in output writeandwritelnmethods
4.0.0
- OutputFormatterthrows an exception when unknown options are used
- removed QuestionHelper::setInputStream()/getInputStream()
- removed Application::getTerminalWidth()/getTerminalHeight()andApplication::setTerminalDimensions()/getTerminalDimensions()
- removed ConsoleExceptionEvent
- removed ConsoleEvents::EXCEPTION
3.4.0
- added SHELL_VERBOSITYenv var to control verbosity
- added CommandLoaderInterface,FactoryCommandLoaderand PSR-11ContainerCommandLoaderfor commands lazy-loading
- added a case-insensitive command name matching fallback
- added static Command::$defaultName/getDefaultName(), allowing for commands to be registered at compile time in the application command loader. Setting the$defaultNameproperty avoids the need for filling thecommandattribute on theconsole.commandtag when usingAddConsoleCommandPass.
3.3.0
- added ExceptionListener
- added AddConsoleCommandPass(originally in FrameworkBundle)
- [BC BREAK] Input::getOption()no longer returns the default value for options with value optional explicitly passed empty
- added console.error event to catch exceptions thrown by other listeners
- deprecated console.exception event in favor of console.error
- added ability to handle CommandNotFoundExceptionthrough theconsole.errorevent
- deprecated default validation in SymfonyQuestionHelper::ask
3.2.0
- added setInputs()method to CommandTester for ease testing of commands expecting inputs
- added setStream()andgetStream()methods to Input (implement StreamableInputInterface)
- added StreamableInputInterface
- added LockableTrait
3.1.0
- added truncate method to FormatterHelper
- added setColumnWidth(s) method to Table
2.8.3
- remove readline support from the question helper as it caused issues
2.8.0
- use readline for user input in the question helper when available to allow the use of arrow keys
2.6.0
- added a Process helper
- added a DebugFormatter helper
2.5.0
- deprecated the dialog helper (use the question helper instead)
- deprecated TableHelper in favor of Table
- deprecated ProgressHelper in favor of ProgressBar
- added ConsoleLogger
- added a question helper
- added a way to set the process name of a command
- added a way to set a default command instead of ListCommand
2.4.0
- added a way to force terminal dimensions
- added a convenient method to detect verbosity level
- [BC BREAK] made descriptors use output instead of returning a string
2.3.0
- added multiselect support to the select dialog helper
- added Table Helper for tabular data rendering
- added support for events in Application
- added a way to normalize EOLs in ApplicationTester::getDisplay()andCommandTester::getDisplay()
- added a way to set the progress bar progress via the setCurrentmethod
- added support for multiple InputOption shortcuts, written as '-a|-b|-c'
- added two additional verbosity levels, VERBOSITY_VERY_VERBOSE and VERBOSITY_DEBUG
2.2.0
- added support for colorization on Windows via ConEmu
- add a method to Dialog Helper to ask for a question and hide the response
- added support for interactive selections in console (DialogHelper::select())
- added support for autocompletion as you type in Dialog Helper
2.1.0
- added ConsoleOutputInterface
- added the possibility to disable a command (Command::isEnabled())
- added suggestions when a command does not exist
- added a --raw option to the list command
- added support for STDERR in the console output class (errors are now sent to STDERR)
- made the defaults (helper set, commands, input definition) in Application more easily customizable
- added support for the shell even if readline is not available
- added support for process isolation in Symfony shell via
--process-isolationswitch
- added support for --, which disables options parsing after that point (tokens will be parsed as arguments)
