PHP.GT

Latest releases

Database: April 2026 release

Published on by Greg Bowler

What’s Changed

Full Changelog: https://github.com/phpgt/Database/compare/v1.6.3...v1.6.7

Cli: April 2026 release

Published on by Greg Bowler

What’s Changed

Full Changelog: https://github.com/phpgt/Cli/compare/v1.3.5...v1.3.6

CssXPath: Pseudo `:has` and `:not` and refactored code

Published on by Greg Bowler

This release introduces the newly refactored code, which has unlocked the possibility to implement two missing pseudo selectors: :has and :not. Thanks to @reaganch for the feature request that came in just at the right time.

New Contributors

Full Changelog: https://github.com/phpgt/CssXPath/compare/v1.4.0...v1.5.0

DomTemplate: QA tests

Published on by Greg Bowler

Tighter quality assurance tests have finally been implemented into DomTemplate.

This issue has been tracked for a while, but because of the extra complexity DomTemplate adds over Dom, it was proving difficult to get any traction with Code Sniffer and Mess Detector tests.

This latest release has not changed any external facing functionality, but internally has implemented.

The drive to implement phpcs and phpmd forced a refactor of some internal classes. Several large, procedural methods have been broken down intro smaller private helpers across the binding pipeline, especially BindableCache, TableBinder, HTMLAttributeBinder, ListBinder, PartialExpander and CommentIni.

The public behaviour looks intended to stay broadly the same, but the internal flow is now much more decomposed: bindable-class discovery, table normalisation/binding, attribute binding, list-item binding, and comment-INI parsing have all been split into narrower responsibilities.

Cyclomatic complexity is now below the measured threshold of 10 and all systems are green. Enjoy, and have fun!

Server: Logging improvements

Published on by Greg Bowler

In this release, errors are now output to STDERR by default, and it’s possible to configure whether to log static requests and send 404 errors to the error log.

What’s Changed

Full Changelog: https://github.com/phpgt/Server/compare/v1.1.5...v1.1.6

Logger: STDOUT/STDERR level configuration

Published on by Greg Bowler

In this minor release, it’s now possible to specify different streams to use for normal logs versus error logs. This allows your applications to configure what error log level to redirect to STDERR - useful for error logging tools like Glitchtip!

What’s Changed

Full Changelog: https://github.com/phpgt/Logger/compare/v1.0.1...v1.1.0

Curl: December 2025 release

Published on by Greg Bowler

This pull request updates the CI/CD workflows and dependencies of the project to align with newer PHP versions and improve compatibility. Minor improvements and method signature changes are also made in the source code to reflect best practices.

What’s Changed

Full Changelog: https://github.com/phpgt/Curl/compare/v3.1.1...v3.2.0

Database: PHP object method queries

Published on by Greg Bowler

New Features:

  • Added PhpQuery and PhpQueryClassNotFoundException: Supports PHP-based query definitions.
  • Added setAppNamespace in multiple files: Enables custom namespace handling for queries.
  • Extended the Query abstract class with binding-related methods.

Refactoring and Enhancements:

  • Modified QueryCollection to handle both directory and class-based query containers.
  • Simplified logic in QueryFactory to include PHP-based query handling.
  • Adjusted SqlQuery and QueryCollection implementations for better compatibility.

Testing Enhancements:

  • Added tests to validate the new features in Database, including QueryCollectionClass and the handling of PHP queries/classes in QueryFactory.

Dependency Updates (composer.lock):

  • Updated multiple dependencies, including myclabs/deep-copy, phpstan/phpstan, phpunit/phpunit, squizlabs/php_codesniffer, and Symfony components.

CI Workflow (ci.yml):

  • Added support for pull_request triggers and updated permissions for better security.
  • Excluded .git directory from the build archive.
  • Updated the PHP Mess Detector to version v2.

Logger: October 2025 release

Published on by Greg Bowler

What’s Changed

New Contributors

Full Changelog: https://github.com/phpgt/Logger/compare/v1.0.0...v1.0.1