Skip to content

2.0.0

Choose a tag to compare

@GrahamCampbell GrahamCampbell released this 20 Jul 14:12
· 3 commits to 2.0 since this release
dc54370
  • Drop support for PHP 7.2 and 7.3
  • Require guzzlehttp/guzzle ^8.0, guzzlehttp/promises ^3.0, and guzzlehttp/psr7 ^3.0
  • Require guzzlehttp/command ^2.0 and guzzlehttp/uri-template ^2.0
  • Remove the legacy baseUrl service description option; use baseUri instead
  • Reject non-string and non-stringable baseUri service-description values before URI construction
  • Remove the legacy responseClass operation option; use responseModel instead
  • Reject native PHP serialization of runtime client pipeline objects
  • Redact API-key-bearing command and HTTP arguments from PHP 8.2+ backtraces
  • Default operations without an httpMethod to GET, preserve explicit httpMethod casing, and reject invalid httpMethod values
  • Require header location values to be strings or non-empty arrays of strings
  • Reject non-finite float command values in request locations
  • Return body response location values as strings instead of PSR-7 streams
  • Return raw PSR-7 responses in the response result key when the process client option is false
  • Allow operations to override response processing with the process operation option
  • Support JSON response fields with multiple allowed type values
  • Reject scalar top-level JSON response bodies
  • Let native JsonException report JSON location encoding and decoding failures
  • Escape unsafe service metadata and response values in generated exceptions
  • Require custom implementations and subclasses of public service APIs to match native method signatures
  • Require custom parameter filters and extension points to accept exact value types instead of relying on scalar coercion
  • Validate cast integer values against string enum, pattern, and length constraints
  • Match string enum values strictly by type and value
  • Normalize stringable command values for string parameters during validation
  • Treat explicit false values as present in Parameter::has() while omitted required and static flags remain absent
  • Limit XML response traversal and additional-property conversion to 512 nested elements by default
  • Serialize XML request scalar element text with XMLWriter text escaping instead of CDATA sections
  • Honor the documented GuzzleClient response_locations option when building the default deserializer
  • Reject invalid GuzzleClient configuration option values
  • Reject loose parameter schema values instead of normalizing them
  • Require null schema types to match only null values
  • Improve PHPDoc for service client transformers, command handler stacks, and service description, operation, and parameter schema arrays
  • Mark Operation, ValidatedDescriptionHandler, and Rfc3986Serializer as soft-final with @final annotations
  • Trim XML response text nodes with XML whitespace characters only