GtCommand: Gt/Cli application
Published on by Greg Bowler
Functionality of this repository has been upgraded to use the Php.Gt/Cli functionality, and general improvements have been introduced along the way.
Published on by Greg Bowler
Functionality of this repository has been upgraded to use the Php.Gt/Cli functionality, and general improvements have been introduced along the way.
Published on by Greg Bowler
In this minor patch release, if the dynamic path is requested without a parameter, the deepest path variable is returned. This is especially useful for paths with only a single dynamic path variable.
Published on by Greg Bowler
In this minor patch release:
Published on by Greg Bowler
PHP.Gt/Dom is now upgraded to v3, which brings a lot of improvements to the compatibility with W3C spec. The good news is that the existing functionality isn’t changed at all, so the one single change that was needed to make Csrf compatible with this new version was to drop the saveHTML() function call of the Document object and replace it with a string cast.
Have fun!
Published on by Greg Bowler
Without supplying a pattern to match against, this patch release introduces the wildcard glob: https://github.com/PhpGt/Sync/pull/18
Published on by Greg Bowler
This patch release introduces a bugfix, typehint improvements and a bump of dependencies:
Published on by Greg Bowler
In this patch release:
Full Changelog: https://github.com/PhpGt/DomTemplate/compare/v2.1.0...v2.1.1
Published on by Greg Bowler
This release is packed with small updates:
bindListCallback is introduced that allows a callback function to be called on each iteration of the binding of a list, allowing you to mutate the data per element, along with manually tweaking the templated HTMLElement.BindableCache is introduced that significantly increases the speed of using Bind attributes.asArray function, it will always be called.Published on by Greg Bowler
All gt commands apart from the elusive deploy are available for use. Further pre-releases will be made to improve the current commands, v1-RC will be released when deploy is implemented, and the production release will be made after all commands have been tested in various projects for a few weeks.
Published on by Greg Bowler
This release exposes the --debug flag, which in turn sets the -dzend_extension=xdebug.so ini setting when executing the server process.
Published on by Greg Bowler
In this minor patch release, bindData() will now check for all objects’ Bind attribute, adding to the flexibility of throwing an object to a Document for binding to the HTML.
Published on by Greg Bowler
Since being extracted from WebEngine’s v3 release, this repository has been routing many WebEngine v4 applications. This stable release is being made after deploying an application to production this week, with no changes required to Routing functionality.
Have fun, and stay productive!
Published on by Greg Bowler
This patch release allows the lazy loading feature from the previous release to be added to any class, by adding the #[LazyLoad(ClassName)] tag to any class.
Published on by Greg Bowler
The main feature of this minor release is the lazy loader. Use the setLoader() method of the Container class to pass a callback that constructs your dependency, rather than having to have a pre-constructed object when using the set() method.
An often overlooked benefit of using service containers is the fact that, as the framework knows when and where a service is being requested, it doesn’t actually need to construct the object until the first time it’s requested.
A good example of where this will benefit is the Database. Using a lazy-loaded service container has two implementation benefits:
The other benefit is how the container is used: the developer can register their own classes in the container, again only being constructed at use-time, allowing much richer abstraction patterns like the Repository Pattern hiding any database implementations.
Published on by Greg Bowler
This patch release improves static analysis by introducing stricter types, along with bumping the version of php-actions scripts that are used for CI.
Published on by Greg Bowler
Prior to this release, tasks would execute for every file that changed in the matched glob, but this lead to unnecessarily repeating the workload. Now, the behaviour is more expected: one task execution when any matched files change. This is much more efficient, and still allows the developer to choose individual task executions by providing more specific glob patterns.
Have fun!
Published on by Greg Bowler
This patch release simply refactors the namespace that holds the Cli Commands from Command to Cli for consistency with other repositories.
Published on by Greg Bowler
In this patch release, the Cli command has been improved to follow a standard namespace pattern (Gt\RepoName\Cli) and to use the Cli Command’s inbuilt stream.
Published on by Greg Bowler
No new functionality in this release, but plenty of minor improvements. Mainly:
Published on by Greg Bowler
The main change in this release is the long-awaited conversion to a PhpGt/Cli application. The migrate command has now been upgraded to work with the Cli tooling which in turn allows the command to be exposed in the gt set of commands. So now in your WebEngine applications, it’s possible to run gt migrate to handle the migrations.
Another change to note: any usages of DateTime objects are now typed to allow any DateTimeInterface.
Published on by Greg Bowler
null).Published on by Greg Bowler
It’s now possible to enable XDebug straight from a command line argument --debug.
Now as standard all PHP.Gt repositories follow phpstan level 6 analysis, all type safety has been addressed.
Upgrades to the CI runners.
Published on by Greg Bowler
This v1 release is made to allow WebEngine v4 applications to drop the “minimum-stability: dev” requirement, but there has been no new functionality added since the initial pre-release.
Have fun logging!
Published on by Greg Bowler
This release introduces no extra functionality, but changes the model in which the DOM is used, and how data is bound.
The major upgrade is that DOM v3 is now used, meaning that the DOM API is now more consistent with the W3C specification. With that, there are no longer any templating methods added to the DOM - instead there are specific classes that are used to bind data in different ways to different types of element. This is not only more readable, but enhances maintainability in your code by utilising the concept of dependency injection.
Have fun, and stay productive!
Published on by Greg Bowler
This new version has been a long time in development, but now is the time to make a formal v3 release.
The RC version releases were already fully unit tested, but have been used heavily in real world projects over the last few months, where many improvements have been found.
This stable release is being made after the last static analysis improvements have been made.
As always, have fun and stay productive!