Download the PHP package tjm/sy-console without Composer
On this page you can find all versions of the php package tjm/sy-console. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download tjm/sy-console
More information about tjm/sy-console
Files in tjm/sy-console
Package sy-console
Short Description Symfony Console component with dependency injection, config handling, configurable command loading, and other niceties.
License BSD-3-Clause
Informations about the package sy-console
sy-console
Symfony Console component plus dependency injection, config handling, easily configured loading of commands, STDIN as first argument, improvements to default command behavior, and other niceties.
Usage
Like most Symfony projects these days, you start with composer, requiring tjm/sy-console
as a dependency. You'll create an application similar to how you would with the symfony component alone, but using the sy-console Application
class and passing it configuration as an argument.
In the config file, you can set parameters, do imports, and configure services just like you would with a Symfony Standard app (although without a few of the niceties, like bundle path aliases). There is a 'tjm_console' key for configuring the app itself. This is where you set the name, version, and commands.
The commands key is an associative array, with the key being the namespace and the value being the folder or file path. If the key is numeric, then the value will be the namespaced class name of the command, and it will use the autoloader to load the class.
In Symfony 3+, you can also load classes as services, using the console.command
tag, as seen in the services
definition above.
Known Issues
When piping into a command, eg echo 'foo' | bin/console something
, the Symfony question helper will act as if interactive is set to false, and thus will skip asking users for input, just using the default. This seems to be an issue with STDIN and PHP in general. I'm looking for a solution, but haven't found one yet. Since piping into the standard Symfony console doesn't even work, you may not notice.
All versions of sy-console with dependencies
symfony/config Version >=4.4 <7.0
symfony/console Version >=4.4 <7.0
symfony/dependency-injection Version >=4.4 <7.0
symfony/event-dispatcher Version >=4.4 <7.0
symfony/finder Version >=4.4 <7.0
tjm/sy-dependency-injection Version ^1.0