Skip to content

8.0.0-BETA1

Pre-release
Pre-release
Compare
Choose a tag to compare
@evansims evansims released this 01 Jul 16:08
· 725 commits to main since this release
f2f20ea

Full Changelog

BEFORE YOU UPGRADE

  • This is a major release that includes breaking changes. Please see UPGRADE.md before upgrading. This release will require changes to your application.
  • The SDK no longer specifically relies on Guzzle for network requests. Options for supplying your libraries of choice have been added through PSR-18 and PSR-17 configuration options.
  • PHP 7.4 is now the minimum supported PHP version, but we encourage using PHP 8.0. PHP 7.4 will be the last supported 7.x release. This library follows the official support schedule for PHP.

8.0 Highlights

  • Updated SDK API for more intuitive use and improved usability. Now follows fluent interface principles.
  • Updated SDK API designed with PHP 8.0's named arguments as the encouraged interface method.
  • New configuration object, SdkConfiguration, allows for dynamic changes within your application.
  • Updated PHP language support, including typed properties and return types, are now used throughout the SDK.
  • Added support for the following PHP-FIG standards interfaces:
    • PSR-6 caches are now used for caching JWKs and Management API tokens.
    • PSR-7 HTTP messages are now returned by methods that initiate network requests.
    • PSR-14 events are now raised, allowing for deeper integration into the SDK's behavior.
    • PSR-17 HTTP factories are now used during network requests for generating PSR-7 messages.
    • PSR-18 HTTP clients are now supported, allowing you to choose your network client.
  • Improved Token handling system.
  • Encrypted session cookies, with cookies being the default session handler. PHP sessions may be phased out in a future release.
  • New Management API auto-pagination helper for iterating through API results.
  • PKCE is now enabled by default.

For a complete overview of API changes, please see UPGRADE.md.

For guidance on using the new configuration interface or SDK API, please see README.md.