Releases: PhpGt/Cli
May 2024 release
September 2023 release
PHP 8.1 improvements
Minor general improvements
- Types are tidied up throughout.
- An argument list is always nullable by default.
- Composer is used to handle semantic version numbering.
- An empty string is returned when no user input is detected (rather than
null
). - Dependencies bumped.
CI and type safety improvements
This patch release includes two improvements: 1) CI is handled by Github Actions now - you can check out the build history at https://github.com/PhpGt/Cli/actions 2) PHPStan level 6 has been applied to the code, meaning certain type hints have been improved for greater readability and future maintainability.
Have fun!
Upgrade to PHP 7.4
Since the introduction of PHP 7.4, the way sub-processes are handled in PHP is a lot cleaner and more manageable. This release upgrades to the new execution model, which means that if any Gt/Cli/Command is executed from within another PHP process, the server will no longer be left hanging after the parent process is terminated.
Stable dependencies
PhpGt/Cli depends on PhpGt/Daemon, which has received its first stable release, meaning that this repository no longer has to specify dev-master in its composer.json.
June 2019 minor improvements
No new functionality is being introduced in this release, but plenty of backwards-compatible improvements, such as:
- Fixed bug where arguments with no value must be passed only at the end of the arguments list
- Full documentation is output in the
--help
command - All processes take advantage of the PHP.Gt/Daemon repository
- Use in/out/err streams by default (no need to specify)
In-memory streams
This is a minor release consisting of an introduction of default constructor arguments to the Stream
object. Now a Stream
can be constructed without specifying any particular stream path, in which case the object will use php://memory
.
ArgumentValue improvements
This is a minor update with two small improvements to the ArgumentValue class.
- ArgumentValue objects can now be treated as strings
- Default values are set correctly